점 및 인쇄 DLL
필요에 따라 해당 이름을 모듈 레지스트리 값과 연결하여 특수 Point 및 Print DLL을 제공할 수 있습니다. 이 DLL은 다음 두 함수를 내보내야 합니다.
GenerateCopyFilePaths
서버의 스풀러와 클라이언트의 스풀러에서 호출되는 이 함수를 사용하여 디렉터리 레지스트리 값으로 지정된 디렉터리 경로를 수정할 수 있습니다. 원본 경로(서버) 또는 대상 경로(클라이언트) 또는 둘 다 수정할 수 있습니다.
SpoolerCopyFileEvent
서버의 스풀러와 클라이언트의 스풀러 모두에서 호출되는 이 함수는 특정 연결 관련 프린터 이벤트의 발생을 나타내는 이벤트 코드를 받습니다.
점 및 인쇄 DLL은 이러한 함수만 내보낼 필요가 없습니다. 예를 들어 Microsoft의 ICM 구성 요소에서 사용하는 Mscms.dll ICM API 함수 집합도 내보냅니다.
GenerateCopyFilePaths 및 SpoolerCopyFileEvent를 내보내는 Point 및 Print DLL 외에 또는 대신 다른 DLL을 지정할 수 있습니다. 이렇게 하려면 모듈 레지스트리 키 대신 파일 레지스트리 키에 DLL 파일 이름을 할당합니다. ( Queue-Specific 파일 설치를 참조하세요.)
설치 애플리케이션이 SetPrinterDataEx를 호출하여 서버 레지스트리에 DLL 이름을 배치한 후 SetPrinterDataEx 에 대한 모든 후속 호출은 제공된 이벤트 코드가 COPYFILE_EVENT_SET_PRINTER_DATAEX DLL의 SpoolerCopyFileEvent 함수를 호출합니다.
파일 레지스트리 키 아래에 나열된 파일(Queue-Specific 파일 설치 참조)과 달리 클라이언트가 프린터에 연결할 때 지점 및 인쇄 DLL이 인쇄 서버에서 클라이언트로 복사되지 않습니다. 대신 인쇄 서버에 연결할 때 DLL은 이미 클라이언트에 상주하는 것으로 간주됩니다. 따라서 DLL은 점 및 인쇄 기능과 관련이 없는 추가 용도로 사용할 수 있습니다.
클라이언트에 Point 및 Print DLL을 설치하는 한 가지 방법은 프린터 INF 파일 의 이름을 종속 파일로 지정하여 드라이버 관련 파일을 다운로드하는 동안 파일을 클라이언트의 드라이버 디렉터리에 복사할 수 있도록 하는 것입니다.