Как запустить sqlcmd.exe со страницы ASP?
В рамках процедуры контроля версий (и автоматической установки) нашей базы данных нам необходимо иметь возможность запускать sqlcmd.exe для различных файлов .sql на странице ASP. Код, который я использую для этого:
Dim cmd : cmd = "sqlcmd -S " & DATABASE_SERVER & " -U " & DATABASE_UID & " -P " & DATABASE_PWD & " -d " & DATABASE_NAME & " -i """ & scriptPath & """ -b"
Dim wshShell : Set wshShell = Server.CreateObject("WScript.Shell")
Dim return : return = wshShell.Run(cmd, 0, True)
У меня есть код, работающий на моей машине разработки (под управлением XP), но теперь, когда я развернул его на нашем сервере Windows 2003, возникли проблемы. Проблема в том, что значение return всегда равно 1. Это также происходит, если я пытаюсь заставить его запустить командный файл или что-то еще, что я могу придумать (если я изменю значение для cmd на несуществующий файл, он вылетит как я и ожидал)
Я попытался добавить I_USR и I_WAM, чтобы иметь разрешения на выполнение как для sqlcmd.exe, так и для cmd.exe, но он все равно возвращает 1. Если я открываю командную строку на сервере и выполняю «runas / user: servername \ i_usr sqlcmd.exe» "который работает нормально, но запуск со страницы ASP по-прежнему не работает.
Кроме того, при запуске скриптов .sql вручную все работает без сбоев, поэтому с ними нет проблем.
Есть ли на сервере какие-либо параметры безопасности, которые я забыл изменить в IIS или Windows в целом, чтобы заставить его работать?
Заранее спасибо Интернету.