У меня есть следующий .bat файл:Команда в .bat файла нераспознана, когда файл .bat вызывается из программы установки Inno, но отлично работает, когда я запускаю файл битого вручную
fbwfmgr /enable
.
.
.
fbwfmgr /addexclusion c: "some folder 1"
fbwfmgr /addexclusion c: "some folder 2"
.
.
.
, который я звоню из раздела [Run]
в моей установки Inno так:
Filename: "{tmp}\set_write_protection_rules.bat";
Я также попытался это:
Filename: "{cmd}"; Parameters: "/c ""{tmp}\set_write_protection_rules.bat""";
I аль способы получить сообщение
«fbwfmgr» не распознается как внутренняя или внешняя команда, оперативная программа или командный файл.
Если я запустил .bat-файл, дважды щелкнув по нему, он будет работать, если я запустил его из CMD-окна самостоятельно, он работает. Что мне здесь не хватает?
Я запускаю это на системе Windows Embedded Standard x64, зарегистрированной как администратор.
EDIT:
Добавление полный путь к fbwfmgr.exe
не решает проблему (я также вручную посмотрел, что это фактическое местоположение fbwfmgr.exe
):
%systemroot%\system32\fbwfmgr.exe /enable
Я нашел a similar thread here где OP имеет ту же проблему при запуске .bat-файла из vbs, никакого решения, похоже, не найдено. С предложением там вырезать средний человек я пытался дозвониться fbwfmgr
непосредственно из программы установки Inno с помощью следующей строки:
Filename: "{cmd}"; Parameters: "c/ ""fbwfmgr /enable""";
но никакой пользы. Он просто открывает пустое окно консоли. Когда я пытаюсь позвонить fbwfmgr
, он не распознается.
Вы пытались добавить 'путь' в первую строку своего .bat-файла? Я ничего не знаю о Inno, но я бы предположил, что у него другая настройка пути. –
Что такое 'fbwfmgr'? От куда это? –
fbwfmgr - это менеджер защиты от записи на диске в встроенных окнах, короче говоря, он запрещает вам писать все, что защищено от записи, и вместо этого хранит его в ОЗУ. Полезно, если вы используете что-то вроде CFAST-карты, которая чувствительна к количеству сделанных вами записей. – user2078171