Функция GetDefaultPrinter

Функция GetDefaultPrinter извлекает имя принтера по умолчанию для текущего пользователя на локальном компьютере.

Синтаксис

BOOL GetDefaultPrinter(
  _In_    LPTSTR  pszBuffer,
  _Inout_ LPDWORD pcchBuffer
);

Параметры

pszBuffer [in]

Указатель на буфер, который получает символьную строку, завершающуюся null, содержащую имя принтера по умолчанию. Если этот параметр имеет значение NULL, функция завершается ошибкой, и переменная, на которую указывает pcchBuffer , возвращает требуемый размер буфера в символах.

pcchBuffer [in, out]

На входе указывает размер буфера pszBuffer в символах. В выходных данных получает размер строки имени принтера в символах, включая завершающий символ NULL.

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение является ненулевым, а переменная, на которую указывает pcchBuffer , содержит количество символов, скопированных в буфер pszBuffer , включая завершающий символ NULL.

Если функция выполняется неудачно, возвращается нулевое значение.

Значение Значение
ERROR_INSUFFICIENT_BUFFER Буфер pszBuffer слишком мал. Переменная, на которую указывает pcchBuffer , содержит требуемый размер буфера в символах.
ERROR_FILE_NOT_FOUND Принтер по умолчанию отсутствует.

Комментарии

Примечание

Это блокирующая или синхронная функция, возвращаемая не сразу. Скорость возврата этой функции зависит от факторов времени выполнения, таких как состояние сети, конфигурация сервера печати и факторы реализации драйвера принтера, которые трудно предсказать при написании приложения. Вызов этой функции из потока, который управляет взаимодействием с пользовательским интерфейсом, может привести к тому, что приложение не отвечает.

Требования

Требование Значение
Минимальная версия клиента
Windows 2000 Professional [только классические приложения]
Минимальная версия сервера
Windows 2000 Server [только классические приложения]
Заголовок
Winspool.h (включая Windows.h)
Библиотека
Winspool.lib
DLL
Winspool.drv
Имя в кодировке Юникод и ANSI
GetDefaultPrinterW (Юникод) и GetDefaultPrinterA (ANSI)

См. также раздел

Вывод на печать

Функции API очереди печати принтера

SetDefaultPrinter