Как я могу изменить значения исполняемого файла .net с помощью отражения? - PullRequest
0 голосов
/ 09 февраля 2011

У меня есть программа, которая зависит от файла конфигурации для трех настроек. В настоящее время я генерирую новый файл конфигурации во время загрузки для каждой загруженной версии (это один и тот же исполняемый файл, но я заполняю значения конфигурации, которые уместны на странице загрузки, и архивирую exe-файл и файл конфигурации для целей обеспечения одной загрузки). ).

Я бы хотел использовать отражение для:

1.) Читать в .exe

2.) Изменить 3 строковых значения

3.) Запишите новый .exe с новыми значениями

Возможно ли это? Как бы я поступил так?

1 Ответ

2 голосов
/ 09 февраля 2011

Невозможно с помощью Reflection.Отражение может только проверять, а не изменять.Есть и другие инструменты, которые могут сделать это, например, Mono.Cecil.Но я думаю, что вы просто неправильно это проектируете.Значения, которые должны быть изменены, должны храниться вне exe-файла, в отдельном файле .config.

Другой способ - создать exe-файл перед каждой загрузкой и передавать значения во время сборки.Во всяком случае, не очень хорошая идея.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...