2012-12-14 6 views
2

웹 페이지를 pdfs로 변환하는 wkhtmltopdf을 방금 설치했습니다.cfexecute 명령 줄

나는과 같이 서버의 명령 줄에서 실행할 수 있습니다 :

wkhtmltopdf http://www.google.co.uk c:\google.pdf 

wkhtmltopdf 추가 경로 환경 변수에 추가되었습니다. exe 로의 실제 경로는 C : \ Program Files \ wkhtmltopdf \ wkhtmltopdf.exe입니다.

이제 cfexecute를 사용하여 ColdFusion 8에서이 프로그램을 실행하려고합니다.

<cfexecute name="c:\Program Files\wkhtmltopdf\wkhtmltopdf.exe" 
     arguments="wkhtmltopdf http://www.google.com c:\google.pdf" 
     timeout="10" /> 

몇 가지 변형을 시도했지만 작동하지 않을 수 있습니다.

"오류 5 액세스가 거부되었습니다."라는 메시지가 있지만 권한 문제가 아닌 구문 문제 일 수 있음을 알고 있습니다.

누구든지 내 코드와 관련된 문제를 볼 수 있습니까?

+1

cfexecute가 잘못되었습니다. [the docs] (http://cfdocs.org/cfexecute)를 확인하면'variable' 속성이 응답이 저장된 CFML 변수임을 확인할 수 있습니다. 실행 파일에 전달 된 매개 변수에 대해'arguments '를 원한다. –

+0

이런, 나는 그걸 교환하는 걸 잊어 버렸다. 위의 편집을했습니다. 아직도 좋지 않다. – Sam

답변

5

확인을 작동 알았어요! ...

<cfexecute name="c:\Program Files\wkhtmltopdf\wkhtmltopdf.exe" 
     arguments="http://www.google.com C:\google.pdf" 
     timeout="10" /> 

구문

내가 창에서 실행 한 명령 줄에서 조금 다르다.

+1

다른 구문은 아니지만 원래 버전에서는 동일한 프로그램을 두 번 호출했습니다. – Sergii

0

ColdFusion에서 HTML을 PDF로 변환 할 수 있다는 것을 알고 계셨습니까? cfdocument tag을 참조하십시오.

<cfhttp method="get" url="http://www.google.com" timeout="10" /> 
<cfif cfhttp.StatusCode EQ "200 OK"> 
    <cfdocument format="PDF" localurl="false"> 
     <cfoutput>#cfhttp.FileContent#</cfoutput> 
    </cfdocument> 
<cfelse> 
    <p>http request failed [<cfoutput>#cfhttp.StatusCode#</cfoutput>]</p> 
</cfif> 

난 당신이 PDF 컨버터에서 필요한 기능의 범위를 모르지만 간단한 변환을위한 cfdocument 태그는 꽤 잘 작동합니다

여기에 작동합니다 아주 간단한 예이다.

+1

wkhtmltopdf는 테스트에서 변환시 더 정확한 작업을 수행합니다. –