Laden...

Tool, um Exe im Ram auszuführen => Löschen und Überschreiben währenddessen möglich

Erstellt von Floste vor 12 Jahren Letzter Beitrag vor 12 Jahren 3.908 Views
Floste Themenstarter:in
1.130 Beiträge seit 2007
vor 12 Jahren
Tool, um Exe im Ram auszuführen => Löschen und Überschreiben währenddessen möglich

Wer kennt das nicht: Man will mal schnell ne Exe überschreiben oder löschen, ohne gleich das dazugehörige Programm zu beenden.
Desahlb habe ich mal ein kleines Programm zusammengehackt, welches eine Exe samt Dlls mittels Assembly.Load(byte[]) lädt und dann ausführt. Der erste Parameter ist die zu ladende Exe-datei, danach folgen die zu übergebenden Parameter.
MIT-Lizenz

Mit WPF-Anwendungen gibts anscheinend Probleme beim Laden von Resourcen.

Vielleicht kanns ja trotzdem jemand gebrauchen^^ Wer das Konsolenfenster loswerden will, der kann einfach in den Projekteigenschaften auf Windows-Anwendung umstellen.

Projekte:Jade, HttpSaver
Zum Rechtschreiben gibts doch schon die Politiker. Aber die bauen auch nur mist!

C
2.121 Beiträge seit 2010
vor 12 Jahren

Ich kenns eigentlich echt nicht 😉
Für welchen Zweck brauchst du das?
Und wie funktioniert es, man muss also das Programmm schon vorher anders starten, falls mans evtl. überschreiben mag?

Floste Themenstarter:in
1.130 Beiträge seit 2007
vor 12 Jahren

Hab das für n kleines Projekt mit etlichen Dateien, die ins Ausgabeverzeichnis kopiert werden gemacht. So nach dem Motto: Mal eben schnell Erstellen drücken (um die Dateien neu zu kopieren), aktualisieren und gucken, wies aussieht, wenn der Knopf unten rechts 5 Pixel schmaler ist. Problem is blolß, dass das normalerweise fehlschlägt, solange das Programm läuft.

man muss also das Programmm schon vorher anders starten, falls mans evtl. überschreiben mag?

Ja, es wird das Ladeprogramm gelockt, anstatt des eigendlichen Programms.

Projekte:Jade, HttpSaver
Zum Rechtschreiben gibts doch schon die Politiker. Aber die bauen auch nur mist!

Gelöschter Account
vor 12 Jahren

Siehst du eine Möglichkeit das gestartete Assembly in eine Art Container zu packen, seine Consolen Ausgaben zu überwachen und bei einem unerwarteten Fehler neu zu starten? Also vom Prinzip her, ein Application Server. Diese Idee hat als freies .NET Projekt echtes Potenzial.

1.815 Beiträge seit 2005
vor 12 Jahren

Hallo!

Also vom Prinzip her, ein Application Server

Naja, ich würde es dann eher in die Kategorie WatchDog einordnen.

Nobody is perfect. I'm sad, i'm not nobody 🙁

J
152 Beiträge seit 2009
vor 12 Jahren

welches eine Exe samt Dlls mittels Assembly.Load(byte[]) lädt und dann ausführt.

Hallo Floste,

gibt es hierbei noch etwas zu beachten?

Wenn ich deinen ShadowRunner benutze kann ich zwar die *.exe meiner Anwendung überscheiben oder löschen. Bei *.dll bekomme ich die Meldung, die Datei sei von einem anderen Programm verwendet.

(Window 7 - 32 bit)

//Jörg

Floste Themenstarter:in
1.130 Beiträge seit 2007
vor 12 Jahren

Bei mir geht es auch mit den dlls.
Allerdings führe ich den shadowrunner auch nicht im anwendungsverzeichnis aus, daran ligt es wahrscheinlich. Ich gucks mir später genauer an.

Projekte:Jade, HttpSaver
Zum Rechtschreiben gibts doch schon die Politiker. Aber die bauen auch nur mist!