У меня есть приложение, которое используется на нескольких сот компьютерах в компании, что я должен изменить INI-файл в каталоге установки приложения. Пользователи могут устанавливать приложение там, где захотят, и могут иметь несколько версий приложения, установленных в любой момент времени. Мне нужно найти этот каталог установки.Определите каталог установки сторонних приложений
Методы Я считал до сих пор:
- Использование WindowsInstaller, чтобы найти продукт по имени и найти его каталог установки. (от here). - Это почти сработало, но свойств, которые я ожидал бы заселить (TARGETDIR, APPDIR), нет.
- Просмотрев реестр, найдите каталог установки для конкретного приложения. Его там нет.
- MsiGetComponentPath()? Я видел это в той же ссылке, о которой говорилось выше, но я не знаю, как ее реализовать. Я могу получить ProductID с помощью установщика Windows, но я не знаю, как программно просто выбрать компонент и найти его идентификатор случайным образом. Кто угодно?
Хорошо, позволяет слышать любые другие способы программного определения каталога установки приложения Windows.
FYI, если кто-то есть интересно, что DLL ссылается на «Installer», это в C: \ windows \ system32 \ msi.dll. – Jedidja
с использованием WindowsInstaller; – RAM