Я пытаюсь загрузить и выполнить динамически внешнюю сборку вопреки пожеланиям разработчика.Он выполняет проверку хеш-функции в GetCallingAssembly (). Location и закрывается.
Сборка часто обновляется, поэтому редактирование кода IL для обхода этой проверки было бы возможным, но это должно быть сделано программно перед загрузкой.,Это было бы ненадежно, и я не мог найти адекватную документацию о каких-либо инструментах, которые могли бы быть использованы для его исправления.Я также мог бы вообще обойти проверку, просто вызвав более позднюю функцию напрямую, если бы смог разобрать несколько строк из сборки.Это было бы проще, но наименее ненадежно, если бы что-то существенное было изменено, мой код сломался бы.
AFAIK Нет простого способа контролировать то, что возвращает GetCallingAssembly (). Расположение дочернего процесса.У меня есть полные права на исполняющий компьютер, если это поможет.
В противном случае я надеялся, что смогу использовать какую-то функцию хука или Windows 7 для перенаправления чтения C # FileStream из одного файла в другой, но я неЯ не знаю, как мне поступить.
Пожалуйста, укажите мне на некоторые идеи.Я знаю, что этот вид проверки глуп, и его легко обойти с правильными знаниями.
Спасибо