0

这就是我想要完成的事情:

我有两个应用程序。一个是客户端应用程序,另一个是编译器。客户端使用加密,出于安全原因,我希望用户能够运行“编译器”应用程序,该应用程序将在已编译的二进制文件中硬编码安全密钥,因此每个客户端都有自己的加密密钥存储在其中。这甚至可能还是解决方案会很疯狂?谢谢。

4

2 回答 2

2

当然,您所说的只是重写 MSIL 代码。微软一直通过代码合同来做到这一点。这是一篇文章的链接,解释了如何:http: //msdn.microsoft.com/en-us/magazine/cc188743.aspx

另一个例子: http: //www.codeproject.com/Articles/20565/Assembly-Manipulation-and-C-VB-NET-Code-Injection

于 2012-04-17T13:28:33.640 回答
1

如果你的程序集是强签名的,你就不能修改它。您无法将修改后的 .net 程序集保存回磁盘。但是,您可以构建您的程序集(如 Kevin 所述),以便能够在运行时修改加载到内存中的代码。它不会影响磁盘上的图像,并且每次启动应用程序时都会运行修改。

于 2012-04-17T13:35:47.147 回答