📄 winsplp.h
字号:
LPBYTE pData,
DWORD cbData,
LPDWORD pcbData);
DWORD (*fpDeletePrinterData)(HANDLE hPrinter,
LPWSTR pValueName);
} PRINTPROVIDOR, *LPPRINTPROVIDOR;
BOOL
InitializePrintProvidor(
LPPRINTPROVIDOR pPrintProvidor,
DWORD cbPrintProvidor,
LPWSTR pFullRegistryPath
);
typedef struct _PRINTPROCESSOROPENDATA {
PDEVMODE pDevMode;
LPWSTR pDatatype;
LPWSTR pParameters;
LPWSTR pDocumentName;
DWORD JobId;
LPWSTR pOutputFile;
LPWSTR pPrinterName;
} PRINTPROCESSOROPENDATA, *PPRINTPROCESSOROPENDATA, *LPPRINTPROCESSOROPENDATA;
HANDLE
OpenPrintProcessor(
LPWSTR pPrinterName,
PPRINTPROCESSOROPENDATA pPrintProcessorOpenData
);
BOOL
PrintDocumentOnPrintProcessor(
HANDLE hPrintProcessor,
LPWSTR pDocumentName
);
BOOL
ClosePrintProcessor(
HANDLE hPrintProcessor
);
BOOL
ControlPrintProcessor(
HANDLE hPrintProcessor,
DWORD Command
);
BOOL
InstallPrintProcessor(
HWND hWnd
);
BOOL
InitializeMonitor(
LPWSTR pRegistryRoot
);
BOOL
OpenPort(
LPWSTR pName,
PHANDLE pHandle
);
BOOL
WritePort(
HANDLE hPort,
LPBYTE pBuffer,
DWORD cbBuf,
LPDWORD pcbWritten
);
BOOL
ReadPort(
HANDLE hPort,
LPBYTE pBuffer,
DWORD cbBuffer,
LPDWORD pcbRead
);
BOOL
ClosePort(
HANDLE hPort
);
typedef struct _MONITOR
{
BOOL (WINAPI *pfnEnumPorts)
(
LPWSTR pName,
DWORD Level,
LPBYTE pPorts,
DWORD cbBuf,
LPDWORD pcbNeeded,
LPDWORD pcReturned
);
BOOL (WINAPI *pfnOpenPort)
(
LPWSTR pName,
PHANDLE pHandle
);
BOOL (WINAPI *pfnOpenPortEx)
(
LPWSTR pPortName,
LPWSTR pPrinterName,
PHANDLE pHandle,
struct _MONITOR FAR *pMonitor
);
BOOL (WINAPI *pfnStartDocPort)
(
HANDLE hPort,
LPWSTR pPrinterName,
DWORD JobId,
DWORD Level,
LPBYTE pDocInfo
);
BOOL (WINAPI *pfnWritePort)
(
HANDLE hPort,
LPBYTE pBuffer,
DWORD cbBuf,
LPDWORD pcbWritten
);
BOOL (WINAPI *pfnReadPort)
(
HANDLE hPort,
LPBYTE pBuffer,
DWORD cbBuffer,
LPDWORD pcbRead
);
BOOL (WINAPI *pfnEndDocPort)
(
HANDLE hPort
);
BOOL (WINAPI *pfnClosePort)
(
HANDLE hPort
);
BOOL (WINAPI *pfnAddPort)
(
LPWSTR pName,
HWND hWnd,
LPWSTR pMonitorName
);
BOOL (WINAPI *pfnAddPortEx)
(
LPWSTR pName,
DWORD Level,
LPBYTE lpBuffer,
LPWSTR lpMonitorName
);
BOOL (WINAPI *pfnConfigurePort)
(
LPWSTR pName,
HWND hWnd,
LPWSTR pPortName
);
BOOL (WINAPI *pfnDeletePort)
(
LPWSTR pName,
HWND hWnd,
LPWSTR pPortName
);
BOOL (WINAPI *pfnGetPrinterDataFromPort)
(
HANDLE hPort,
DWORD ControlID,
LPWSTR pValueName,
LPWSTR lpInBuffer,
DWORD cbInBuffer,
LPWSTR lpOutBuffer,
DWORD cbOutBuffer,
LPDWORD lpcbReturned
);
BOOL (WINAPI *pfnSetPortTimeOuts)
(
HANDLE hPort,
LPCOMMTIMEOUTS lpCTO,
DWORD reserved // must be set to 0
);
} MONITOR, FAR *LPMONITOR;
typedef struct _MONITOREX
{
DWORD dwMonitorSize;
MONITOR Monitor;
} MONITOREX, FAR *LPMONITOREX;
HANDLE
CreatePrinterIC(
HANDLE hPrinter,
LPDEVMODEW pDevMode
);
BOOL
PlayGdiScriptOnPrinterIC(
HANDLE hPrinterIC,
LPBYTE pIn,
DWORD cIn,
LPBYTE pOut,
DWORD cOut,
DWORD ul
);
BOOL
DeletePrinterIC(
HANDLE hPrinterIC
);
BOOL
DevQueryPrint(
HANDLE hPrinter,
LPDEVMODE pDevMode,
DWORD *pResID
);
HANDLE
RevertToPrinterSelf(
VOID
);
BOOL
ImpersonatePrinterClient(
HANDLE hToken
);
BOOL
OpenPrinterToken(
PHANDLE phToken
);
BOOL
SetPrinterToken(
HANDLE hToken
);
BOOL
ClosePrinterToken(
HANDLE hToken
);
BOOL
ReplyPrinterChangeNotification(
HANDLE hNotify,
DWORD fdwFlags,
PDWORD pdwResult,
PVOID pPrinterNotifyInfo
);
BOOL
PartialReplyPrinterChangeNotification(
HANDLE hNotify,
PPRINTER_NOTIFY_INFO_DATA pInfoDataSrc
);
PPRINTER_NOTIFY_INFO
RouterAllocPrinterNotifyInfo(
DWORD cPrinterNotifyInfoData
);
BOOL
RouterFreePrinterNotifyInfo(
PPRINTER_NOTIFY_INFO pInfo
);
#define PRINTER_NOTIFY_INFO_DATA_COMPACT 1
BOOL
AppendPrinterNotifyInfoData(
PPRINTER_NOTIFY_INFO pInfoDest,
PPRINTER_NOTIFY_INFO_DATA pInfoDataSrc,
DWORD fdwFlags
);
DWORD
CallRouterFindFirstPrinterChangeNotification(
HANDLE hPrinter,
DWORD fdwFlags,
DWORD fdwOptions,
HANDLE hNotify,
PVOID pvReserved);
BOOL
ProvidorFindFirstPrinterChangeNotification(
HANDLE hPrinter,
DWORD fdwFlags,
DWORD fdwOptions,
HANDLE hNotify,
PVOID pvReserved0,
PVOID pvReserved1);
BOOL
ProvidorFindClosePrinterChangeNotification(
HANDLE hPrinter);
BOOL
SpoolerFindFirstPrinterChangeNotification(
HANDLE hPrinter,
DWORD fdwFlags,
DWORD fdwOptions,
PHANDLE phEvent,
PVOID pPrinterNotifyOptions,
PVOID pvReserved);
BOOL
SpoolerFindNextPrinterChangeNotification(
HANDLE hPrinter,
LPDWORD pfdwChange,
PVOID pvReserved0,
PVOID ppPrinterNotifyInfo);
VOID
SpoolerFreePrinterNotifyInfo(
PPRINTER_NOTIFY_INFO pInfo);
BOOL
SpoolerFindClosePrinterChangeNotification(
HANDLE hPrinter);
BOOL
WINAPI
InitializeMonitorEx(
LPWSTR pRegistryRoot,
LPMONITOR pMonitor
);
LPMONITOREX
WINAPI
InitializePrintMonitor(
LPWSTR pRegistryRoot
);
#ifdef __cplusplus
} /* End of extern "C" { */
#endif /* __cplusplus */
#endif // _WINSPLP_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -