我在Visual Studio 2010上使用C#.Net中的WinForm开发了一个测试应用程序.现在,我想在
Linux下使用Mono在CentOS上运行它.所以我尝试了下面的命令序列 –
[root@localhost TestLinux]# /usr/bin/mono ./Test.exe
我遇到了一个例外
Unhandled Exception: System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Forms.XplatUI ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Drawing.GDIPlus ---> System.DllNotFoundException: gdiplus.dll
at (wrapper managed-to-native) System.Drawing.GDIPlus:GdiplusStartup (ulong&,System.Drawing.GdiplusStartupInput&,System.Drawing.GdiplusStartupOutput&)
at System.Drawing.GDIPlus..cctor () [0x00000] --- End of inner exception stack trace ---
at <0x00000>
at System.Drawing.Graphics.FromHdcInternal (IntPtr hdc) [0x00000]
at System.Windows.Forms.XplatUIX11.SetDisplay (IntPtr display_handle) [0x0000

本文介绍了尝试在CentOS Linux系统上使用Mono运行用C#.Net开发的WinForm应用程序时遇到的类型初始化异常问题,特别是与gdiplus.dll和libgdiplus.so.0库相关的链接错误。尽管ldconfig缓存显示库存在,但程序仍无法正常工作。作者还提及尝试通过DllMap条目解决此问题,但未成功,寻求相关经验分享。
最低0.47元/天 解锁文章
2893

被折叠的 条评论
为什么被折叠?



