4 Stimmen

Monomac Eine Ausnahme, wie sie vom Typinitialisierer für System.Net.WebRequest angezeigt wird

Ich schreibe ein Programm in monomac um Dateien auf einen Server zu übertragen. Ich habe die FtpWebRequest als

FtpWebRequest request =(FtpWebRequest)WebRequest.Create("ftp://serverip/filename");

Wenn ich diesen Code in monodevelop er ordnungsgemäß läuft. Aber wenn ich dies loslasse und draußen läuft monodevelop Ich erhalte den Fehler "An Exception as thrown by the type initialize for System.Net.WebRequest .

Ich recherchierte für diesen Fehler und fand es hat Problem mit der Bibliothek libc.dylib. Wenn ich den DYLD_FALLBACK_LIBRARY_PATH im Startskript des app(AppBundle/MacOs/AppName edit with TextEdit) als

exportieren DYLD_FALLBACK_LIBRARY_PATH="$MONO_FRAMEWORK_PATH/lib:$DYLD_FALLBACK_LIBRARY_PATH:/usr/lib"

(hinzugefügt /usr/lib) dann sendet es die Dateien. Aber ich muss das Mono-Framework in allen Systemen installieren, um diese Anwendung auszuführen. Sobald ich ein Mac-Installationspaket erstellt habe, kann ich das Startskript nicht mehr bearbeiten. Ich habe versucht zu kopieren libc.dylib Datei von /usr/lib a Appbundle(App/MonoBundle/) aber der Fehler bleibt bestehen. Kann mir jemand helfen?

0voto

Gordon Truslove Punkte 624

Ich hatte dieses Problem. Fügen Sie monomac dll's zum App-Bundle hinzu?

Es versucht, clever zu sein und nicht verwendete Methoden und Klassen zu entfernen.

Ich habe festgestellt, dass das Programm oft versehentlich Methoden nicht berücksichtigt, von denen es glaubt, dass sie nicht verwendet werden. Ich bin mir nicht sicher, wie man es dazu zwingen kann, die fehlenden Methoden einzuschließen, aber man kann das Problem lösen, indem man die Verknüpfung in den Paketeinstellungen deaktiviert. Leider wird die Anwendung dadurch viel größer.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X