求教:Application.EnableVisualStyles() 报错

wwwww112233 2013-09-27 01:11:13

[STAThread]
static void Main()
{

Application.EnableVisualStyles();
Application.Run(new Form1());//这句报错“GDI+ 中发生一般性错误”
}

我做的菜单程序,整个程序没有任何涉及绘图 gdi 等代码。
一运行程序,鼠标放在窗口上移动或点击,立即卡死,然后报错GDI+ 中发生一般性错误。
当去掉“Application.EnableVisualStyles()”这句代码,就一切正常。

因为程序中用到listview的双缓冲,如果去掉了Application.EnableVisualStyles()这句代码则缓冲效果没了,但如果加上这句代码,报错。
请高手看下是怎么回事,谢谢!!!!
...全文
184 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
youzelin 2013-10-07
  • 打赏
  • 举报
回复
啊?那就是 IDE 出问题了?不会吧
wwwww112233 2013-09-29
  • 打赏
  • 举报
回复
自己解决了,把vs2010换成vs2012就正常了。。
wwwww112233 2013-09-27
  • 打赏
  • 举报
回复
引用 1 楼 youzelin 的回复:
Application.EnableVisualStyles(); 后面加这句话: Application.SetCompatibleTextRenderingDefault(false);
加了,一样报错。vs2012自动进入反汇编, 说是堆栈 System.Threading.Tasks.TaskExceptionHolder.Finalize() 出错

0000025d  mov         dword ptr [ebp-18h],0 
00000264  mov         dword ptr [ebp-1Ch],0 
0000026b  mov         dword ptr [ebp-18h],0FCh 
00000272  push        62A1EDB7h 
00000277  jmp         0000029C 
00000279  mov         dword ptr [ebp-18h],0 
00000280  mov         dword ptr [ebp-1Ch],0 
00000287  mov         dword ptr [ebp-18h],0FCh 
0000028e  push        62A1EDC0h 
00000293  jmp         0000029C 
00000295  mov         ecx,edi 
00000297  call        FF967570 
0000029c  pop         eax //指在这一行,小弟不熟悉汇编... 
youzelin 2013-09-27
  • 打赏
  • 举报
回复
Application.EnableVisualStyles(); 后面加这句话: Application.SetCompatibleTextRenderingDefault(false);

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧