Я пытаюсь выполнить пакетный файл без вывода сообщений и асинхронно из установщика NSIS. Я хочу, чтобы он был тихим, чтобы пользователь не мог его закрыть, и я хочу, чтобы он был асинхронным, чтобы программа установки закрывалась автоматически, пока пакетный файл все еще работает. Идея состоит в том, чтобы пакетный файл удалял установщик как способ реализации самоудаляющегося установщика. Но этот вопрос касается конкретно выполнения пакетного файла.
Я могу выполнить пакетный файл в автоматическом режиме, используя nsExec::Exec
, и я могу выполнить пакетный файл асинхронно, используя Exec
. Я пытаюсь сделать и то, и другое, используя ExecShell
, но это не работает. Аргумент типа шоу, похоже, игнорируется независимо от того, что я ему передаю. Чтобы подтвердить, что это не ограничивается пакетными файлами и SW_HIDE
, я попытался открыть простой текстовый файл в свернутом виде, но до сих пор не могу этого сделать.
ExecShell "" "path.txt" SW_SHOWMINIMIZED
ExecShell "open" "path.txt" SW_SHOWMINIMIZED
Оба этих варианта просто открывают WordPad (мой вариант по умолчанию) в обычном несвернутом окне. Я пытался запросить права администратора и скрыть детали установки, но ничего не работает. Что я могу сделать?
ping localhost
или что-то еще) и то, как вы его выполняете. Пожалуйста, также сообщите нам свою версию Windows. - person Anders   schedule 01.05.2018