다음 코드는 CutePDF 프린터로 (pBuf
버퍼에 저장) 포스트 스크립트 내용을 전송 설정되지 않은 경우에만 PDF 생성이 코드의 실행 중에PDF 프린터 출력 파일 이름이
if (OpenPrinter(printerName, &hPrinter, NULL))
{
DOC_INFO_1 di1;
di1.pDatatype = L"RAW";
di1.pDocName = L"Raw print document";
di1.pOutputFile = NULL;
StartDocPrinter(hPrinter, 1, (LPBYTE)&di1);
StartPagePrinter(hPrinter);
DWORD dwWritten = 0;
WritePrinter(hPrinter, pBuf, dwBufSize, &dwWritten);
EndPagePrinter(hPrinter);
EndDocPrinter(hPrinter);
}
을 대화 상자가 나타납니다 여기서 출력 파일의 이름을 지정합니다 (예 : D:/out.pdf
). 그 후에 pdf 파일이 생성됩니다. 여태까지는 그런대로 잘됐다. 결과 D:/out.pdf
ISN은
di1.pOutputFile = L"D:/out.pdf";
이러한 코드 (예상대로)의 실행 중에 대화 상자를 표시하지 않습니다 :하지만, 문제는 내가 조각의 4 호선을 변경하여 단계를 지정하는 파일 이름을 피하기 위해 노력하고있을 때 시작 pdf 파일은 프린터로 전송 된 PostScript 파일의 사본입니다 (pBuf
버퍼의 내용 사본). PDF Writer는 같은 방식으로 작동합니다. PDF 프린터가 이런 식으로 작동하는 이유와 UI에서 이름을 지정하지 않고 PDF 파일을 생성하는 데 필요한 동작을 수행하는 방법은 무엇입니까?