最近在想怎么才能防止DLL非法调用的问题,想来想去也没想到什么好的方法。
只想到了下面这么一个方法,但是对一般的人来说还是管用的。
平台:WinXP sp3,Visual Studio 2008 Professional(CN)
1)程序分为:MyEXE.exe 和 MyDLL.dll
2)用MyKey.snk 签名 MyEXE.exe 和 MyDLL.dll
3)测试代码如下:
4)这样就差不多了,我试验了一下用别的EXE调用DLL,失败。但是限于水平,我总感觉这样不是很好,但我现在也不知道怎么破解的了。
5)最后就是要注意代码的编写了,能 sealed 就 sealed,能 private 就 private 。