다음을 통해 공유


AddPrinterDriver 함수

AddPrinterDriver 함수는 로컬 또는 원격 프린터 드라이버를 설치하고 구성, 데이터 및 드라이버 파일을 연결합니다.

프린터 드라이버를 보다 유연하게 설치하거나 업그레이드하려면 AddPrinterDriverEx 함수를 사용하면 엄격한 업그레이드, 엄격한 다운그레이드, 최신 파일만 복사 및 모든 파일(파일 타임스탬프에 관계 없이)을 복사할 수 있기 때문입니다.

참고

드라이버 패키지 없이 프린터 드라이버를 설치하는 것은 더 이상 권장되지 않습니다. 대신 InstallPrinterDriverFromPackage 를 사용합니다.

구문

BOOL AddPrinterDriver(
  _In_ LPTSTR pName,
  _In_ DWORD  Level,
  _In_ LPBYTE pDriverInfo
);

매개 변수

pName [in]

드라이버를 설치해야 하는 서버의 이름을 지정하는 null로 끝나는 문자열에 대한 포인터입니다.

pNameNULL이면 드라이버가 로컬로 설치됩니다.

수준 [in]

pDriverInfo가 가리키는 구조체의 버전입니다.

이 값은 2, 3, 4, 6 또는 8일 수 있습니다.

pDriverInfo [in]

프린터 드라이버 정보를 포함하는 구조체에 대한 포인터입니다. 이는 Level의 값에 따라 달라집니다.

프린터 드라이브 구조
2 DRIVER_INFO_2
3 DRIVER_INFO_3
4 DRIVER_INFO_4
6 DRIVER_INFO_6
8 DRIVER_INFO_8

pDriverInfo가 가리키는 구조체의 pEnvironment 멤버가 NULL인 경우 호출자/클라이언트의 현재 환경(대상/서버가 아님)이 사용됩니다.

반환 값

함수가 성공하면 반환 값은 0이 아닌 값입니다.

함수가 실패하면 반환 값은 0입니다.

설명

참고

이는 차단 또는 동기 함수이며 즉시 반환되지 않을 수 있습니다. 이 함수가 반환되는 빈도는 애플리케이션을 작성할 때 예측하기 어려운 네트워크 상태, 인쇄 서버 구성 및 프린터 드라이버 구현 요소와 같은 런타임 요인에 따라 달라집니다. 사용자 인터페이스와의 상호 작용을 관리하는 스레드에서 이 함수를 호출하면 애플리케이션이 응답하지 않는 것처럼 보일 수 있습니다.

호출자에게 SeLoadDriverPrivilege가 있어야 합니다.

애플리케이션이 AddPrinterDriver 함수를 호출하기 전에 드라이버에 필요한 모든 파일을 시스템의 프린터 드라이버 디렉터리에 복사해야 합니다. 애플리케이션은 GetPrinterDriverDirectory 함수를 호출하여 이 디렉터리의 이름을 검색할 수 있습니다.

애플리케이션은 EnumPrinterDrivers 함수를 호출하여 현재 설치된 프린터 드라이버를 확인할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버
Windows 2000 Server[데스크톱 앱만]
헤더
Winspool.h(Windows.h 포함)
라이브러리
Winspool.lib
DLL
Winspool.drv
유니코드 및 ANSI 이름
AddPrinterDriverW (유니코드) 및 AddPrinterDriverA (ANSI)

추가 정보

인쇄

인쇄 스풀러 API 함수

AddPrinterDriverEx

DRIVER_INFO_2

DRIVER_INFO_3

DRIVER_INFO_4

DRIVER_INFO_6

EnumPrinterDrivers

GetPrinterDriverDirectory