У меня есть несколько компьютеров, на которых тестируется установка программы, размещенной на сетевом диске. Из-за особенностей моей системы (которая очень сложна) файл установки выполняется из Cygwin. Поэтому до сих пор он просто запускал Cygwin и выполнял установку:
/cygdrive/z/testinstall/setup.exe
Он отлично работает на всех версиях Windows вплоть до Windows 7. Недавно я получил Windows 8 и Windows Server 2012, но тот же трюк больше не работает на этих платформах. Теперь я получаю "Отказано в доступе" при запуске установки из Cygwin. Это, безусловно, связано с какой-то новой политикой безопасности в Windows.
Я должен отметить, что я могу запустить установку из cmd, но проблема в том, что мне придется делать это из Cygwin. Я также должен отметить, что UAC на этих машинах деактивирован. Есть идеи, как обойти проблему с разрешениями?
решение1
Для запуска этого файла в Windows 7 или Windows 8 вам потребуются права администратора.
runas /user:REQUIREDUSERNAME /savecred c:\PATH\TO\APP.exe
Вы можете запустить его как администратор, используя указанную выше команду, заменив REQUIREDUSERNAME
имя учетной записи администратора.
/savecred
заставит его запрашивать пароль администратора только при первом запуске.
Для получения более подробной информации см.полная документация runas
команды.