cfexecute time out - PullRequest
       6

cfexecute time out

0 голосов
/ 01 августа 2011

Я использую CF9 dev edition - использую встроенный веб-сервер на win XP sp3 Кажется, я не могу запустить командную строку из CF ...

Ошибка выглядит так: Время ожидания истекло без завершения C: \ Program Files \ Vis \ vis.exe

Если я запускаю это из CMD - он работает нормально ... C: \ Program Files \ Vis \ vis.exe "C: \ Documents and Settings \ me.POV-ISP \ Мои документы \ actX.vjb"

пытается запустить его из CF с использованием этого кода - (или многих других вариантов), и время ожидания истекает.

<cfexecute name = "C:\Program Files\Vis\vis.exe" 
arguments = "C:\Documents and Settings\me.POV-ISP\My Documents\actX.vjb"
variable="result" timeout="600" errorVariable="errorv"/>

Из прочтения других тем я понимаю, что это МОЖЕТ быть разрешениями, но ЧТО должны быть разрешения? Я установил CF как я - он запускается локально, через мой аккаунт, так же, как я использую CMD.

мысли ???.

Ответы [ 3 ]

0 голосов
/ 02 августа 2011

Вы также можете попробовать переопределить любой параметр в отдельном файле, который вы делаете, с помощью следующей команды

<cfsetting requesttimeout = "10000">

Где, 10000 - это 10000 секунд. Вы можете придерживаться 600 секунд (10 минут) и двигаться оттуда. Я бы поставил это перед cfexecute. Сначала вы можете попробовать использовать его один или в сочетании с таймаутом cfexecute.

Дайте нам знать, как это происходит!

0 голосов
/ 04 августа 2011

Если ни один из описанных выше подходов не работает, возьмите SysInternals Process Monitor и запустите его во время выполнения запроса.Process Monitor генерирует тысячи событий (их фильтрация очень необходима), включая все попытки доступа к файлам и реестру и их успех.Вы можете найти ключ к ведению журнала.

0 голосов
/ 02 августа 2011

Первое, что я бы попробовал, это изменить путь к C: \ documents and settings ... (На самом деле это краткий путь к файлу / указателю в Windows 7, а не к истинному пути) и использовать c: \ users \ m .pov-ПУИ \ Documents \ actX.vjb). На всякий случай, если ColdFusion не может разрешить указатель в системной среде.

Если это не так, это либо синтаксис, либо права доступа?

Чтобы исключить синтаксис, я бы запустил это, слегка измененное для windows 7, пример из живых документов:

<cfexecute name = "C:\Windows\System32\NETSTAT.EXE" 
    arguments = "-e"  
    outputFile = "C:\Temp\output.txt" 
    timeout = "1"> 
</cfexecute>

Если выходной файл обнаружен, вы знаете, что это синтаксис. Если этого не произойдет, мы можем атаковать службу ...

Откройте панель служб (щелкните правой кнопкой мыши на моем компьютере -> управлять -> службами и приложениями -> службами).

Выберите сервер приложений ColdFusion 9 -> свойства

Измените учетную запись на свою. Это должно предоставить ColdFusion доступ к вашим Документам и всем другим ресурсам, которые вы можете использовать как пользователь. Вы также можете попробовать выполнить вывод в папку на диске C, которая с меньшей вероятностью будет иметь конфликтующие проблемы с разрешениями.

Желаем удачи. -Dave

...