| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Изменить строку в уже скомпилированном ехе |
| Автор: Verus 1.10.2010, 17:42 |
| Суть такая, что надо изменить значение строки не перекомпилируя проект. Например, если запускаем с ключом, то внутри заменяется эта строка и остается там уже измененной даже после закрытия приложения. Т.е. изменяется не как экземпляр в ходе выполнения а нужно переписать это значение внутри ехе. |
| Автор: mrbrooks 4.10.2010, 08:22 |
| дык есть же файл конфигурации. его и юзай. |
| Автор: Verus 5.10.2010, 15:47 |
| А поподробнее чуток можно? Спасибо |
| Автор: Snowy 5.10.2010, 16:13 |
| exe нельзя изменить, когда он запущен. Просто храни строку в реестре. |
| Автор: Verus 5.10.2010, 17:18 | ||
Возможно еть способ изменить из вне? Например другой прогой изменить известный блок данных? |
| Автор: jonie 5.10.2010, 19:51 |
| Verus, ну есть такая методика.. однако обычно этого не требуется (как минимум антивирусы будут подозревать что вы вирус).... кроме того в MSIL придется покопаться (взять Mono (пример использования плагин Reflexi для Reflector-а)).... ну или попробывать в неуправляемых ресурсах это значение хранить (надо гуглить как работать и добавлять такие ресурсы в .NET длл-ку) |
| Автор: mrbrooks 6.10.2010, 08:42 |
это же старомодно. хранить значение строки в файле конфигурации. тут уж подробнее не куда |
| Автор: Verus 6.10.2010, 17:41 |
| Ок, спасибо всем, сделаем все проще, или файл конфигурации или реестр |
| Автор: umlprog 7.10.2010, 09:47 |
| Вы можете разбить ваше приложения на два:1 - загрузчик, который выполняет замену и 2 - собственно само приложения, которое вызываете Process.Start(...) |