Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- unit winsp;
- interface
- uses
- Windows ;
- const
- szAbortPrinter = 'AbortPrinter';
- szAddFormA = 'AddFormA';
- szAddFormW = 'AddFormW';
- szAddJobA = 'AddJobA';
- szAddJobW = 'AddJobW';
- szAddMonitorA = 'AddMonitorA';
- szAddMonitorW = 'AddMonitorW';
- szAddPortA = 'AddPortA';
- szAddPortW = 'AddPortW';
- szAddPrinterA = 'AddPrinterA';
- szAddPrinterW = 'AddPrinterW';
- szAddPrinterConnectionA = 'AddPrinterConnectionA';
- szAddPrinterConnectionW = 'AddPrinterConnectionW';
- szAddPrinterDriverA = 'AddPrinterDriverA';
- szAddPrinterDriverW = 'AddPrinterDriverW';
- szAddPrintProcessorA = 'AddPrintProcessorA';
- szAddPrintProcessorW = 'AddPrintProcessorW';
- szAddPrintProvidorA = 'AddPrintProvidorA';
- szAddPrintProvidorW = 'AddPrintProvidorW';
- szAdvancedDocumentPropertiesA = 'AdvancedDocumentPropertiesA';
- szAdvancedDocumentPropertiesW = 'AdvancedDocumentPropertiesW';
- szClosePrinter = 'ClosePrinter';
- szConfigurePortA = 'ConfigurePortA';
- szConfigurePortW = 'ConfigurePortW';
- szConnectToPrinterDlg = 'ConnectToPrinterDlg';
- szDeleteFormA = 'DeleteFormA';
- szDeleteFormW = 'DeleteFormW';
- szDeleteMonitorA = 'DeleteMonitorA';
- szDeleteMonitorW = 'DeleteMonitorW';
- szDeletePortA = 'DeletePortA';
- szDeletePortW = 'DeletePortW';
- szDeletePrinter = 'DeletePrinter';
- szDeletePrinterConnectionA = 'DeletePrinterConnectionA';
- szDeletePrinterConnectionW = 'DeletePrinterConnectionW';
- szDeletePrinterDataA = 'DeletePrinterDataA';
- szDeletePrinterDataW = 'DeletePrinterDataW';
- szDeletePrinterDriverA = 'DeletePrinterDriverA';
- szDeletePrinterDriverW = 'DeletePrinterDriverW';
- szDeletePrintProcessorA = 'DeletePrintProcessorA';
- szDeletePrintProcessorW = 'DeletePrintProcessorW';
- szDeletePrintProvidorA = 'DeletePrintProvidorA';
- szDeletePrintProvidorW = 'DeletePrintProvidorW';
- szDeviceCapabilitiesA = 'DeviceCapabilitiesA';
- szDeviceCapabilitiesW = 'DeviceCapabilitiesW';
- szDocumentPropertiesA = 'DocumentPropertiesA';
- szDocumentPropertiesW = 'DocumentPropertiesW';
- szEndDocPrinter = 'EndDocPrinter';
- szEndPagePrinter = 'EndPagePrinter';
- szEnumFormsA = 'EnumFormsA';
- szEnumFormsW = 'EnumFormsW';
- szEnumJobsA = 'EnumJobsA';
- szEnumJobsW = 'EnumJobsW';
- szEnumMonitorsA = 'EnumMonitorsA';
- szEnumMonitorsW = 'EnumMonitorsW';
- szEnumPortsA = 'EnumPortsA';
- szEnumPortsW = 'EnumPortsW';
- szEnumPrinterDataA = 'EnumPrinterDataA';
- szEnumPrinterDataW = 'EnumPrinterDataW';
- szEnumPrinterDriversA = 'EnumPrinterDriversA';
- szEnumPrinterDriversW = 'EnumPrinterDriversW';
- szEnumPrintersA = 'EnumPrintersA';
- szEnumPrintersW = 'EnumPrintersW';
- szEnumPrintProcessorDatatypesA = 'EnumPrintProcessorDatatypesA';
- szEnumPrintProcessorDatatypesW = 'EnumPrintProcessorDatatypesW';
- szEnumPrintProcessorsA = 'EnumPrintProcessorsA';
- szEnumPrintProcessorsW = 'EnumPrintProcessorsW';
- szFindClosePrinterChangeNotification = 'FindClosePrinterChangeNotification';
- szFindFirstPrinterChangeNotification = 'FindFirstPrinterChangeNotification';
- szFindNextPrinterChangeNotification = 'FindNextPrinterChangeNotification';
- szFreePrinterNotifyInfo = 'FreePrinterNotifyInfo';
- szGetFormA = 'GetFormA';
- szGetFormW = 'GetFormW';
- szGetJobA = 'GetJobA';
- szGetJobW = 'GetJobW';
- szGetPrinterA = 'GetPrinterA';
- szGetPrinterW = 'GetPrinterW';
- szGetPrinterDataA = 'GetPrinterDataA';
- szGetPrinterDataW = 'GetPrinterDataW';
- szGetPrinterDriverA = 'GetPrinterDriverA';
- szGetPrinterDriverW = 'GetPrinterDriverW';
- szGetPrinterDriverDirectoryA = 'GetPrinterDriverDirectoryA';
- szGetPrinterDriverDirectoryW = 'GetPrinterDriverDirectoryW';
- szGetPrintProcessorDirectoryA = 'GetPrintProcessorDirectoryA';
- szGetPrintProcessorDirectoryW = 'GetPrintProcessorDirectoryW';
- szOpenPrinterA = 'OpenPrinterA';
- szOpenPrinterW = 'OpenPrinterW';
- szPrinterMessageBoxA = 'PrinterMessageBoxA';
- szPrinterMessageBoxW = 'PrinterMessageBoxW';
- szPrinterProperties = 'PrinterProperties';
- szReadPrinter = 'ReadPrinter';
- szResetPrinterA = 'ResetPrinterA';
- szResetPrinterW = 'ResetPrinterW';
- szScheduleJob = 'ScheduleJob';
- szSetFormA = 'SetFormA';
- szSetFormW = 'SetFormW';
- szSetJobA = 'SetJobA';
- szSetJobW = 'SetJobW';
- szSetPortA = 'SetPortA';
- szSetPortW = 'SetPortW';
- szSetPrinterA = 'SetPrinterA';
- szSetPrinterW = 'SetPrinterW';
- szSetPrinterDataA = 'SetPrinterDataA';
- szSetPrinterDataW = 'SetPrinterDataW';
- szStartDocPrinterA = 'StartDocPrinterA';
- szStartDocPrinterW = 'StartDocPrinterW';
- szStartPagePrinter = 'StartPagePrinter';
- szWaitForPrinterChange = 'WaitForPrinterChange';
- szWritePrinter = 'WritePrinter';
- var
- PtrAbortPrinter,
- PtrAddFormA,
- PtrAddFormW,
- PtrAddJobA,
- PtrAddJobW,
- PtrAddMonitorA,
- PtrAddMonitorW,
- PtrAddPortA,
- PtrAddPortW,
- PtrAddPrinterA,
- PtrAddPrinterW,
- PtrAddPrinterConnectionA,
- PtrAddPrinterConnectionW,
- PtrAddPrinterDriverA,
- PtrAddPrinterDriverW,
- PtrAddPrintProcessorA,
- PtrAddPrintProcessorW,
- PtrAddPrintProvidorA,
- PtrAddPrintProvidorW,
- PtrAdvancedDocumentPropertiesA,
- PtrAdvancedDocumentPropertiesW,
- PtrClosePrinter,
- PtrConfigurePortA,
- PtrConfigurePortW,
- PtrConnectToPrinterDlg,
- PtrDeleteFormA,
- PtrDeleteFormW,
- PtrDeleteMonitorA,
- PtrDeleteMonitorW,
- PtrDeletePortA,
- PtrDeletePortW,
- PtrDeletePrinter,
- PtrDeletePrinterConnectionA,
- PtrDeletePrinterConnectionW,
- PtrDeletePrinterDataA,
- PtrDeletePrinterDataW,
- PtrDeletePrinterDriverA,
- PtrDeletePrinterDriverW,
- PtrDeletePrintProcessorA,
- PtrDeletePrintProcessorW,
- PtrDeletePrintProvidorA,
- PtrDeletePrintProvidorW,
- PtrDeviceCapabilitiesA,
- PtrDeviceCapabilitiesW,
- PtrDocumentPropertiesA,
- PtrDocumentPropertiesW,
- PtrEndDocPrinter,
- PtrEndPagePrinter,
- PtrEnumFormsA,
- PtrEnumFormsW,
- PtrEnumJobsA,
- PtrEnumJobsW,
- PtrEnumMonitorsA,
- PtrEnumMonitorsW,
- PtrEnumPortsA,
- PtrEnumPortsW,
- PtrEnumPrinterDataA,
- PtrEnumPrinterDataW,
- PtrEnumPrinterDriversA,
- PtrEnumPrinterDriversW,
- PtrEnumPrintersA,
- PtrEnumPrintersW,
- PtrEnumPrintProcessorDatatypesA,
- PtrEnumPrintProcessorDatatypesW,
- PtrEnumPrintProcessorsA,
- PtrEnumPrintProcessorsW,
- PtrFindClosePrinterChangeNotification,
- PtrFindFirstPrinterChangeNotification,
- PtrFindNextPrinterChangeNotification,
- PtrFreePrinterNotifyInfo,
- PtrGetFormA,
- PtrGetFormW,
- PtrGetJobA,
- PtrGetJobW,
- PtrGetPrinterA,
- PtrGetPrinterW,
- PtrGetPrinterDataA,
- PtrGetPrinterDataW,
- PtrGetPrinterDriverA,
- PtrGetPrinterDriverW,
- PtrGetPrinterDriverDirectoryA,
- PtrGetPrinterDriverDirectoryW,
- PtrGetPrintProcessorDirectoryA,
- PtrGetPrintProcessorDirectoryW,
- PtrOpenPrinterA,
- PtrOpenPrinterW,
- PtrPrinterMessageBoxA,
- PtrPrinterMessageBoxW,
- PtrPrinterProperties,
- PtrReadPrinter,
- PtrResetPrinterA,
- PtrResetPrinterW,
- PtrScheduleJob,
- PtrSetFormA,
- PtrSetFormW,
- PtrSetJobA,
- PtrSetJobW,
- PtrSetPortA,
- PtrSetPortW,
- PtrSetPrinterA,
- PtrSetPrinterW,
- PtrSetPrinterDataA,
- PtrSetPrinterDataW,
- PtrStartDocPrinterA,
- PtrStartDocPrinterW,
- PtrStartPagePrinter,
- PtrWaitForPrinterChange,
- PtrWritePrinter : Pointer;
- Procedure AbortPrinter ; stdcall;
- Procedure AddFormA ; stdcall;
- Procedure AddFormW ; stdcall;
- Procedure AddJobA ; stdcall;
- Procedure AddJobW ; stdcall;
- Procedure AddMonitorA ; stdcall;
- Procedure AddMonitorW ; stdcall;
- Procedure AddPortA ; stdcall;
- Procedure AddPortW ; stdcall;
- Procedure AddPrinterA ; stdcall;
- Procedure AddPrinterW ; stdcall;
- Procedure AddPrinterConnectionA ; stdcall;
- Procedure AddPrinterConnectionW ; stdcall;
- Procedure AddPrinterDriverA ; stdcall;
- Procedure AddPrinterDriverW ; stdcall;
- Procedure AddPrintProcessorA ; stdcall;
- Procedure AddPrintProcessorW ; stdcall;
- Procedure AddPrintProvidorA ; stdcall;
- Procedure AddPrintProvidorW ; stdcall;
- Procedure AdvancedDocumentPropertiesA ; stdcall;
- Procedure AdvancedDocumentPropertiesW ; stdcall;
- Procedure ClosePrinter ; stdcall;
- Procedure ConfigurePortA ; stdcall;
- Procedure ConfigurePortW ; stdcall;
- Procedure ConnectToPrinterDlg ; stdcall;
- Procedure DeleteFormA ; stdcall;
- Procedure DeleteFormW ; stdcall;
- Procedure DeleteMonitorA ; stdcall;
- Procedure DeleteMonitorW ; stdcall;
- Procedure DeletePortA ; stdcall;
- Procedure DeletePortW ; stdcall;
- Procedure DeletePrinter ; stdcall;
- Procedure DeletePrinterConnectionA ; stdcall;
- Procedure DeletePrinterConnectionW ; stdcall;
- Procedure DeletePrinterDataA ; stdcall;
- Procedure DeletePrinterDataW ; stdcall;
- Procedure DeletePrinterDriverA ; stdcall;
- Procedure DeletePrinterDriverW ; stdcall;
- Procedure DeletePrintProcessorA ; stdcall;
- Procedure DeletePrintProcessorW ; stdcall;
- Procedure DeletePrintProvidorA ; stdcall;
- Procedure DeletePrintProvidorW ; stdcall;
- Procedure DeviceCapabilitiesA ; stdcall;
- Procedure DeviceCapabilitiesW ; stdcall;
- Procedure DocumentPropertiesA ; stdcall;
- Procedure DocumentPropertiesW ; stdcall;
- Procedure EndDocPrinter ; stdcall;
- Procedure EndPagePrinter ; stdcall;
- Procedure EnumFormsA ; stdcall;
- Procedure EnumFormsW ; stdcall;
- Procedure EnumJobsA ; stdcall;
- Procedure EnumJobsW ; stdcall;
- Procedure EnumMonitorsA ; stdcall;
- Procedure EnumMonitorsW ; stdcall;
- Procedure EnumPortsA ; stdcall;
- Procedure EnumPortsW ; stdcall;
- Procedure EnumPrinterDataA ; stdcall;
- Procedure EnumPrinterDataW ; stdcall;
- Procedure EnumPrinterDriversA ; stdcall;
- Procedure EnumPrinterDriversW ; stdcall;
- Procedure EnumPrintersA ; stdcall;
- Procedure EnumPrintersW ; stdcall;
- Procedure EnumPrintProcessorDatatypesA ; stdcall;
- Procedure EnumPrintProcessorDatatypesW ; stdcall;
- Procedure EnumPrintProcessorsA ; stdcall;
- Procedure EnumPrintProcessorsW ; stdcall;
- Procedure FindClosePrinterChangeNotification ; stdcall;
- Procedure FindFirstPrinterChangeNotification ; stdcall;
- Procedure FindNextPrinterChangeNotification ; stdcall;
- Procedure FreePrinterNotifyInfo ; stdcall;
- Procedure GetFormA ; stdcall;
- Procedure GetFormW ; stdcall;
- Procedure GetJobA ; stdcall;
- Procedure GetJobW ; stdcall;
- Procedure GetPrinterA ; stdcall;
- Procedure GetPrinterW ; stdcall;
- Procedure GetPrinterDataA ; stdcall;
- Procedure GetPrinterDataW ; stdcall;
- Procedure GetPrinterDriverA ; stdcall;
- Procedure GetPrinterDriverW ; stdcall;
- Procedure GetPrinterDriverDirectoryA ; stdcall;
- Procedure GetPrinterDriverDirectoryW ; stdcall;
- Procedure GetPrintProcessorDirectoryA ; stdcall;
- Procedure GetPrintProcessorDirectoryW ; stdcall;
- Procedure OpenPrinterA ; stdcall;
- Procedure OpenPrinterW ; stdcall;
- Procedure PrinterMessageBoxA ; stdcall;
- Procedure PrinterMessageBoxW ; stdcall;
- Procedure PrinterProperties ; stdcall;
- Procedure ReadPrinter ; stdcall;
- Procedure ResetPrinterA ; stdcall;
- Procedure ResetPrinterW ; stdcall;
- Procedure ScheduleJob ; stdcall;
- Procedure SetFormA ; stdcall;
- Procedure SetFormW ; stdcall;
- Procedure SetJobA ; stdcall;
- Procedure SetJobW ; stdcall;
- Procedure SetPortA ; stdcall;
- Procedure SetPortW ; stdcall;
- Procedure SetPrinterA ; stdcall;
- Procedure SetPrinterW ; stdcall;
- Procedure SetPrinterDataA ; stdcall;
- Procedure SetPrinterDataW ; stdcall;
- Procedure StartDocPrinterA ; stdcall;
- Procedure StartDocPrinterW ; stdcall;
- Procedure StartPagePrinter ; stdcall;
- Procedure WaitForPrinterChange ; stdcall;
- Procedure WritePrinter ; stdcall;
- exports
- AbortPrinter,
- AddFormA,
- AddFormW,
- AddJobA,
- AddJobW,
- AddMonitorA,
- AddMonitorW,
- AddPortA,
- AddPortW,
- AddPrinterA,
- AddPrinterW,
- AddPrinterConnectionA,
- AddPrinterConnectionW,
- AddPrinterDriverA,
- AddPrinterDriverW,
- AddPrintProcessorA,
- AddPrintProcessorW,
- AddPrintProvidorA,
- AddPrintProvidorW,
- AdvancedDocumentPropertiesA,
- AdvancedDocumentPropertiesW,
- ClosePrinter,
- ConfigurePortA,
- ConfigurePortW,
- ConnectToPrinterDlg,
- DeleteFormA,
- DeleteFormW,
- DeleteMonitorA,
- DeleteMonitorW,
- DeletePortA,
- DeletePortW,
- DeletePrinter,
- DeletePrinterConnectionA,
- DeletePrinterConnectionW,
- DeletePrinterDataA,
- DeletePrinterDataW,
- DeletePrinterDriverA,
- DeletePrinterDriverW,
- DeletePrintProcessorA,
- DeletePrintProcessorW,
- DeletePrintProvidorA,
- DeletePrintProvidorW,
- DeviceCapabilitiesA,
- DeviceCapabilitiesW,
- DocumentPropertiesA,
- DocumentPropertiesW,
- EndDocPrinter,
- EndPagePrinter,
- EnumFormsA,
- EnumFormsW,
- EnumJobsA,
- EnumJobsW,
- EnumMonitorsA,
- EnumMonitorsW,
- EnumPortsA,
- EnumPortsW,
- EnumPrinterDataA,
- EnumPrinterDataW,
- EnumPrinterDriversA,
- EnumPrinterDriversW,
- EnumPrintersA,
- EnumPrintersW,
- EnumPrintProcessorDatatypesA,
- EnumPrintProcessorDatatypesW,
- EnumPrintProcessorsA,
- EnumPrintProcessorsW,
- FindClosePrinterChangeNotification,
- FindFirstPrinterChangeNotification,
- FindNextPrinterChangeNotification,
- FreePrinterNotifyInfo,
- GetFormA,
- GetFormW,
- GetJobA,
- GetJobW,
- GetPrinterA,
- GetPrinterW,
- GetPrinterDataA,
- GetPrinterDataW,
- GetPrinterDriverA,
- GetPrinterDriverW,
- GetPrinterDriverDirectoryA,
- GetPrinterDriverDirectoryW,
- GetPrintProcessorDirectoryA,
- GetPrintProcessorDirectoryW,
- OpenPrinterA,
- OpenPrinterW,
- PrinterMessageBoxA,
- PrinterMessageBoxW,
- PrinterProperties,
- ReadPrinter,
- ResetPrinterA,
- ResetPrinterW,
- ScheduleJob,
- SetFormA,
- SetFormW,
- SetJobA,
- SetJobW,
- SetPortA,
- SetPortW,
- SetPrinterA,
- SetPrinterW,
- SetPrinterDataA,
- SetPrinterDataW,
- StartDocPrinterA,
- StartDocPrinterW,
- StartPagePrinter,
- WaitForPrinterChange,
- WritePrinter;
- function InitWinSpool(): Boolean;
- implementation
- Procedure AbortPrinter ; stdcall;
- asm jmp PtrAbortPrinter end;
- Procedure AddFormA ; stdcall;
- asm jmp PtrAddFormA end;
- Procedure AddFormW ; stdcall;
- asm jmp PtrAddFormW end;
- Procedure AddJobA ; stdcall;
- asm jmp PtrAddJobA end;
- Procedure AddJobW ; stdcall;
- asm jmp PtrAddJobW end;
- Procedure AddMonitorA ; stdcall;
- asm jmp PtrAddMonitorA end;
- Procedure AddMonitorW ; stdcall;
- asm jmp PtrAddMonitorW end;
- Procedure AddPortA ; stdcall;
- asm jmp PtrAddPortA end;
- Procedure AddPortW ; stdcall;
- asm jmp PtrAddPortW end;
- Procedure AddPrinterA ; stdcall;
- asm jmp PtrAddPrinterA end;
- Procedure AddPrinterW ; stdcall;
- asm jmp PtrAddPrinterW end;
- Procedure AddPrinterConnectionA ; stdcall;
- asm jmp PtrAddPrinterConnectionA end;
- Procedure AddPrinterConnectionW ; stdcall;
- asm jmp PtrAddPrinterConnectionW end;
- Procedure AddPrinterDriverA ; stdcall;
- asm jmp PtrAddPrinterDriverA end;
- Procedure AddPrinterDriverW ; stdcall;
- asm jmp PtrAddPrinterDriverW end;
- Procedure AddPrintProcessorA ; stdcall;
- asm jmp PtrAddPrintProcessorA end;
- Procedure AddPrintProcessorW ; stdcall;
- asm jmp PtrAddPrintProcessorW end;
- Procedure AddPrintProvidorA ; stdcall;
- asm jmp PtrAddPrintProvidorA end;
- Procedure AddPrintProvidorW ; stdcall;
- asm jmp PtrAddPrintProvidorW end;
- Procedure AdvancedDocumentPropertiesA ; stdcall;
- asm jmp PtrAdvancedDocumentPropertiesA end;
- Procedure AdvancedDocumentPropertiesW ; stdcall;
- asm jmp PtrAdvancedDocumentPropertiesW end;
- Procedure ClosePrinter ; stdcall;
- asm jmp PtrClosePrinter end;
- Procedure ConfigurePortA ; stdcall;
- asm jmp PtrConfigurePortA end;
- Procedure ConfigurePortW ; stdcall;
- asm jmp PtrConfigurePortW end;
- Procedure ConnectToPrinterDlg ; stdcall;
- asm jmp PtrConnectToPrinterDlg end;
- Procedure DeleteFormA ; stdcall;
- asm jmp PtrDeleteFormA end;
- Procedure DeleteFormW ; stdcall;
- asm jmp PtrDeleteFormW end;
- Procedure DeleteMonitorA ; stdcall;
- asm jmp PtrDeleteMonitorA end;
- Procedure DeleteMonitorW ; stdcall;
- asm jmp PtrDeleteMonitorW end;
- Procedure DeletePortA ; stdcall;
- asm jmp PtrDeletePortA end;
- Procedure DeletePortW ; stdcall;
- asm jmp PtrDeletePortW end;
- Procedure DeletePrinter ; stdcall;
- asm jmp PtrDeletePrinter end;
- Procedure DeletePrinterConnectionA ; stdcall;
- asm jmp PtrDeletePrinterConnectionA end;
- Procedure DeletePrinterConnectionW ; stdcall;
- asm jmp PtrDeletePrinterConnectionW end;
- Procedure DeletePrinterDataA ; stdcall;
- asm jmp PtrDeletePrinterDataA end;
- Procedure DeletePrinterDataW ; stdcall;
- asm jmp PtrDeletePrinterDataW end;
- Procedure DeletePrinterDriverA ; stdcall;
- asm jmp PtrDeletePrinterDriverA end;
- Procedure DeletePrinterDriverW ; stdcall;
- asm jmp PtrDeletePrinterDriverW end;
- Procedure DeletePrintProcessorA ; stdcall;
- asm jmp PtrDeletePrintProcessorA end;
- Procedure DeletePrintProcessorW ; stdcall;
- asm jmp PtrDeletePrintProcessorW end;
- Procedure DeletePrintProvidorA ; stdcall;
- asm jmp PtrDeletePrintProvidorA end;
- Procedure DeletePrintProvidorW ; stdcall;
- asm jmp PtrDeletePrintProvidorW end;
- Procedure DeviceCapabilitiesA ; stdcall;
- asm jmp PtrDeviceCapabilitiesA end;
- Procedure DeviceCapabilitiesW ; stdcall;
- asm jmp PtrDeviceCapabilitiesW end;
- Procedure DocumentPropertiesA ; stdcall;
- asm jmp PtrDocumentPropertiesA end;
- Procedure DocumentPropertiesW ; stdcall;
- asm jmp PtrDocumentPropertiesW end;
- Procedure EndDocPrinter ; stdcall;
- asm jmp PtrEndDocPrinter end;
- Procedure EndPagePrinter ; stdcall;
- asm jmp PtrEndPagePrinter end;
- Procedure EnumFormsA ; stdcall;
- asm jmp PtrEnumFormsA end;
- Procedure EnumFormsW ; stdcall;
- asm jmp PtrEnumFormsW end;
- Procedure EnumJobsA ; stdcall;
- asm jmp PtrEnumJobsA end;
- Procedure EnumJobsW ; stdcall;
- asm jmp PtrEnumJobsW end;
- Procedure EnumMonitorsA ; stdcall;
- asm jmp PtrEnumMonitorsA end;
- Procedure EnumMonitorsW ; stdcall;
- asm jmp PtrEnumMonitorsW end;
- Procedure EnumPortsA ; stdcall;
- asm jmp PtrEnumPortsA end;
- Procedure EnumPortsW ; stdcall;
- asm jmp PtrEnumPortsW end;
- Procedure EnumPrinterDataA ; stdcall;
- asm jmp PtrEnumPrinterDataA end;
- Procedure EnumPrinterDataW ; stdcall;
- asm jmp PtrEnumPrinterDataW end;
- Procedure EnumPrinterDriversA ; stdcall;
- asm jmp PtrEnumPrinterDriversA end;
- Procedure EnumPrinterDriversW ; stdcall;
- asm jmp PtrEnumPrinterDriversW end;
- Procedure EnumPrintersA ; stdcall;
- asm jmp PtrEnumPrintersA end;
- Procedure EnumPrintersW ; stdcall;
- asm jmp PtrEnumPrintersW end;
- Procedure EnumPrintProcessorDatatypesA ; stdcall;
- asm jmp PtrEnumPrintProcessorDatatypesA end;
- Procedure EnumPrintProcessorDatatypesW ; stdcall;
- asm jmp PtrEnumPrintProcessorDatatypesW end;
- Procedure EnumPrintProcessorsA ; stdcall;
- asm jmp PtrEnumPrintProcessorsA end;
- Procedure EnumPrintProcessorsW ; stdcall;
- asm jmp PtrEnumPrintProcessorsW end;
- Procedure FindClosePrinterChangeNotification ; stdcall;
- asm jmp PtrFindClosePrinterChangeNotification end;
- Procedure FindFirstPrinterChangeNotification ; stdcall;
- asm jmp PtrFindFirstPrinterChangeNotification end;
- Procedure FindNextPrinterChangeNotification ; stdcall;
- asm jmp PtrFindNextPrinterChangeNotification end;
- Procedure FreePrinterNotifyInfo ; stdcall;
- asm jmp PtrFreePrinterNotifyInfo end;
- Procedure GetFormA ; stdcall;
- asm jmp PtrGetFormA end;
- Procedure GetFormW ; stdcall;
- asm jmp PtrGetFormW end;
- Procedure GetJobA ; stdcall;
- asm jmp PtrGetJobA end;
- Procedure GetJobW ; stdcall;
- asm jmp PtrGetJobW end;
- Procedure GetPrinterA ; stdcall;
- asm jmp PtrGetPrinterA end;
- Procedure GetPrinterW ; stdcall;
- asm jmp PtrGetPrinterW end;
- Procedure GetPrinterDataA ; stdcall;
- asm jmp PtrGetPrinterDataA end;
- Procedure GetPrinterDataW ; stdcall;
- asm jmp PtrGetPrinterDataW end;
- Procedure GetPrinterDriverA ; stdcall;
- asm jmp PtrGetPrinterDriverA end;
- Procedure GetPrinterDriverW ; stdcall;
- asm jmp PtrGetPrinterDriverW end;
- Procedure GetPrinterDriverDirectoryA ; stdcall;
- asm jmp PtrGetPrinterDriverDirectoryA end;
- Procedure GetPrinterDriverDirectoryW ; stdcall;
- asm jmp PtrGetPrinterDriverDirectoryW end;
- Procedure GetPrintProcessorDirectoryA ; stdcall;
- asm jmp PtrGetPrintProcessorDirectoryA end;
- Procedure GetPrintProcessorDirectoryW ; stdcall;
- asm jmp PtrGetPrintProcessorDirectoryW end;
- Procedure OpenPrinterA ; stdcall;
- asm jmp PtrOpenPrinterA end;
- Procedure OpenPrinterW ; stdcall;
- asm jmp PtrOpenPrinterW end;
- Procedure PrinterMessageBoxA ; stdcall;
- asm jmp PtrPrinterMessageBoxA end;
- Procedure PrinterMessageBoxW ; stdcall;
- asm jmp PtrPrinterMessageBoxW end;
- Procedure PrinterProperties ; stdcall;
- asm jmp PtrPrinterProperties end;
- Procedure ReadPrinter ; stdcall;
- asm jmp PtrReadPrinter end;
- Procedure ResetPrinterA ; stdcall;
- asm jmp PtrResetPrinterA end;
- Procedure ResetPrinterW ; stdcall;
- asm jmp PtrResetPrinterW end;
- Procedure ScheduleJob ; stdcall;
- asm jmp PtrScheduleJob end;
- Procedure SetFormA ; stdcall;
- asm jmp PtrSetFormA end;
- Procedure SetFormW ; stdcall;
- asm jmp PtrSetFormW end;
- Procedure SetJobA ; stdcall;
- asm jmp PtrSetJobA end;
- Procedure SetJobW ; stdcall;
- asm jmp PtrSetJobW end;
- Procedure SetPortA ; stdcall;
- asm jmp PtrSetPortA end;
- Procedure SetPortW ; stdcall;
- asm jmp PtrSetPortW end;
- Procedure SetPrinterA ; stdcall;
- asm jmp PtrSetPrinterA end;
- Procedure SetPrinterW ; stdcall;
- asm jmp PtrSetPrinterW end;
- Procedure SetPrinterDataA ; stdcall;
- asm jmp PtrSetPrinterDataA end;
- Procedure SetPrinterDataW ; stdcall;
- asm jmp PtrSetPrinterDataW end;
- Procedure StartDocPrinterA ; stdcall;
- asm jmp PtrStartDocPrinterA end;
- Procedure StartDocPrinterW ; stdcall;
- asm jmp PtrStartDocPrinterW end;
- Procedure StartPagePrinter ; stdcall;
- asm jmp PtrStartPagePrinter end;
- Procedure WaitForPrinterChange ; stdcall;
- asm jmp PtrWaitForPrinterChange end;
- Procedure WritePrinter ; stdcall;
- asm jmp PtrWritePrinter end;
- function InitWinSpool(): Boolean;
- var
- hLib: THandle;
- LibPath: string;
- SysDir: array[0..256] of Char;
- begin
- Result:= False;
- GetSystemDirectory(SysDir,256);
- LibPath:= SysDir + '\winspool.drv';
- hLib := LoadLibrary(pchar(LibPath));
- if hLib <> 0 then
- begin
- PtrAbortPrinter := GetProcAddress(hLib, szAbortPrinter);
- PtrAddFormA := GetProcAddress(hLib, szAddFormA);
- PtrAddFormW := GetProcAddress(hLib, szAddFormW);
- PtrAddJobA := GetProcAddress(hLib, szAddJobA);
- PtrAddJobW := GetProcAddress(hLib, szAddJobW);
- PtrAddMonitorA := GetProcAddress(hLib, szAddMonitorA);
- PtrAddMonitorW := GetProcAddress(hLib, szAddMonitorW);
- PtrAddPortA := GetProcAddress(hLib, szAddPortA);
- PtrAddPortW := GetProcAddress(hLib, szAddPortW);
- PtrAddPrinterA := GetProcAddress(hLib, szAddPrinterA);
- PtrAddPrinterW := GetProcAddress(hLib, szAddPrinterW);
- PtrAddPrinterConnectionA := GetProcAddress(hLib, szAddPrinterConnectionA);
- PtrAddPrinterConnectionW := GetProcAddress(hLib, szAddPrinterConnectionW);
- PtrAddPrinterDriverA := GetProcAddress(hLib, szAddPrinterDriverA);
- PtrAddPrinterDriverW := GetProcAddress(hLib, szAddPrinterDriverW);
- PtrAddPrintProcessorA := GetProcAddress(hLib, szAddPrintProcessorA);
- PtrAddPrintProcessorW := GetProcAddress(hLib, szAddPrintProcessorW);
- PtrAddPrintProvidorA := GetProcAddress(hLib, szAddPrintProvidorA);
- PtrAddPrintProvidorW := GetProcAddress(hLib, szAddPrintProvidorW);
- PtrAdvancedDocumentPropertiesA := GetProcAddress(hLib, szAdvancedDocumentPropertiesA);
- PtrAdvancedDocumentPropertiesW := GetProcAddress(hLib, szAdvancedDocumentPropertiesW);
- PtrClosePrinter := GetProcAddress(hLib, szClosePrinter);
- PtrConfigurePortA := GetProcAddress(hLib, szConfigurePortA);
- PtrConfigurePortW := GetProcAddress(hLib, szConfigurePortW);
- PtrConnectToPrinterDlg := GetProcAddress(hLib, szConnectToPrinterDlg);
- PtrDeleteFormA := GetProcAddress(hLib, szDeleteFormA);
- PtrDeleteFormW := GetProcAddress(hLib, szDeleteFormW);
- PtrDeleteMonitorA := GetProcAddress(hLib, szDeleteMonitorA);
- PtrDeleteMonitorW := GetProcAddress(hLib, szDeleteMonitorW);
- PtrDeletePortA := GetProcAddress(hLib, szDeletePortA);
- PtrDeletePortW := GetProcAddress(hLib, szDeletePortW);
- PtrDeletePrinter := GetProcAddress(hLib, szDeletePrinter);
- PtrDeletePrinterConnectionA := GetProcAddress(hLib, szDeletePrinterConnectionA);
- PtrDeletePrinterConnectionW := GetProcAddress(hLib, szDeletePrinterConnectionW);
- PtrDeletePrinterDataA := GetProcAddress(hLib, szDeletePrinterDataA);
- PtrDeletePrinterDataW := GetProcAddress(hLib, szDeletePrinterDataW);
- PtrDeletePrinterDriverA := GetProcAddress(hLib, szDeletePrinterDriverA);
- PtrDeletePrinterDriverW := GetProcAddress(hLib, szDeletePrinterDriverW);
- PtrDeletePrintProcessorA := GetProcAddress(hLib, szDeletePrintProcessorA);
- PtrDeletePrintProcessorW := GetProcAddress(hLib, szDeletePrintProcessorW);
- PtrDeletePrintProvidorA := GetProcAddress(hLib, szDeletePrintProvidorA);
- PtrDeletePrintProvidorW := GetProcAddress(hLib, szDeletePrintProvidorW);
- PtrDeviceCapabilitiesA := GetProcAddress(hLib, szDeviceCapabilitiesA);
- PtrDeviceCapabilitiesW := GetProcAddress(hLib, szDeviceCapabilitiesW);
- PtrDocumentPropertiesA := GetProcAddress(hLib, szDocumentPropertiesA);
- PtrDocumentPropertiesW := GetProcAddress(hLib, szDocumentPropertiesW);
- PtrEndDocPrinter := GetProcAddress(hLib, szEndDocPrinter);
- PtrEndPagePrinter := GetProcAddress(hLib, szEndPagePrinter);
- PtrEnumFormsA := GetProcAddress(hLib, szEnumFormsA);
- PtrEnumFormsW := GetProcAddress(hLib, szEnumFormsW);
- PtrEnumJobsA := GetProcAddress(hLib, szEnumJobsA);
- PtrEnumJobsW := GetProcAddress(hLib, szEnumJobsW);
- PtrEnumMonitorsA := GetProcAddress(hLib, szEnumMonitorsA);
- PtrEnumMonitorsW := GetProcAddress(hLib, szEnumMonitorsW);
- PtrEnumPortsA := GetProcAddress(hLib, szEnumPortsA);
- PtrEnumPortsW := GetProcAddress(hLib, szEnumPortsW);
- PtrEnumPrinterDataA := GetProcAddress(hLib, szEnumPrinterDataA);
- PtrEnumPrinterDataW := GetProcAddress(hLib, szEnumPrinterDataW);
- PtrEnumPrinterDriversA := GetProcAddress(hLib, szEnumPrinterDriversA);
- PtrEnumPrinterDriversW := GetProcAddress(hLib, szEnumPrinterDriversW);
- PtrEnumPrintersA := GetProcAddress(hLib, szEnumPrintersA);
- PtrEnumPrintersW := GetProcAddress(hLib, szEnumPrintersW);
- PtrEnumPrintProcessorDatatypesA := GetProcAddress(hLib, szEnumPrintProcessorDatatypesA);
- PtrEnumPrintProcessorDatatypesW := GetProcAddress(hLib, szEnumPrintProcessorDatatypesW);
- PtrEnumPrintProcessorsA := GetProcAddress(hLib, szEnumPrintProcessorsA);
- PtrEnumPrintProcessorsW := GetProcAddress(hLib, szEnumPrintProcessorsW);
- PtrFindClosePrinterChangeNotification := GetProcAddress(hLib, szFindClosePrinterChangeNotification);
- PtrFindFirstPrinterChangeNotification := GetProcAddress(hLib, szFindFirstPrinterChangeNotification);
- PtrFindNextPrinterChangeNotification := GetProcAddress(hLib, szFindNextPrinterChangeNotification);
- PtrFreePrinterNotifyInfo := GetProcAddress(hLib, szFreePrinterNotifyInfo);
- PtrGetFormA := GetProcAddress(hLib, szGetFormA);
- PtrGetFormW := GetProcAddress(hLib, szGetFormW);
- PtrGetJobA := GetProcAddress(hLib, szGetJobA);
- PtrGetJobW := GetProcAddress(hLib, szGetJobW);
- PtrGetPrinterA := GetProcAddress(hLib, szGetPrinterA);
- PtrGetPrinterW := GetProcAddress(hLib, szGetPrinterW);
- PtrGetPrinterDataA := GetProcAddress(hLib, szGetPrinterDataA);
- PtrGetPrinterDataW := GetProcAddress(hLib, szGetPrinterDataW);
- PtrGetPrinterDriverA := GetProcAddress(hLib, szGetPrinterDriverA);
- PtrGetPrinterDriverW := GetProcAddress(hLib, szGetPrinterDriverW);
- PtrGetPrinterDriverDirectoryA := GetProcAddress(hLib, szGetPrinterDriverDirectoryA);
- PtrGetPrinterDriverDirectoryW := GetProcAddress(hLib, szGetPrinterDriverDirectoryW);
- PtrGetPrintProcessorDirectoryA := GetProcAddress(hLib, szGetPrintProcessorDirectoryA);
- PtrGetPrintProcessorDirectoryW := GetProcAddress(hLib, szGetPrintProcessorDirectoryW);
- PtrOpenPrinterA := GetProcAddress(hLib, szOpenPrinterA);
- PtrOpenPrinterW := GetProcAddress(hLib, szOpenPrinterW);
- PtrPrinterMessageBoxA := GetProcAddress(hLib, szPrinterMessageBoxA);
- PtrPrinterMessageBoxW := GetProcAddress(hLib, szPrinterMessageBoxW);
- PtrPrinterProperties := GetProcAddress(hLib, szPrinterProperties);
- PtrReadPrinter := GetProcAddress(hLib, szReadPrinter);
- PtrResetPrinterA := GetProcAddress(hLib, szResetPrinterA);
- PtrResetPrinterW := GetProcAddress(hLib, szResetPrinterW);
- PtrScheduleJob := GetProcAddress(hLib, szScheduleJob);
- PtrSetFormA := GetProcAddress(hLib, szSetFormA);
- PtrSetFormW := GetProcAddress(hLib, szSetFormW);
- PtrSetJobA := GetProcAddress(hLib, szSetJobA);
- PtrSetJobW := GetProcAddress(hLib, szSetJobW);
- PtrSetPortA := GetProcAddress(hLib, szSetPortA);
- PtrSetPortW := GetProcAddress(hLib, szSetPortW);
- PtrSetPrinterA := GetProcAddress(hLib, szSetPrinterA);
- PtrSetPrinterW := GetProcAddress(hLib, szSetPrinterW);
- PtrSetPrinterDataA := GetProcAddress(hLib, szSetPrinterDataA);
- PtrSetPrinterDataW := GetProcAddress(hLib, szSetPrinterDataW);
- PtrStartDocPrinterA := GetProcAddress(hLib, szStartDocPrinterA);
- PtrStartDocPrinterW := GetProcAddress(hLib, szStartDocPrinterW);
- PtrStartPagePrinter := GetProcAddress(hLib, szStartPagePrinter);
- PtrWaitForPrinterChange := GetProcAddress(hLib, szWaitForPrinterChange);
- PtrWritePrinter := GetProcAddress(hLib, szWritePrinter);
- end;
- end;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement