如何在运行时计算代码的校验和?

时间:2009-03-04 14:16:59

标签: c# .net checksum

我在计算机上运行了一个C#.NET应用程序。如何在运行时计算整个代码的校验和?

注意:

我不想计算正在使用的图像的校验和,而是计算实际的代码部分。

4 个答案:

答案 0 :(得分:2)

我只会使用code signing,但是如果你真的想要推出自己的解决方案(这可能是一个坏主意。代码签名是一件好事)你可以使用反射来查看IL代码并计算基于此的校验和。这不是一个非常好的解决方案,并且可能会导致一些奇怪的错误,所以请为您节省一些麻烦并使用代码签名。

答案 1 :(得分:2)

我从未使用过这个,但是:

使用反射,您可以导航到GetILAsByteArray并执行校验和(按方法)。

但我认为使用代码签名或Assembly.GetExecutingAssembly然后对.dll或.exe执行校验和会更容易。

答案 2 :(得分:1)

在运行时,您无权访问原始的书面源代码。

答案 3 :(得分:0)

你的程序集上有一个强大的名字就是这样做 - 但你必须相信它正如宣传的那样工作。 你要解决的确切问题是什么?