Debug Assertion Failed! program:C:..\Debug\vov1.exe File: wincore.cpp line:320 For information on how your program can cause an assertion failure,see the Visual C++ documentation on asserts (Press Retry to debug the application) 这个文件 wincore.cpp 好象也没这个文件啊
这个文件在VC的安装目录下,你到这里找。当然没有在你的工作区目录我打开看了,错误行(320)指向 BOOL CWnd::Attach(HWND hWndNew) { ASSERT(m_hWnd == NULL); // only attach once, detach on destroy你的按钮是怎么创建的?
应用程序发生异常 unknown software exception (0x80000003),位置为0x5f42ef56
怎么个是什么原因啊?
希望高手指点
就是我做的一个登陆界面(游戏登陆界面 用户名 密码 登陆 注册)
EDIT 透明没问题
但是按钮的时候 就是我和你说的那个透明按钮 就有这个问题了
如果是,你到它提示的文件中找到相应的行,然后分析你的程序什么时候调用了这个函数,这样就可以在你的程序中定位这个断言是由哪一行代码的使用不当引起的。
program:C:..\Debug\vov1.exe
File: wincore.cpp
line:320
For information on how your program can cause an assertion
failure,see the Visual C++ documentation on asserts
(Press Retry to debug the application)
这个文件 wincore.cpp
好象也没这个文件啊
BOOL CWnd::Attach(HWND hWndNew)
{
ASSERT(m_hWnd == NULL); // only attach once, detach on destroy你的按钮是怎么创建的?
我整理了一下:
////////////////////////////////////////////////////////////////
Assert 断言处理
1、在VC安装目录下搜wincore.cpp ;
2、找到320行,看看是在哪一个函数中发生的断言,分析出错原因;
3、在你的程序中设置断点,断点跟踪一下你的代码,直到找到和错误最接近的代码口;
4、修改你的代码。
////////////////////////////////////////////////////////////////
调试看看~
出现Microsoft Visual C++ Debug Library 的提示框时
选重试,然后再VC中调出Call Stack 调试窗口,此时双击可看到出问题
的地方,然后依次双击CallStack窗口中的项,便可查看到引发该断言的
函数。
而是因为我电脑中有D:/1.JPG这张图片,所以显示的是我电脑上的图像。如果别人没有D:/1.JPG,就无法显示图像
{
CDialog::OnInitDialog();
// m_btn1.SubclassDlgItem(IDC_BUTTON1,this); //把这一行注释掉即可,其他不用修改
m_btn1.DrawTransparent(TRUE);
...
}因为你的按钮IDC_BUTTON1是用资源创建的,并且通过classWizard已经和m_btn1绑定了关系(这个操作相当于SubclassDlgItem),所以你要是再SubclassDlgItem一次就会出错。