我试图找到一种快速有效的方法来允许 dll 检查它是否在内存中更改了代码。
我想在 THISLIB.DLL 类中插入一个函数,使用如下:
var assembly = Assembly.GetExecutingAssembly();
Module[] thisModule = assembly.GetLoadedModules();
foreach (Module i in thisModule)
{
if (i.Name == "THISLIB.dll")
{
ModuleHandle m= i.ModuleHandle;
byte[] dllMemory = new byte[??? HOW GET THISLIB.DLL MEMORY SIZE ???];
dllMemory = ??? HOW GET THISLIB.DLL MEMORY DATA ???
}
}
我需要检查 HASH(MEMORY THISLIB.DLL) 是否等于 HASH(FILESYSTEM THISLIB.DLL)!