到达代码行SetDlgItemText(,)时MFC在运行时崩溃
调试输出显示:到达代码行SetDlgItemText(,)时MFC在运行时崩溃,mfc,Mfc,调试输出显示: First-chance exception at 0x00007FF96B451DB3 (ntdll.dll) in myapp.exe: 0xC0000005: Access violation writing location 0x00000053B3330FC8. Unhandled exception at 0x00007FF96B451DB3 (ntdll.dll) in myapp.exe: 0xC0000005: Access violation writing
First-chance exception at 0x00007FF96B451DB3 (ntdll.dll) in myapp.exe: 0xC0000005: Access violation writing location 0x00000053B3330FC8.
Unhandled exception at 0x00007FF96B451DB3 (ntdll.dll) in myapp.exe: 0xC0000005: Access violation writing location 0x00000053B3330FC8.
此问题发生在服务器计算机上,而在本地计算机上运行正常。请帮忙。提前谢谢 尝试这样做:
if(NULL != GetSafeHwnd())
SetDlgItemText(IDC_EDIT, _T("Tra la la"));
或
尝试这样做:
if(NULL != GetSafeHwnd())
SetDlgItemText(IDC_EDIT, _T("Tra la la"));
或
谢谢你的快速回复,但还是失败了。以前它给出的是ntdll.dll错误,现在它给出的是gdi32.dll错误。请帮忙!非常感谢。第二个选项也不起作用,请帮助!然后你必须在你的代码上创建一些跟踪。。。例如,在设置DlgItemText之前,请检查控件的状态。。使用消息框或跟踪等。。。或者更好的方法是,检查堆栈的内容,正如xMRI所说。崩溃后,调用堆栈只有:>gdi32.dll!AllocateAnalysis()unknown当涉及到SetWindowText(..)时,它会进入一个无限循环。感谢您的快速响应,但它仍然失败。以前它给出的是ntdll.dll错误,现在它给出的是gdi32.dll错误。请帮忙!非常感谢。第二个选项也不起作用,请帮助!然后你必须在你的代码上创建一些跟踪。。。例如,在设置DlgItemText之前,请检查控件的状态。。使用消息框或跟踪等。。。或者更好的方法是,检查堆栈的内容,正如xMRI所说。崩溃后,调用堆栈只有:>gdi32.dll!AllocateAnalysis()unknown在SetWindowText(..)中进入无限循环