Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/*++
Copyright (c) 1999 Microsoft Corporation
Module Name:
printers.c
Abstract:
This file implements printer functions for fax.
Author:
Steven Kehrli (steveke) 18-Aug-1999
Environment:
User Mode
--*/
#include <windows.h>
#include <winspool.h>
#include <tchar.h>
#include "faxutil.h"
PVOID MyEnumPrinters( LPTSTR pServerName, DWORD level, PDWORD pcPrinters, DWORD dwFlags )
/*++
Routine Description:
Wrapper function for spooler API EnumPrinters
Arguments:
pServerName - Specifies the name of the print server level - Level of PRINTER_INFO_x structure pcPrinters - Returns the number of printers enumerated dwFlags - Flag bits passed to EnumPrinters
Return Value:
Pointer to an array of PRINTER_INFO_x structures NULL if there is an error
--*/
{ PBYTE pPrinterInfo = NULL; DWORD cb;
if (! EnumPrinters(dwFlags, pServerName, level, NULL, 0, &cb, pcPrinters) && GetLastError() == ERROR_INSUFFICIENT_BUFFER && (pPrinterInfo = MemAlloc(cb)) && EnumPrinters(dwFlags, pServerName, level, pPrinterInfo, cb, &cb, pcPrinters)) { return pPrinterInfo; }
DebugPrint(( TEXT("EnumPrinters failed: %d\n"), GetLastError())); MemFree(pPrinterInfo); return NULL; }
|