Как я могу скопировать существующий файл в каталог MyDocuments в WiX? - PullRequest
0 голосов
/ 03 июня 2019

TL: DR

Как я могу сказать WiX скопировать файлы из установщика в указанный каталог в папке пользователя MyDocuments?

Я пытаюсь написать элементарный установщик, используя WiX. Я выяснил, как ссылаться на проекты и исполняемый файл, но я хочу, чтобы установщик записал несколько файлов в каталог MyDocuments пользователя, устанавливающего программу.

Почему не AppData? Поскольку большинство пользователей не знают, как получить доступ к каталогу AppData, и программа должна обеспечивать относительно легкий доступ к рассматриваемым файлам, чтобы они могли добавлять или удалять файлы по своему усмотрению, хорошо это или плохо.

Кроме того, если пользователь решит удалить эти файлы, я бы предпочел, чтобы программа НЕ кричала на них при последующих запусках, так как программа имеет внутренние проверки, чтобы убедиться, что файлы существуют до ссылки на них, и если они это делают нет, ссылается на них внутри.

Что мне нужно добавить к следующему скрипту WiX, чтобы сказать ему: «Поместите MySetupInstallerDocument.txt в MyDocuments / MySetupProject / MySetupProjectFiles», где MySetupInstallerDocument.txt находится в той же папке, что и файл .wxs?

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
    <Product
        Id="*" Name="MySetupInstaller" Language="1033" Version="1.0.0.0" Manufacturer=""
        UpgradeCode="07a36861-41cf-40e4-a1b6-eb970bc305ff">
        <Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />

        <MajorUpgrade
            DowngradeErrorMessage="Bla bla bla" />
        <MediaTemplate />

        <Feature Id="ProductFeature" Title="MySetupInstaller" Level="1">
            <ComponentGroupRef Id="ProductComponents" />
        </Feature>
    </Product>

    <Fragment>
        <Directory Id="TARGETDIR" Name="SourceDir">
            <Directory Id="ProgramFilesFolder">
                <Directory Id="INSTALLFOLDER" Name="MySetupInstaller" />
            </Directory>
        </Directory>
    </Fragment>

    <Fragment>
        <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
            <Component Id="ProductComponent">
                <File Source="$(var.MySetupProject.TargetPath)" />
            </Component>
        </ComponentGroup>
    </Fragment>
</Wix>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...