我正在将monomac
中的程序写入ftp文件到服务器。我使用FtpWebRequest
作为
FtpWebRequest request =(FtpWebRequest)WebRequest.Create("ftp://serverip/filename");
当我在monodevelop
中运行此代码时,它正常运行。但是当我发布它并在monodevelop
之外运行时,我收到错误“由System.Net.WebRequest
初始化类型抛出的异常。
我研究了这个错误,发现它存在库libc.dylib的问题。如果我将app(AppBundle/MacOs/AppName edit with TextEdit)
的启动脚本中的DYLD_FALLBACK_LIBRARY_PATH更改为
导出DYLD_FALLBACK_LIBRARY_PATH="$MONO_FRAMEWORK_PATH/lib:$DYLD_FALLBACK_LIBRARY_PATH:/usr/lib"
(添加了/ usr / lib)
然后它发送文件。但我必须在所有系统中安装mono框架才能运行此应用程序。一旦我创建了一个mac安装程序包,我就无法编辑启动脚本。我尝试将libc.dylib
文件从/usr/lib
复制到Appbundle(App/MonoBundle/)
,但仍然存在错误。
谁能帮我?
答案 0 :(得分:0)
我有这个问题。您是否将monomac dll添加到应用包中?
它试图变得聪明并删除未使用的方法和类。
我发现它通常不会包含它认为没有被错误使用的方法。 我不确定如何强制它包含缺少的方法,但是你可以通过关闭包设置中的链接来解决这个问题。不幸的是,这使应用程序更大。