【发布时间】:2014-09-24 04:40:12
【问题描述】:
我在 QT 编译器中遇到了一个错误,但是它在 VS2010 上运行良好。该错误指出 我看过其他与相同错误相关的帖子,但没有解决我在 QT 中的问题。我试过 _T,L 或 TEXT 但还是不行
bq。错误:C2664:'句柄 LoadImageW(HINSTANCE,LPCWSTR,UINT,int,int,UINT)' : 无法转换 参数 2 从 'const char *' 到 'LPCWSTR' 指向的类型是 无关;转换需要 reinterpret_cast、C-style cast 或 函数式转换
我的代码如下
Bitmap::Bitmap(std::string const& file_name) {
bitmap_ = static_cast<HBITMAP>(::LoadImage(0, file_name.c_str(), IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION));
}
如果您有解决此问题的任何想法,请分享
【问题讨论】:
-
你编译时定义了 UNICODE 宏,如果你真的相信你可以不用 UNICODE 就可以关闭它:)