读书人

如何取得当前工程文件夹下图片路径

发布时间: 2013-08-14 14:27:55 作者: rapoo

怎么取得当前工程文件夹下图片路径
HBITMAP hbmp=LoadPicture(“c:\\5.bmp”);现在只能这么找到图片,
HBITMAP hbmp=LoadPicture(“~\res\5.bmp”);之类取决当前工程res文件夹下的路径不行啊,利用资源视图添加bmp图片只能调用图片的ID号,HBITMAP hbmp=LoadPicture(IDB_BITMAP1);是int型的也不行,而LoadPicture()由于程序需要这里的参数必须是LPCSTR的,在不更改传递参数格式的情况下有办法找到这个图片的路径吗?
[解决办法]
可以把图片放到可执行文件目录下,然后用
TCHAR modulePath[MAX_PATH];
GetModuleFileName(NULL, modulePath, MAX_PATH);
CString strModulePath(modulePath);
strModulePath = strModulePath.Left(strModulePath.ReverseFind(_T('\\')));
return strModulePath;
获取可执行文件路径。
要编译到程序里用ID获取的图片放到res文件夹下,其他图片只能跟随可执行文件一起发布,所以应放到可执行文件目录下。
[解决办法]
转化什么,转义字符啊
[解决办法]

HBITMAP hbmp = LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_BITMAP1));
if(hbmp)
{
……
……
DeleteObject(hbmp)
}

读书人网 >VC/MFC

热点推荐