When I try to protect the compiled DLL with VMProtect, other programs cannot use this VMProtect protected DLL normally (eg. C# System.AccessViolationException)
Oh, shit. I manually added the VMProtect.BeginUltra flag to the function to be protected and it worked, although dnSpy can still view the source code directly, but it’s very hard to read (I can’t read it)
It seems my previous usage has been wrong, I didn’t use VMProtect SDK to mark functions before, I simply used VMProtect to package the output file