У меня есть сценарий пост-сборки в Visual Studio, который я пытаюсь запустить, чтобы мы могли упростить удаленное развертывание. Ранее в этом скрипте (вы его здесь не видите) мы жестко запрограммировали пользователя в выполнении сетевого использования ниже. Таким образом, все, что мы здесь делаем, это то, что пользователь вводит имя сервера и базу данных для развертывания, а затем подключается к сетевому ресурсу этого сервера.
Однако я обнаружил, что приведенный ниже код работает нормально, только если вы запускаете его с помощью командной строки. Он открывает новое окно и помещает пользователя на сервер и базу данных, а затем команда net use правильно показывает серверу пользовательский ввод, все в том же окне.
Если вы попытаетесь использовать это в пакетном файле или в Visual Studio, команда net use покажет пустое имя сервера.
Я ценю любое понимание, которое у кого-то может быть по этому поводу!
START CMD /C "CALL SET /P SERVERNAME=Please Enter The Server Name: & CALL SET /P DATABASE=Please Enter The Database Name: & CALL CMD /C net use \\%SERVERNAME%\d$ /persistent:no * /user:%user%"
start
иcall
- они используются для исключительных обстоятельств. Также это все на 1 строке без уважительной причины. Исправьте свой код и посмотрите, что произойдет. И свалить всеcmd /c
. - person   schedule 05.02.2016