VS2008上调试MFC可行,可是单独在工程目录下的.exe就会出错,该如何解决
VS2008上调试MFC可行,可是单独在工程目录下的.exe就会出错
我在VS2008上用C++写了个MFC应用软件,在Debug或者Release出来的窗口测试后,什么问题都不会出现,不管我按按钮多快多
久都不会错,可是关掉程序,在工程项目下单独打开那个.exe文件(Debug和Release文件里的都试了)后,就会出现
“TODO:<。。。>File”错误的界面,然后如果我选择调试,打开的工程就有下面窗口:
Unhandled exception at 0x770e6aa3 in APG8201.exe: 0xC0000005: Access violation reading location 0x0011be3b
这样的错误,这是怎么回事啊?而且我继续在那个打开的工程上重新Debug,运行又是没错误。就是独立打开有错误,请各位高手帮帮忙。
我现在有点怀疑是指针内存未释放,但是找到free指针的地方看了下,用到的指针都free了,而且还加上了p = NULL这样的语
句了,有时还会出现Out of memory的错误(这个也是独立打开出现的)
郁闷啊,以上出现的错误都是不规律不定时的,而且都是在工程运行下正确,单独打开.exe就出现的(不是每次都出现,硬件重新插拔过后就正常,很久不动硬件就有可能出现),谁能帮帮我呀,谢谢了。
------解决方案--------------------
是不是有什么成员变量没有赋初值?
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------
那就要了解debug和release的区别了,一些重要的编译链接选项。release对程序的优化会使一些debug下的潜在变量问题暴露出来。
资料MSDN: 关键字 cl.exe
书:windows程序调试(比较老,讲VC6的)
我在VS2008上用C++写了个MFC应用软件,在Debug或者Release出来的窗口测试后,什么问题都不会出现,不管我按按钮多快多
久都不会错,可是关掉程序,在工程项目下单独打开那个.exe文件(Debug和Release文件里的都试了)后,就会出现
“TODO:<。。。>File”错误的界面,然后如果我选择调试,打开的工程就有下面窗口:
Unhandled exception at 0x770e6aa3 in APG8201.exe: 0xC0000005: Access violation reading location 0x0011be3b
这样的错误,这是怎么回事啊?而且我继续在那个打开的工程上重新Debug,运行又是没错误。就是独立打开有错误,请各位高手帮帮忙。
我现在有点怀疑是指针内存未释放,但是找到free指针的地方看了下,用到的指针都free了,而且还加上了p = NULL这样的语
句了,有时还会出现Out of memory的错误(这个也是独立打开出现的)
郁闷啊,以上出现的错误都是不规律不定时的,而且都是在工程运行下正确,单独打开.exe就出现的(不是每次都出现,硬件重新插拔过后就正常,很久不动硬件就有可能出现),谁能帮帮我呀,谢谢了。
------解决方案--------------------
是不是有什么成员变量没有赋初值?
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------
那就要了解debug和release的区别了,一些重要的编译链接选项。release对程序的优化会使一些debug下的潜在变量问题暴露出来。
资料MSDN: 关键字 cl.exe
书:windows程序调试(比较老,讲VC6的)