GetModuleFileName函数原型
  DWORD GetModuleFileName(
   HMODULE hModule,     // handle to module。将要得到的模块的句柄。如果是当前模块,NULL
   LPTSTR lpFilename,   // path buffer   得到的文件名。
   DWORD nSize          // size of buffer   一般MAX_PATH就可以了

函数参数说明:

  hModule HMODULE 装载一个程序实例的句柄。如果该参数为NULL,该函数返回该当前应用程序全路径。

  lpFileName LPWSTR 是你存放返回的名字的内存块的指针,是一个输出参数

  nSize DWORD ,装载到缓冲区lpFileName的最大值

  函数返回值:

  如果返回为成功,将在lpFileName的缓冲区当中返回相应模块的路径,如果所为的nSize过小,哪么返回仅按所设置缓冲区大小返回相应字符串内容。

  如果函数失败,返回值将为0,并返回GetLastError异常代码。

  需要的头文件为:

  include Windows.h

 

一般的用法:

 

 
  
  1. TCHAR path[MAX_PATH]={0}; 
  2. GetModuleFileName(NULL,path,MAX_PATH); 
  3. CString strPath = CString(path); 
  4. int pos = strPath.ReverseFind('\\'); 
  5. m_Path = strPath.Left(pos + 1);