Как setup.exe для опубликованного приложения ClickOnce знает, как получить необходимые условия?
Я исследую ClickOnce, чтобы помочь поддерживать устаревшее приложение.Net 3.5, и я не нашел ничего, что объясняло бы, как опубликованное приложение ClickOnce выясняет, какие предварительные условия необходимо установить. setup.exe
файл загружается с веб-сайта, так что любой может установить приложение. Что мне нужно знать, так это если предварительная информация запекается в setup.exe
файл или, если он обращается к серверу и получить эту информацию из app.manifest
или что-то?
1 ответ
Что ж, setup.exe - это шаблон неуправляемого исполняемого файла. Что значит шаблон? Каждый раз, когда вы публикуете, у вас есть инструкции ассемблера симулятора в опубликованном файле setup.exe. Только PE файловые ресурсы имеют изменения в каждой сборке (см.: Формат PE файла), поэтому Visual Studio обновляет ресурсы при публикации, и вы получаете то, что вам нужно. Если вы хотите выяснить предварительные условия, вы можете загрузить любую PE Resource Viewer (например, Resource Hacker) и проверить имя ресурса SETUPCFG. Для предварительных условий есть некоторый псевдоязык, вот мой пример ниже:
Кстати, вы можете узнать там URL-адреса загрузки.