Comment puis-je calculer la somme de contrôle du code au moment de l'exécution?

StackOverflow https://stackoverflow.com/questions/610758

  •  03-07-2019
  •  | 
  •  

Question

J'ai une application C # .NET s'exécutant sur une machine. Comment calculer la somme de contrôle de l'ensemble du code au moment de l'exécution?

Remarque:

Je ne veux pas calculer la somme de contrôle de l'image utilisée, mais la partie de code réelle.

Était-ce utile?

La solution

Je n'ai jamais utilisé cela, mais:

En utilisant réflexion, vous pouvez accéder à GetILAsByteArray et faire une somme de contrôle (par méthode).

Mais je pense qu'il sera beaucoup plus facile d'utiliser la signature de code ou Assembly.GetExecutingAssembly puis d'effectuer une somme de contrôle sur le fichier .dll ou .exe.

Autres conseils

Je voudrais simplement utiliser signature de code , mais si vous voulez vraiment lancer votre propre solution (ce qui peut être une mauvaise idée. La signature de code est une bonne chose), vous pouvez utiliser réflexion pour regarder dans le code IL et calculer une somme de contrôle sur cette base. Ce n'est pas une très bonne solution, et pourrait causer quelques bugs étranges, alors évitez-vous quelques ennuis et utilisez la signature de code.

Au moment de l'exécution, vous n'avez pas accès au code source écrit d'origine.

un nom fort sur votre assemblée fait ceci - mais vous devez en quelque sorte avoir confiance qu'il fonctionne comme annoncé. Quel est le problème précis que vous tentez de résoudre?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top