프린터 디렉터리 서비스에 대한 인쇄 스풀러 지원
Directory Services에 대한 인쇄 스풀러 지원은 다음으로 구성됩니다.
인쇄 큐 게시
세 개의 레지스트리 키 유지 관리
스풀러 유지 관리 레지스트리 키에 대한 액세스 허용
인쇄 큐의 게시 상태 반환
인쇄 큐 게시
SetPrinter 함수를 사용하면 호출자가 인쇄 큐 개체를 게시, 게시 취소 또는 업데이트할 수 있습니다. 이러한 목적을 위해 SetPrinter 함수는PRINTER_INFO_7 입력 구조로 호출되어야 합니다.
인쇄 큐 개체는 사용자가 연결된 인쇄 서버를 설명하는 컴퓨터 개체와 연결된 경우에만 게시할 수 있습니다. 인쇄 큐를 게시하는 사용자의 기능은 사용자의 클라이언트 보안 컨텍스트에 포함된 액세스 권한에 따라 결정됩니다. 인쇄 큐에 프린터 관리 권한이 있는 경우 인쇄 큐를 게시할 수 있습니다.
세 개의 레지스트리 키 유지 관리
세 개의 레지스트리 키는 인쇄 큐 개체에 게시된 모든 정보의 복사본을 포함합니다. winspool.h에 정의된 다음 식별자를 사용하여 세 개의 키를 참조합니다.
키 | 정의 |
---|---|
SPLDS_DRIVER_KEY | 스풀러 또는 드라이버에서 제공할 수 있는 드라이버 관련 정보를 저장합니다. |
SPLDS_SPOOLER_KEY | 스풀러에서 제공하는 스풀러 관련 정보를 저장합니다. |
SPLDS_USER_KEY | 애플리케이션에서 제공하는 사용자별 정보를 저장합니다. |
스풀러는 SPLDS_DRIVER_KEY 사용하여 DeviceCapabilities 함수를 호출하여 얻을 수 있는 드라이버 기능을 저장합니다. 드라이버는 프린터 디렉터리 서비스에 대한 프린터 드라이버 지원에 설명된 대로 스풀러가 가져올 수 없는 드라이버 기능을 저장해야 합니다. 이러한 키 아래에 저장된 값은 winspool.h에 정의된 SPLDS_ 접두사 상수로 식별되어야 합니다.
스풀러는 인쇄 큐 개체가 마지막으로 업데이트된 이후 이러한 키에서 수정된 값을 추적합니다. 스풀러는 인쇄 큐 개체를 게시하거나 업데이트할 때마다 수정된 모든 값을 개체에 복사합니다.
스풀러 유지 관리 레지스트리 키에 대한 액세스 허용
스풀러를 사용하면 프린터 드라이버가 SetPrinterDataEx, GetPrinterDataEx 및 EnumPrinterDataEx 함수를 호출하여 세 개의 스풀러 유지 관리 레지스트리 키에 액세스할 수 있습니다. SetPrinterDataEx 함수는 키 아래에 값을 설정하고 GetPrinterDataEx 및 EnumPrinterDataEx는 현재 값을 반환합니다. 드라이버는 SPLDS_SPOOLER_KEY 키 아래에 값을 설정하면 안 됩니다. 이러한 함수의 호출자는 전체 레지스트리 경로를 지정하지 않습니다. 함수는 지정된 인쇄 큐의 레지스트리 항목에 대한 경로를 자동으로 결정합니다.
인쇄 큐의 게시 상태 반환
GetPrinter 함수를 사용하면 호출자가 인쇄 큐가 현재 게시되어 있는지 확인할 수 있습니다. 이를 위해 GetPrinter 함수는 PRINTER_INFO_7 입력 구조로 호출되어야 합니다. 함수는 인쇄 큐의 게시 상태(게시 또는 게시되지 않음) 및 개체 식별자를 반환합니다.