Home | Info | Community | Development | myReactOS | Contact Us
Definition at line 188 of file printdrv.c.
Referenced by IntCreateDICW().
{ HMODULE hModWinSpoolDrv; if ( !ghSpooler ) { RtlEnterCriticalSection(&semLocal); hModWinSpoolDrv = LoadLibraryW(L"WINSPOOL.DRV"); if (hModWinSpoolDrv) { fpAbortPrinter = (PVOID)GetProcAddress(hModWinSpoolDrv, "AbortPrinter"); fpClosePrinter = (PVOID)GetProcAddress(hModWinSpoolDrv, "ClosePrinter"); fpCloseSpoolFileHandle = (PVOID)GetProcAddress(hModWinSpoolDrv, "CloseSpoolFileHandle"); fpCommitSpoolData = (PVOID)GetProcAddress(hModWinSpoolDrv, "CommitSpoolData"); // fpConnectToLd64In32Server = (PVOID)GetProcAddress(hModWinSpoolDrv, (LPCSTR)224); fpDocumentEvent = (PVOID)GetProcAddress(hModWinSpoolDrv,"DocumentEvent"); fpDocumentPropertiesW = (PVOID)GetProcAddress(hModWinSpoolDrv, "DocumentPropertiesW"); fpEndDocPrinter = (PVOID)GetProcAddress(hModWinSpoolDrv, "EndDocPrinter"); fpEndPagePrinter = (PVOID)GetProcAddress(hModWinSpoolDrv, "EndPagePrinter"); fpGetPrinterW = (PVOID)GetProcAddress( hModWinSpoolDrv,"GetPrinterW"); fpGetPrinterDriverW = (PVOID)GetProcAddress(hModWinSpoolDrv,"GetPrinterDriverW"); fpGetSpoolFileHandle = (PVOID)GetProcAddress(hModWinSpoolDrv, "GetSpoolFileHandle"); fpIsValidDevmodeW = (PVOID)GetProcAddress(hModWinSpoolDrv, "IsValidDevmodeW"); fpOpenPrinterW = (PVOID)GetProcAddress(hModWinSpoolDrv, "OpenPrinterW"); fpQueryColorProfile = (PVOID)GetProcAddress(hModWinSpoolDrv,"QueryColorProfile"); fpQueryRemoteFonts = (PVOID)GetProcAddress(hModWinSpoolDrv, "QueryRemoteFonts"); fpQuerySpoolMode = (PVOID)GetProcAddress(hModWinSpoolDrv, "QuerySpoolMode"); fpReadPrinter = (PVOID)GetProcAddress(hModWinSpoolDrv, "ReadPrinter"); fpResetPrinterW = (PVOID)GetProcAddress(hModWinSpoolDrv, "ResetPrinterW"); fpSeekPrinter = (PVOID)GetProcAddress(hModWinSpoolDrv, "SeekPrinter"); fpSplDriverUnloadComplete = (PVOID)GetProcAddress(hModWinSpoolDrv, "SplDriverUnloadComplete"); fpSplReadPrinter = (PVOID)GetProcAddress(hModWinSpoolDrv, (LPCSTR)205); fpStartDocDlgW = (PVOID)GetProcAddress(hModWinSpoolDrv, "StartDocDlgW"); fpStartDocPrinterW = (PVOID)GetProcAddress(hModWinSpoolDrv, "StartDocPrinterW"); fpStartPagePrinter = (PVOID)GetProcAddress(hModWinSpoolDrv, "StartPagePrinter"); if ( !fpAbortPrinter || !fpClosePrinter || !fpCloseSpoolFileHandle || !fpCommitSpoolData || !fpDocumentEvent || !fpDocumentPropertiesW || !fpEndDocPrinter || !fpEndPagePrinter || !fpGetPrinterW || !fpGetPrinterDriverW || !fpGetSpoolFileHandle || !fpIsValidDevmodeW || !fpOpenPrinterW || !fpQueryColorProfile || !fpQueryRemoteFonts || !fpQuerySpoolMode || !fpReadPrinter || !fpResetPrinterW || !fpSeekPrinter || !fpSplDriverUnloadComplete || !fpSplReadPrinter || !fpStartDocDlgW || !fpStartDocPrinterW || !fpStartPagePrinter ) { FreeLibrary(hModWinSpoolDrv); hModWinSpoolDrv = NULL; } ghSpooler = hModWinSpoolDrv; } RtlLeaveCriticalSection(&semLocal); } else return TRUE; if ( !ghSpooler ) SetLastError(ERROR_NOT_ENOUGH_MEMORY); return (ghSpooler != NULL); }