Если вы можете успешно удалить из «Программы и компоненты», то я подозреваю, что процесс удаления выполняется с учетной записью пользователя, которая не имеет доступа к кэшированному файлу MSI.

аюсь создать ярлык удаления для своего приложения и использую точную разметку по этой ссылке:

http://wixtoolset.org/documentation/manual/v3/howtos/files_and_registry/create_uninstall_shortcut.html

Это создает ярлык в каталоге приложения в папке меню программ.

Проблема заключается в том, что при нажатии на ярлык удаления я получаю следующее сообщение об ошибке: «Не удалось открыть этот установочный пакет. Убедитесь, что пакет существует и вы можете получить к нему доступ, или обратитесь к поставщику приложения, чтобы убедиться, что это допустимый пакет». Пакет установщика 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>

Я пока не могу найти решение этой проблемы. Любая помощь будет оценена. Спасибо

Ответы на вопрос(2)

Ваш ответ на вопрос