Можно ли определить, содержится ли файл справки в файле установки (msi или exe)? - PullRequest
0 голосов
/ 15 апреля 2011

Я хотел бы знать, как я могу определить, содержится ли файл справки в файле установки для приложения на платформе Windows (msi или exe).Есть ли способ получить эту информацию без предварительной установки программного обеспечения?

Конечно, установочный файл может быть создан многими производителями, такими как innosetup, installshield и так далее.Поэтому мне интересно, есть ли какой-нибудь универсальный метод для решения этой проблемы.

Ответы [ 2 ]

1 голос
/ 16 апреля 2011

Для установки на основе MSI это будет очень просто. Например, вы можете использовать взаимодействие Microsoft.Deployment.WindowsInstaller через C #, чтобы открыть MSI как InstallPackageClass, а затем получить доступ к его коллекции Files и проверить, содержит ли он файл, который вам нужен.

Для установки без MSI не существует универсального способа, и в большинстве случаев нет периода. Видите, в этом и заключается смысл MSI: иметь основанный на стандартах пакет, богатый метаданными, чтобы видеть, что он делает. Когда вы делаете какой-то проприетарный скрипт-установщик, вы теряете эту открытость.

0 голосов
/ 18 апреля 2011

Если это файл MSI, откройте его с помощью Orca, и вы сможете просмотреть имена файлов.

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

для MSI это просто

msiexec /a <msi_filename>

Для exe вам нужно посмотреть, как передать аргумент / a.

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