Сценарий Perl, запущенный с .vbs - проблемы с Program Files в переменной пути env

Я запускаю скрипт сборки Perl с файлом .vbs, однако, когда запускается окно Perl, оно выдает мне «Не удается найти cl.exe, нет такого файла или каталога».

Запуск perl-скрипта напрямую не дает ошибок. Папка bin Visual Studio находится на моем пути

Какие-либо предложения? Сценарий сборки — это стандартный perl, вызывающий несколько программ, сценарий .vbs ниже

Dim ss
Set ss = CreateObject("WScript.Shell")
ss.CurrentDirectory = "MyBuildDirectory"
ss.run build.pl, 1, True

person LiamRyan    schedule 23.05.2013    source источник


Ответы (2)


Посмотрите здесь.

Вы заметили, что первый аргумент задается как strCommand? Это означает, что это строка. Что такое без кавычек build.pl?

Я не уверен, почему он выдает ошибку, но я знаю, что он, вероятно, ищет объект с именем «сборка» и пытается получить свойство с именем «pl».

person Axeman    schedule 23.05.2013
comment
Извините, я переписал сценарий здесь для простоты, на самом деле это строка в сценарии, которая объявлена ​​​​в другом месте. - person LiamRyan; 24.05.2013

Чистое вуду, но попробуй

iRet = ss.Run("%comspec% /c ""f:\ullpathto\perl.exe"" ""f:\ullpathto\build.pl""", 1, True)

Если это «работает», вы можете удалить лишние части/пути.

полагаю, что сообщение об ошибке доказывает, что процесс, запущенный .Run, не имеет пути к cl.exe)

person Ekkehard.Horner    schedule 23.05.2013