У меня есть следующий код PHP:
$compileCSS = "C:\ApacheFlexSDK\bin\mxmlc.exe
C:\inetpub\utils\css\\". $_POST['cssFileName'] . ".css" . " 2>&1";
exec ( $compileCSS, $output );
// uncomment to see the response to command
print_r($output);
Это выполняет команду, такую как:
C:\ApacheFlexSDK\bin\mxmlc.exe
C:\inetpub\utils\css\sample.css 2>&1
Когда я запускаю это, я получаю следующую ошибку:
Array ( [0] => Error loading: C:\Program Files (x86)\Java\jre1.8.0_121\bin\client\jvm.dll )
C:\Program Files (x86)\Java\jre1.8.0_121\bin\client\jvm.dll
правильно, и здесь есть jvm.dll.
Когда я запускаю команду непосредственно из командной строки, она отлично работает, то есть генерирует SWF-файл (mxmlc — это компилятор Apache Flex).
Не могу найти, как решить это, пожалуйста, помогите.
Вы должны заключить приложение в путь или параметры приложения в двойных кавычках, если они имеют пробелы:
$cmd = 'targetapp.exe "C:\my other path with spaces\targetfile.xxx"';
exec($cmd);$cmd = '"C:\my path with spaces\targetapp.exe" C:\mypathnospaces\targetfile.xxx';
exec($cmd);
Других решений пока нет …