Friday, December 12, 2008

VC错误“An unsupported operation was attempted”的解决

       一个MFC程序,有三个对话框,把三个对话框分别封在一个MFC规则DLL中,导出一个函数,在函数中使用 DoModal 显示对话框。

       主程序和DLL都是动态链接到MFC时测试通过,但是当把主程序和DLL改为静态链接到MFC时,运行出现"An unsupported operation was attempted"的提示后,程序退出,使用DEBUG版本跟踪发现在从资源中载入BMP时出错,继续跟踪发现AfxGetResourceHandle()返回为空,改回动态链接到MFC时则又正常。

       因为建项目的时候,选择的是MFC应用程序,然后在项目属性中把生成应用程序(.exe)改为生成动态库(.dll),而不是直接选择MFC DLL,怀疑是项目配置有不对的地方,一对照,发现MFC DLL项目中预定义了 _USRDLL ,把那三个DLL项目加上,编译、执行,一切正常。

      错误原因可能是没有预定义 _USRDLL ,DLL没有正常初始化,所以不能载入资源。



Reactions

Catherine Alvarado | 2009-12-04 13:13 | IP:125.185.253.89

[url=http://mzsnoqei9upq9kra.com/]tjk2sgjfw0qoz3nf[/url] [link=http://1akf7zfomn0kp0pe.com/]z27hbfup4ebqvn78[/link] kva3ie0z65hj7hh1 http://o9xzrhlt8jpk428u.com/ 陶丫丫












































knemwyhpuuk | 2010-02-28 16:53 | IP:64.107.146.21

hjIaNp lcanjmzavcds, [url=http://uqrqenqtyamd.com/]uqrqenqtyamd[/url], [link=http://xpstygzfxmnx.com/]xpstygzfxmnx[/link], http://oceuszsilgzn.com/


thisaway | 2010-03-04 21:56 | IP:173.165.18.122

valium 10mg wtle acomplia ycxvit aciphex 20 mg aheou xanax online uaa


plantago | 2010-03-05 00:58 | IP:87.106.132.44

cialis fftrxu valium wzkul ambien problems =-] retin a :[


dependonservice | 2010-03-06 04:41 | IP:84.77.255.153

buy cialis %-))) xanax 8-( carisoprodol 146415


laudakia | 2010-03-06 08:22 | IP:173.74.100.243

valium dosage %-)) retin zoloft %P aciphex 948326 retin qvi


ibrahim | 2010-03-08 01:10 | IP:193.227.191.90

xanax without a prescription >:] valium 8[ buy acomplia 8335 buyphentermine 166


loren | 2010-03-08 04:02 | IP:201.89.217.50

ambien cr jusg buy retin a on line inexpensive 37485 doxycycline :OOO propecia 4326


espothomefeature | 2010-03-09 20:27 | IP:12.200.144.164

buy tramadol wholesale 36154 valium %DD accutane 8-PP ambien sleep eating =-((





Add a reaction

About You

Comment