我正在尝试创建一个无模式对话框,但是CreateDialog函数由于0x714或1812 base10错误而失败。
m_StatusHwnd = CreateDialog( hInstance,
MAKEINTRESOURCE( IDD_STATUSWND ),
0,
DXCore::statusWindProc );
// Check:
if ( m_StatusHwnd == NULL )
{
string s = std::to_string( GetLastError( ) );
MessageBox( 0, s.c_str( ), "Status Window init FAILED", MB_OK );
return false;
}我在VS2013中创建了资源。我确保包含了资源头文件。但是错误代码意味着没有找到或编译资源:我在microsofts站点上找到了:
ERROR_RESOURCE_DATA_NOT_FOUND
1812 (0x714)
The specified image file did not contain a resource section.在进一步的研究中,我发现可能需要创建一个非模态类才能工作,但我找不到任何关于如何工作的教程或描述。
你能给我指个方向吗?
发布于 2015-07-15 21:14:00
这个解决方案是由“奥巴夫利厄斯船长”启发的。而不是在hInstance的第一个参数的CreateDialog中,我传递了NULL,函数成功了--窗口显示的就像应该的那样。
m_StatusHwnd = CreateDialog( NULL,
MAKEINTRESOURCE( IDD_STATUSWND ),
0,
DXCore::statusWindProc );msdn.microsoft.com:"hInstance:包含对话框模板的模块的句柄。如果此参数为NULL,则使用当前的可执行文件。“
https://stackoverflow.com/questions/31440563
复制相似问题