77 ERR(
"DllAllocSplMem failed!\n");
89 ERR(
"A Print Provider returned ROUTER_STOP_ROUTING for Printer \"%S\"!\n", pPrinterName);
148 ERR(
"DllAllocSplMem failed!\n");
160 ERR(
"A Print Provider returned ROUTER_STOP_ROUTING for Printer \"%S\"!\n", pPrinterName);
181 FIXME(
"ClosePrinter %p\n",hPrinter);
194 FIXME(
"ClosePrinter 2\n");
197 FIXME(
"ClosePrinter 3\n");
262 if (cbBuf && !pPrinterEnum)
269 cbCallBuffer = cbBuf;
270 pCallBuffer = pPrinterEnum;
289 *pcReturned += dwReturned;
292 if (cbNeeded < cbCallBuffer)
293 cbCallBuffer -= cbNeeded;
299 pCallBuffer += cbNeeded;
359 bReturnValue = pPrintProvider->
PrintProvider.fpOpenPrinter(pPrinterName, &hPrinter, pDefault);
368 ERR(
"DllAllocSplMem failed!\n");
374 *phPrinter = (
HANDLE)pHandle;
381 ERR(
"A Print Provider returned ROUTER_STOP_ROUTING for Printer \"%S\"!\n", pPrinterName);
491 FIXME(
"XcvDataW( %p, %S,,,)\n",
hXcv, pszDataName);
BOOL WINAPI XcvDataW(HANDLE hXcv, PCWSTR pszDataName, PBYTE pInputData, DWORD cbInputData, PBYTE pOutputData, DWORD cbOutputData, PDWORD pcbOutputNeeded, PDWORD pdwStatus)
DWORD WINAPI PrinterMessageBoxW(HANDLE hPrinter, DWORD Error, HWND hWnd, LPWSTR pText, LPWSTR pCaption, DWORD dwType)
BOOL WINAPI DeletePrinter(HANDLE hPrinter)
DWORD WINAPI StartDocPrinterW(HANDLE hPrinter, DWORD Level, PBYTE pDocInfo)
BOOL WINAPI GetPrinterW(HANDLE hPrinter, DWORD Level, PBYTE pPrinter, DWORD cbBuf, PDWORD pcbNeeded)
BOOL WINAPI SetPrinterW(HANDLE hPrinter, DWORD Level, PBYTE pPrinter, DWORD Command)
BOOL WINAPI EnumPrintersW(DWORD Flags, PWSTR Name, DWORD Level, PBYTE pPrinterEnum, DWORD cbBuf, PDWORD pcbNeeded, PDWORD pcReturned)
HANDLE WINAPI AddPrinterExW(PWSTR pName, DWORD Level, PBYTE pPrinter, PBYTE pClientInfo, DWORD ClientInfoLevel)
BOOL WINAPI EndDocPrinter(HANDLE hPrinter)
BOOL WINAPI WritePrinter(HANDLE hPrinter, PVOID pBuf, DWORD cbBuf, PDWORD pcWritten)
BOOL WINAPI ClosePrinter(HANDLE hPrinter)
BOOL WINAPI AbortPrinter(HANDLE hPrinter)
BOOL WINAPI ReadPrinter(HANDLE hPrinter, PVOID pBuf, DWORD cbBuf, PDWORD pNoBytesRead)
BOOL WINAPI OpenPrinterW(PWSTR pPrinterName, PHANDLE phPrinter, PPRINTER_DEFAULTSW pDefault)
HANDLE WINAPI AddPrinterW(PWSTR pName, DWORD Level, PBYTE pPrinter)
BOOL WINAPI EndPagePrinter(HANDLE hPrinter)
BOOL WINAPI SeekPrinter(HANDLE hPrinter, LARGE_INTEGER liDistanceToMove, PLARGE_INTEGER pliNewPointer, DWORD dwMoveMethod, BOOL bWrite)
BOOL WINAPI StartPagePrinter(HANDLE hPrinter)
#define ERROR_NOT_ENOUGH_MEMORY
#define ERROR_INVALID_PARAMETER
#define ERROR_NOT_SUPPORTED
#define ERROR_INVALID_NAME
static const WCHAR Cleanup[]
#define ROUTER_STOP_ROUTING
base of all file and directory entries
struct _LIST_ENTRY * Flink
PSPOOLSS_PRINT_PROVIDER pPrintProvider
PRINTPROVIDOR PrintProvider
#define CONTAINING_RECORD(address, type, field)
LIST_ENTRY PrintProviderList
BOOL WINAPI DllFreeSplMem(PVOID pMem)
PVOID WINAPI DllAllocSplMem(DWORD dwBytes)
struct _SPOOLSS_PRINTER_HANDLE * PSPOOLSS_PRINTER_HANDLE
DWORD WINAPI GetLastError(void)
_In_ DWORD _Out_ PDWORD pcbNeeded
#define ERROR_INVALID_LEVEL
#define ERROR_INVALID_USER_BUFFER
#define ERROR_INVALID_PRINTER_NAME
struct _PRINTER_INFO_2W * PPRINTER_INFO_2W
_IRQL_requires_same_ typedef _In_ ULONG _In_ UCHAR Level
_Must_inspect_result_ _In_ ULONG Flags