在Windows Mobile和Wince(Windows Embedded CE)下进行Native C++开发,如何取出当前执行文件的路径和调用模块的路径
2009-11-11 06:26
876 查看
在Windows Mobile和Wince(Windows Embedded CE)下进行Native C++开发,有时候需要取出当前执行文件的路径,或者调用模块的路径信息,例如在相对路径下存放了配置文件,本地数据库文件等。
下面代码可以完成这个任务:
其中GetModuleFileName(NULL, pathChar, MAX_PATH);可以取出执行文件的路径,而GetModuleFileName(hInst, pathChar, MAX_PATH); 取出执行模块的路径。两者有什么区别呢,例如开发今日插件,如果取出执行文件的路径是\Windows\shell32.exe,而取出调用模块的路径是DLL的路径,例如\Program files\JakePlugin\JakePlugin.dll。
关于.NET Compact Framework的实现可以参考下面文章:
在Windows Mobile和Wince(Windows Embedded CE)下使用.NET Compact Framework 取当前运行文件的路径
下面代码可以完成这个任务:
BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) { HINSTANCE hInst = (HINSTANCE)hModule; TCHAR pathChar[MAX_PATH]; memset(pathChar, 0 , sizeof(char) * MAX_PATH); //Get exe path GetModuleFileName(NULL, pathChar, MAX_PATH); CString path(pathChar); path = path.Left(path.ReverseFind('\\') + 1); memset(pathChar, 0 , sizeof(char) * MAX_PATH); //Get DLL path GetModuleFileName(hInst, pathChar, MAX_PATH); path = pathChar; path = path.Left(path.ReverseFind('\\') + 1); }
其中GetModuleFileName(NULL, pathChar, MAX_PATH);可以取出执行文件的路径,而GetModuleFileName(hInst, pathChar, MAX_PATH); 取出执行模块的路径。两者有什么区别呢,例如开发今日插件,如果取出执行文件的路径是\Windows\shell32.exe,而取出调用模块的路径是DLL的路径,例如\Program files\JakePlugin\JakePlugin.dll。
关于.NET Compact Framework的实现可以参考下面文章:
在Windows Mobile和Wince(Windows Embedded CE)下使用.NET Compact Framework 取当前运行文件的路径
相关文章推荐
- 在Windows Mobile和Wince(Windows Embedded CE)下进行Native C++开发,如何取出资源文件中的版本信息
- 在Windows Mobile和Wince(Windows Embedded CE)下进行Win32开发,取出当前所有运行中进程信息的方法
- 在Windows Mobile和Wince(Windows Embedded CE)下进行WTL开发,如何加入超链接(HyperLink)
- 在Windows Mobile和Wince(Windows Embedded CE)下使用.NET Compact Framework 取当前运行文件的路径
- 在Windows Mobile和Wince(Windows Embedded CE)下进行Win32开发,取出窗口句柄的方法
- Windows Mobile和Wince(Windows Embedded CE)下如何封装Native DLL提供给.NET Compact Framework进行调用
- 在Windows Mobile和Wince(Windows Embedded CE)下如何使用.NET Compact Framework开发进程管理程序
- 开发Windows Mobile和Wince(Windows Embedded CE)的部署项目(Deploy Project)时,如何修改注册表
- 在Windows Mobile和Wince(Windows Embedded CE)下使用.NET Compact Framework进行GPS NMEA data数据分析的开发
- 在Windows Mobile和Wince(Windows Embedded CE)下如何使用.NET Compact Framework开发进程管理程序
- 在Windows Mobile和Wince(Windows Embedded CE)下使用.NET Compact Framework进行GPS NMEA data数据分析的开发
- 在Windows Mobile和Wince(Windows Embedded CE)下进行Native C++时间函数的运用
- 在Windows Embedded CE下进行Native C++开发,一次错误使用多线程的经验教训
- Windows Mobile 和 Wince(Windows Embedded CE) 下的 WTL(Windows Template Library) 界面(UI)开发
- Windows Mobile和Wince(Windows Embedded CE )下使用.NET Compact Framework下注册表导出工具的开发
- Windows Mobile和Wince(Windows Embedded CE)下的WTL(Windows Template Library)开发
- Windows Mobile 和 Wince(Windows Embedded CE) 下的 WTL(Windows Template Library) 界面(UI)开发
- Windows Phone,Windows Mobile,Windows Embedded CE(WinCE),.NET Compact Framework,Native C++开发系列(上百篇原创文章不断更新完善中)【转】
- Windows Embedded CE 如何自动安装Cab文件
- Windows Mobile和Wince(Windows Embedded CE)的字符集问题