在vb中可以用app.path取得应用程序的路径,请问在vc中用什么方法可以和此方法等效。我在dll中用取当前路径的方法getcurrentdirectory,但我用installshield做了个安装程序,在桌面和开始菜单里加入了快捷方式,但就是这个快捷方式有问题,两个快捷方式取得路径都不一样,取的都是快捷方式所在的路径,而不是我要的应用程序的运行路径;而vb程序却能够找到程序的运行路径。是不是getcurrentdirectory方法只能取得文件所在的位置。请教那位高手能够帮我解决这个问题。多谢!
HMODULE hInstModule,
PTSTR pszPath,
DWORD cchPath
);
::GetModuleFileName(NULL, appPath.GetBuffer(MAX_PATH), MAX_PATH);
//×¢£ºÊ¹ÓøÃAPIº¯ÊýµÃµ½µÄÊdzÌÐòÎļþÍêÕû·¾¶ÎļþÃû£¬È¥µôÎļþÃûºó²ÅÊÇ·¾¶¡£
appPath.ReleaseBuffer();
int n = appPath.ReverseFind('\\');
CString helpFile;
helpFile = appPath.Left(n);
TCHAR c = helpFile.GetAt(n - 1);
char szFilePath[256];
LPSTR lpTemp;
GetModuleFileName(m_hInstance, szFilePath, sizeof(szFilePath));
for(lpTemp = szFilePath + lstrlen(szFilePath);
*(lpTemp - 1) != '\\'; lpTemp--);
lstrcpy(lpTemp, "");
CString strAppPath = szFilePath;
::GetModuleFileName(NULL, appPath.GetBuffer(MAX_PATH), MAX_PATH);
appPath.ReleaseBuffer();//注:使用该API函数得到的是程序文件完整路径文件名,去掉文件名后才是路径