Самораспаковывающийся файл, который принимает аргументы и возвращает код выхода - PullRequest
0 голосов
/ 24 августа 2018

Я хочу создать самораспаковывающийся файл (SFX) с именем Setup.exe, который содержит приложение Windows с некоторыми зависимостями.

Можно запустить приложение Windows с аргументами, и я хотел быпоместите их в мой Setup.exe, а затем он должен передать их в приложение Windows.Более того, я хотел бы передать код завершения приложения Windows в Setup.exe.

В настоящее время я пытался использовать 7zip, но, похоже, этого недостаточно.

Это так?даже возможно с 7z или вы знаете, как делать с другими инструментами?

Ответы [ 2 ]

0 голосов
/ 12 сентября 2018

После некоторых экспериментов я изменил реализацию, поэтому вместо использования 7 zip для создания SFX я просто вставил все, что мне нужно, например * .msp и такие, как встроенные ресурсы, в мое приложение Windows.Таким образом, мои аргументы и код возврата работали из коробки.

Я использовал эту ссылку для фактической реализации: https://www.telerik.com/blogs/how-to-merge-assemblies-into-wpf-application

0 голосов
/ 29 августа 2018

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

Да, можно запустить приложение Windows с аргументами.В идеале для этого вам нужно открыть командную строку и перейти в каталог вашего приложения, а затем набрать theProgramName.exe - arguments options, но я полагаю, что вы уже знаете.

Другой подход будет к Create ShortCut для программы, в которой вы находитесь.ориентации, а затем вы можете просто щелкнуть правой кнопкой мыши -> Свойства -> и добавить свои аргументы в поле Target.Пример: C:\Games\Counter-Strike\hl.exe -steam -game cstrike -noforcemparms -noforcemaccel

Другой подход, который, я полагаю, вам понадобится при создании SFX, - это создать .bat (пакетный) файл с содержимым theProgramName.exe - arguments options и поместить его в тот же каталог.в качестве вашей программы и установите его для запуска в качестве основного приложения при извлечении.Если вы хотите exe, а не bat, вы можете использовать некоторые летучие мыши для запуска инструментов конвертации, есть множество вариантов.

Лучший способ, о котором я могу подумать, - это использовать такие программы, как AdvancedУстановщик .Вы можете напрямую создать msi или sfx и отправить ярлык куда угодно (более одного), и он может содержать аргументы, которые вы укажете, точно так же, как я описал вторым способом.

Так что да, другиеинструмент, за который я ручаюсь, сделает то, что, я думаю, вы хотите сделать, это Advanced Installer.

...