WiX - CustomAction ExeCommand - скрывает консоль

Сначала убедитесь, что вы находитесь в каталоге, в котором вы хотите, чтобы ваш проект находился. Затем запустите npm init. Это инициализирует проект узла. Сделав это, вы также создадите файл package.json и затем сможете npm install делать все, что захотите. Если вы хотите автоматически сохранить пакеты npm в package.json, запустите npm install my_package --save, заменив «my_package» тем пакетом, который вы хотите. Например, экспресс.

24
задан Cheeso 22 March 2011 в 16:52
поделиться

2 ответа

Обратите внимание, что если вам требуется повышение прав UAC, вам необходимо убедиться, что это CA с отложенным исполнением. Вот пример из руководства с добавленными аргументами командной строки.

<CustomAction Id="QtExecDeferredExampleWithProperty_Cmd" Property="QtExecDeferredExampleWithProperty"
              Value="&quot;[#MyExecutable.exe]&quot; /arguments" Execute="immediate"/>
<CustomAction Id="QtExecDeferredExampleWithProperty" BinaryKey="WixCA" DllEntry="CAQuietExec"
              Execute="deferred" Return="check" Impersonate="no"/>
.
.
.
<InstallExecuteSequence>
    <Custom Action="QtExecDeferredExampleWithProperty_Cmd" After="CostFinalize"/>
    <Custom Action="QtExecDeferredExampleWithProperty" After="TheActionYouWantItAfter"/>
</InstallExecuteSequence>
7
ответ дан 29 November 2019 в 00:28
поделиться

Если у вас есть исходный код EXE-файла, это то, что вы можете сделать. Сделайте проект EXE Win32 Application проектом вместо Console Application .

Если вы не можете изменить исходный код EXE-файла, вы можете сделать это следующим образом:

  1. Создание DLL CustomAction
  2. Вызов CustomAction в DLL (из WiX) для выполнения процесса, скрывая окно консоли .
2
ответ дан 29 November 2019 в 00:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: