C# Can';t在没有IDE的情况下启动Gtk“Mono应用程序”(无法加载DLL“intl”) 一些背景资料: 用C语言编写的跨平台桌面应用程序,带有gtk和mono 目标框架:Mono/.net4.5 运行时环境:Microsoft.NET 问题
我可以在Xamarin Studio或Visual Studio 2012中完美地构建/调试/运行该项目。C# Can';t在没有IDE的情况下启动Gtk“Mono应用程序”(无法加载DLL“intl”) 一些背景资料: 用C语言编写的跨平台桌面应用程序,带有gtk和mono 目标框架:Mono/.net4.5 运行时环境:Microsoft.NET 问题,c#,visual-studio-2012,mono,gtk#,C#,Visual Studio 2012,Mono,Gtk#,我可以在Xamarin Studio或Visual Studio 2012中完美地构建/调试/运行该项目。 但是每当我尝试启动一个没有它的调试/发布版本(open.exe)时,我的应用程序根本不会启动 如前所述,我尝试了HomeStream.exe 2>error.log 和error.log包含以下信息: Unhandled Exception: System.DllNotFoundException: Unable to load DLL "intl": The specified m
但是每当我尝试启动一个没有它的调试/发布版本(open.exe)时,我的应用程序根本不会启动 如前所述,我尝试了
HomeStream.exe 2>error.log
和error.log包含以下信息:
Unhandled Exception: System.DllNotFoundException: Unable to load DLL "intl": The specified module could not be found. (Exception from HRESULT: 0x8007007E).
at Mono.Unix.Catalog.gettext(IntPtr instring)
at Mono.Unix.Catalog.GetString(String s)
at MainWindow.Build() in g:\Users\Eric\Dropbox\Projekte\HomeStream\HomeStream\gtk-gui\MainWindow.cs:Line 35.
at MainWindow..ctor() in g:\Users\Eric\Dropbox\Projekte\HomeStream\HomeStream\MainWindow.cs:Line 22.
at HomeStream.HomeStreamApp..ctor() in g:\Users\Eric\Dropbox\Projekte\HomeStream\HomeStream\HomeStreamApp.cs:Line 67.
at HomeStream.HomeStreamApp.Main(String[] args) in g:\Users\Eric\Dropbox\Projekte\HomeStream\HomeStream\HomeStreamApp.cs:Line 47.
问题:
所以我的问题是:什么样的DLL是“intl”?如果IDE如此重要,为什么我的应用程序可以在没有它的情况下在IDE中启动?使用Gettext国际化意味着您的软件依赖于Mono.Unix,它依赖于一些本机Unix库。其中一些库已由一些Windows平台的开发人员提供。例如,您有MinGW或Cygwin项目来获取它们,或者是Google上的第一个热门项目。尝试获取在Windows上工作的libintl.dll,如果加载失败,则发布新的stackoverflow问题。看看这个快速检查,可能是用本地副本标记GTK dll。这至少可以确认这是GTK安装问题。“不幸的是”GTK sharp安装正确。添加本地副本不会改变任何事情