You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22 lines
729 B
22 lines
729 B
using System.IO; |
|
using System.Reflection; |
|
using System.Runtime.Loader; |
|
|
|
namespace ET |
|
{ |
|
public static class DllHelper |
|
{ |
|
private static AssemblyLoadContext assemblyLoadContext; |
|
|
|
public static Assembly GetHotfixAssembly() |
|
{ |
|
assemblyLoadContext?.Unload(); |
|
System.GC.Collect(); |
|
assemblyLoadContext = new AssemblyLoadContext("Hotfix", true); |
|
byte[] dllBytes = File.ReadAllBytes("./Server.Hotfix.dll"); |
|
byte[] pdbBytes = File.ReadAllBytes("./Server.Hotfix.pdb"); |
|
Assembly assembly = assemblyLoadContext.LoadFromStream(new MemoryStream(dllBytes), new MemoryStream(pdbBytes)); |
|
return assembly; |
|
} |
|
} |
|
} |