Если вы можете успешно удалить из «Программы и компоненты», то я подозреваю, что процесс удаления выполняется с учетной записью пользователя, которая не имеет доступа к кэшированному файлу MSI.
аюсь создать ярлык удаления для своего приложения и использую точную разметку по этой ссылке:
Это создает ярлык в каталоге приложения в папке меню программ.
Проблема заключается в том, что при нажатии на ярлык удаления я получаю следующее сообщение об ошибке: «Не удалось открыть этот установочный пакет. Убедитесь, что пакет существует и вы можете получить к нему доступ, или обратитесь к поставщику приложения, чтобы убедиться, что это допустимый пакет». Пакет установщика Windows "
Ниже то, что у меня есть в файле .wxs
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="APPLICATIONROOTDIRECTORY" Name="MyApplication"/>
</Directory>
<Directory Id="ProgramMenuFolder">
<Directory Id="ApplicationProgramsFolder" Name="MyApplication"/>
</Directory>
</Directory>
<DirectoryRef Id="APPLICATIONROOTDIRECTORY">
<Component Id="myapplication.exe" Guid="xxxxxxxx-1BF3-4394-ABE4-CABB29D6454C">
<File Id="myapplication.exe" Source="myapplication.exe" KeyPath="yes" Checksum="yes"/>
</Component>
<Component Id="documentation.html" Guid="xxxxxxxx-44F3-4E6C-87B9-903CF17EF002">
<File Id="documentation.html" Source="documentation.html" KeyPath="yes"/>
</Component>
</DirectoryRef>
<DirectoryRef Id="ApplicationProgramsFolder">
<Component Id="ApplicationShortcut" Guid="xxxxxxxx-F7C4-40D6-930C-3BD78143A0EF">
<Shortcut Id="ApplicationStartMenuShortcut"
Name="MyApplication"
Description="Uninstall Test"
Target="[#myapplication.exe]"
WorkingDirectory="APPLICATIONROOTDIRECTORY"/>
<!-- Step 1: Add the uninstall shortcut to your installer package -->
<Shortcut Id="UninstallProduct"
Name="Uninstall My Application"
Description="Uninstalls My Application"
Target="[System64Folder]msiexec.exe"
Arguments="/x xxxxxxxx-1D27-4656-AB3F-41A2047CB6C0"/>
<RemoveFolder Id="ApplicationProgramsFolder" On="uninstall"/>
<RegistryValue Root="HKCU" Key="Software\Microsoft\UninstallTest" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
</Component>
</DirectoryRef>
<Feature Id="MainApplication" Title="Main Application" Level="1">
<ComponentRef Id="myapplication.exe" />
<ComponentRef Id="documentation.html" />
<ComponentRef Id="ApplicationShortcut" />
</Feature>
</Product>
Я пока не могу найти решение этой проблемы. Любая помощь будет оценена. Спасибо