Ist es möglich, eine portable ausführbare Datei in einer .net DLL einzubetten und zu benutzen?
-
09-06-2019 - |
Frage
Der einfachste Weg, meine Frage zu denken, ist von einem einzigen, einfachen Unix-Befehl zu denken (wenn auch, das ist für Windows) und ich brauche PROGmatic Zugang um es auszuführen.
Ich habe eine einzige Befehlszeile basierte ausführbare Datei, die eine Einheit der Arbeit führt. Ich mag, dass ausführbare Datei mit der .net Prozessbibliothek nennen, wie ich mit einem anderen ausführbaren tun kann.
Allerdings dämmerte es mir, dass es Potenzial für die DLL mit unbeabsichtigten Änderungen zu der ausführbaren Datei oder ein nicht vorhandenen ausführbaren nutzlos oder brechen werden.
Ist es möglich, die ausführbare Datei aus dem Prozessobjekt in .NET Framework, als würde ich eine externe ausführbare Datei?
läuftLösung
Nein, Sie können es nicht direkt ausführen. Sie könnten wahrscheinlich es in ein temporäres Verzeichnis entpacken und von dort ausgeführt werden.
Andere Tipps
fand ich einen Artikel, der einige Beispiel-Code hat, was @garretmagin sagt:
Ist das, wo PInvoke kann helfen?
Je nach Funktionalität des Kommandozeilen-Programms Sie ausführen möchten, könnte es möglich sein, die Funktionalität in Powershell zu duplizieren, in dem Sie die Powershell-Laufzeit in Ihrer .NET-Anwendung einbetten können.