Hallo, ich würde gerne bytes einer executable ohne diese zu builden ausführen. Habe schon viele Sachen ausprobiert. Nichts davon hat funktioniert.
oder
Kann mir jemand helfen?
C#-Quellcode
-
- public static Thread RunFromMemory(byte[] bytes)
- {
- var thread = new Thread(new ThreadStart(() =>
- {
- var assembly = Assembly.Load(bytes);
- MethodInfo method = assembly.EntryPoint;
- if (method != null)
- {
- method.Invoke(null, null);
- }
- }));
- thread.SetApartmentState(ApartmentState.STA);
- thread.Start();
- return thread;
- }
oder
C#-Quellcode
-
- FileStream fs = new FileStream("file.exe", FileMode.Open);
- BinaryReader br = new BinaryReader(fs);
- byte[] bin = br.ReadBytes(Convert.ToInt32(fs.Length));
- fs.Close();
- br.Close();
- // load the bytes into Assembly
- Assembly a = Assembly.Load(bin);
- // search for the Entry Point
- MethodInfo method = a.EntryPoint;
- if (method != null)
- {
- // create an istance of the Startup form Main method
- object o = a.CreateInstance(method.Name);
- // invoke the application starting point
- method.Invoke(o, null);
- }
Kann mir jemand helfen?