📄 winspool.h
字号:
BOOL
WINAPI
EnumMonitorsA(
LPSTR pName,
DWORD Level,
LPBYTE pMonitors,
DWORD cbBuf,
LPDWORD pcbNeeded,
LPDWORD pcReturned
);
BOOL
WINAPI
EnumMonitorsW(
LPWSTR pName,
DWORD Level,
LPBYTE pMonitors,
DWORD cbBuf,
LPDWORD pcbNeeded,
LPDWORD pcReturned
);
#ifdef UNICODE
#define EnumMonitors EnumMonitorsW
#else
#define EnumMonitors EnumMonitorsA
#endif // !UNICODE
BOOL
WINAPI
AddMonitorA(
LPSTR pName,
DWORD Level,
LPBYTE pMonitors
);
BOOL
WINAPI
AddMonitorW(
LPWSTR pName,
DWORD Level,
LPBYTE pMonitors
);
#ifdef UNICODE
#define AddMonitor AddMonitorW
#else
#define AddMonitor AddMonitorA
#endif // !UNICODE
BOOL
WINAPI
DeleteMonitorA(
LPSTR pName,
LPSTR pEnvironment,
LPSTR pMonitorName
);
BOOL
WINAPI
DeleteMonitorW(
LPWSTR pName,
LPWSTR pEnvironment,
LPWSTR pMonitorName
);
#ifdef UNICODE
#define DeleteMonitor DeleteMonitorW
#else
#define DeleteMonitor DeleteMonitorA
#endif // !UNICODE
BOOL
WINAPI
EnumPortsA(
LPSTR pName,
DWORD Level,
LPBYTE pPorts,
DWORD cbBuf,
LPDWORD pcbNeeded,
LPDWORD pcReturned
);
BOOL
WINAPI
EnumPortsW(
LPWSTR pName,
DWORD Level,
LPBYTE pPorts,
DWORD cbBuf,
LPDWORD pcbNeeded,
LPDWORD pcReturned
);
#ifdef UNICODE
#define EnumPorts EnumPortsW
#else
#define EnumPorts EnumPortsA
#endif // !UNICODE
BOOL
WINAPI
AddPortA(
LPSTR pName,
HWND hWnd,
LPSTR pMonitorName
);
BOOL
WINAPI
AddPortW(
LPWSTR pName,
HWND hWnd,
LPWSTR pMonitorName
);
#ifdef UNICODE
#define AddPort AddPortW
#else
#define AddPort AddPortA
#endif // !UNICODE
BOOL
WINAPI
ConfigurePortA(
LPSTR pName,
HWND hWnd,
LPSTR pPortName
);
BOOL
WINAPI
ConfigurePortW(
LPWSTR pName,
HWND hWnd,
LPWSTR pPortName
);
#ifdef UNICODE
#define ConfigurePort ConfigurePortW
#else
#define ConfigurePort ConfigurePortA
#endif // !UNICODE
BOOL
WINAPI
DeletePortA(
LPSTR pName,
HWND hWnd,
LPSTR pPortName
);
BOOL
WINAPI
DeletePortW(
LPWSTR pName,
HWND hWnd,
LPWSTR pPortName
);
#ifdef UNICODE
#define DeletePort DeletePortW
#else
#define DeletePort DeletePortA
#endif // !UNICODE
BOOL
WINAPI
XcvDataW(
HANDLE hXcv,
PCWSTR pszDataName,
PBYTE pInputData,
DWORD cbInputData,
PBYTE pOutputData,
DWORD cbOutputData,
PDWORD pcbOutputNeeded,
PDWORD pdwStatus
);
#define XcvData XcvDataW
BOOL
WINAPI
SetPortA(
LPSTR pName,
LPSTR pPortName,
DWORD dwLevel,
LPBYTE pPortInfo
);
BOOL
WINAPI
SetPortW(
LPWSTR pName,
LPWSTR pPortName,
DWORD dwLevel,
LPBYTE pPortInfo
);
#ifdef UNICODE
#define SetPort SetPortW
#else
#define SetPort SetPortA
#endif // !UNICODE
BOOL
WINAPI
AddPrinterConnectionA(
LPSTR pName
);
BOOL
WINAPI
AddPrinterConnectionW(
LPWSTR pName
);
#ifdef UNICODE
#define AddPrinterConnection AddPrinterConnectionW
#else
#define AddPrinterConnection AddPrinterConnectionA
#endif // !UNICODE
BOOL
WINAPI
DeletePrinterConnectionA(
LPSTR pName
);
BOOL
WINAPI
DeletePrinterConnectionW(
LPWSTR pName
);
#ifdef UNICODE
#define DeletePrinterConnection DeletePrinterConnectionW
#else
#define DeletePrinterConnection DeletePrinterConnectionA
#endif // !UNICODE
HANDLE
WINAPI
ConnectToPrinterDlg(
HWND hwnd,
DWORD Flags
);
typedef struct _PROVIDOR_INFO_1A{
LPSTR pName;
LPSTR pEnvironment;
LPSTR pDLLName;
} PROVIDOR_INFO_1A, *PPROVIDOR_INFO_1A, *LPPROVIDOR_INFO_1A;
typedef struct _PROVIDOR_INFO_1W{
LPWSTR pName;
LPWSTR pEnvironment;
LPWSTR pDLLName;
} PROVIDOR_INFO_1W, *PPROVIDOR_INFO_1W, *LPPROVIDOR_INFO_1W;
#ifdef UNICODE
typedef PROVIDOR_INFO_1W PROVIDOR_INFO_1;
typedef PPROVIDOR_INFO_1W PPROVIDOR_INFO_1;
typedef LPPROVIDOR_INFO_1W LPPROVIDOR_INFO_1;
#else
typedef PROVIDOR_INFO_1A PROVIDOR_INFO_1;
typedef PPROVIDOR_INFO_1A PPROVIDOR_INFO_1;
typedef LPPROVIDOR_INFO_1A LPPROVIDOR_INFO_1;
#endif // UNICODE
BOOL
WINAPI
AddPrintProvidorA(
LPSTR pName,
DWORD level,
LPBYTE pProvidorInfo
);
BOOL
WINAPI
AddPrintProvidorW(
LPWSTR pName,
DWORD level,
LPBYTE pProvidorInfo
);
#ifdef UNICODE
#define AddPrintProvidor AddPrintProvidorW
#else
#define AddPrintProvidor AddPrintProvidorA
#endif // !UNICODE
BOOL
WINAPI
DeletePrintProvidorA(
LPSTR pName,
LPSTR pEnvironment,
LPSTR pPrintProvidorName
);
BOOL
WINAPI
DeletePrintProvidorW(
LPWSTR pName,
LPWSTR pEnvironment,
LPWSTR pPrintProvidorName
);
#ifdef UNICODE
#define DeletePrintProvidor DeletePrintProvidorW
#else
#define DeletePrintProvidor DeletePrintProvidorA
#endif // !UNICODE
/*
* SetPrinterData and GetPrinterData Server Handle Key values
*/
#define SPLREG_DEFAULT_SPOOL_DIRECTORY TEXT("DefaultSpoolDirectory")
#define SPLREG_PORT_THREAD_PRIORITY_DEFAULT TEXT("PortThreadPriorityDefault")
#define SPLREG_PORT_THREAD_PRIORITY TEXT("PortThreadPriority")
#define SPLREG_SCHEDULER_THREAD_PRIORITY_DEFAULT TEXT("SchedulerThreadPriorityDefault")
#define SPLREG_SCHEDULER_THREAD_PRIORITY TEXT("SchedulerThreadPriority")
#define SPLREG_BEEP_ENABLED TEXT("BeepEnabled")
#define SPLREG_NET_POPUP TEXT("NetPopup")
#define SPLREG_EVENT_LOG TEXT("EventLog")
#define SPLREG_MAJOR_VERSION TEXT("MajorVersion")
#define SPLREG_MINOR_VERSION TEXT("MinorVersion")
#define SPLREG_ARCHITECTURE TEXT("Architecture")
#define SPLREG_OS_VERSION TEXT("OSVersion")
#define SPLREG_DS_PRESENT TEXT("DsPresent")
#define SERVER_ACCESS_ADMINISTER 0x00000001
#define SERVER_ACCESS_ENUMERATE 0x00000002
#define PRINTER_ACCESS_ADMINISTER 0x00000004
#define PRINTER_ACCESS_USE 0x00000008
#define JOB_ACCESS_ADMINISTER 0x00000010
/*
* Access rights for print servers
*/
#define SERVER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED |\
SERVER_ACCESS_ADMINISTER |\
SERVER_ACCESS_ENUMERATE)
#define SERVER_READ (STANDARD_RIGHTS_READ |\
SERVER_ACCESS_ENUMERATE)
#define SERVER_WRITE (STANDARD_RIGHTS_WRITE |\
SERVER_ACCESS_ADMINISTER |\
SERVER_ACCESS_ENUMERATE)
#define SERVER_EXECUTE (STANDARD_RIGHTS_EXECUTE |\
SERVER_ACCESS_ENUMERATE)
/*
* Access rights for printers
*/
#define PRINTER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED |\
PRINTER_ACCESS_ADMINISTER |\
PRINTER_ACCESS_USE)
#define PRINTER_READ (STANDARD_RIGHTS_READ |\
PRINTER_ACCESS_USE)
#define PRINTER_WRITE (STANDARD_RIGHTS_WRITE |\
PRINTER_ACCESS_USE)
#define PRINTER_EXECUTE (STANDARD_RIGHTS_EXECUTE |\
PRINTER_ACCESS_USE)
/*
* Access rights for jobs
*/
#define JOB_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED |\
JOB_ACCESS_ADMINISTER)
#define JOB_READ (STANDARD_RIGHTS_READ |\
JOB_ACCESS_ADMINISTER)
#define JOB_WRITE (STANDARD_RIGHTS_WRITE |\
JOB_ACCESS_ADMINISTER)
#define JOB_EXECUTE (STANDARD_RIGHTS_EXECUTE |\
JOB_ACCESS_ADMINISTER)
/*
* DS Print-Queue property tables
*/
// Predefined Registry Keys used by Set/GetPrinterDataEx
#define SPLDS_SPOOLER_KEY TEXT("DsSpooler")
#define SPLDS_DRIVER_KEY TEXT("DsDriver")
#define SPLDS_USER_KEY TEXT("DsUser")
// DS Print-Queue properties
#define SPLDS_ASSET_NUMBER TEXT("assetNumber")
#define SPLDS_BYTES_PER_MINUTE TEXT("bytesPerMinute")
#define SPLDS_DESCRIPTION TEXT("description")
#define SPLDS_DRIVER_NAME TEXT("driverName")
#define SPLDS_DRIVER_VERSION TEXT("driverVersion")
#define SPLDS_LOCATION TEXT("location")
#define SPLDS_PORT_NAME TEXT("portName")
#define SPLDS_PRINT_ATTRIBUTES TEXT("printAttributes")
#define SPLDS_PRINT_BIN_NAMES TEXT("printBinNames")
#define SPLDS_PRINT_COLLATE TEXT("printCollate")
#define SPLDS_PRINT_COLOR TEXT("printColor")
#define SPLDS_PRINT_DUPLEX_SUPPORTED TEXT("printDuplexSupported")
#define SPLDS_PRINT_END_TIME TEXT("printEndTime")
#define SPLDS_PRINTER_CLASS TEXT("printQueue")
#define SPLDS_PRINTER_NAME TEXT("printerName")
#define SPLDS_PRINT_KEEP_PRINTED_JOBS TEXT("printKeepPrintedJobs")
#define SPLDS_PRINT_LANGUAGE TEXT("printLanguage")
#define SPLDS_PRINT_MAC_ADDRESS TEXT("printMACAddress")
#define SPLDS_PRINT_MAX_X_EXTENT TEXT("printMaxXExtent")
#define SPLDS_PRINT_MAX_Y_EXTENT TEXT("printMaxYExtent")
#define SPLDS_PRINT_MAX_RESOLUTION_SUPPORTED TEXT("printMaxResolutionSupported")
#define SPLDS_PRINT_MEDIA_READY TEXT("printMediaReady")
#define SPLDS_PRINT_MEDIA_SUPPORTED TEXT("printMediaSupported")
#define SPLDS_PRINT_MEMORY TEXT("printMemory")
#define SPLDS_PRINT_MIN_X_EXTENT TEXT("printMinXExtent")
#define SPLDS_PRINT_MIN_Y_EXTENT TEXT("printMinYExtent")
#define SPLDS_PRINT_NETWORK_ADDRESS TEXT("printNetworkAddress")
#define SPLDS_PRINT_NOTIFY TEXT("printNotify")
#define SPLDS_PRINT_NUMBER_UP TEXT("printNumberUp")
#define SPLDS_PRINT_ORIENTATIONS_SUPPORTED TEXT("printOrientationsSupported")
#define SPLDS_PRINT_OWNER TEXT("printOwner")
#define SPLDS_PRINT_RATE TEXT("printRate")
#define SPLDS_PRINT_RATE_UNIT TEXT("printRateUnit")
#define SPLDS_PRINT_SEPARATOR_FILE TEXT("printSeparatorFile")
#define SPLDS_PRINT_SHARE_NAME TEXT("printShareName")
#define SPLDS_PRINT_SPOOLING TEXT("printSpooling")
#define SPLDS_PRINT_STAPLING_SUPPORTED TEXT("printStaplingSupported")
#define SPLDS_PRINT_START_TIME TEXT("printStartTime")
#define SPLDS_PRINT_STATUS TEXT("printStatus")
#define SPLDS_PRIORITY TEXT("priority")
#define SPLDS_SERVER_NAME TEXT("serverName")
#define SPLDS_UNC_NAME TEXT("uNCName")
#define SPLDS_URL TEXT("url")
#define SPLDS_VERSION_NUMBER TEXT("versionNumber")
/*
-- Additional Print-Queue properties --
These properties are not defined in the default Directory Services Schema,
but should be used when extending the Schema so a consistent interface is maintained.
*/
#define SPLDS_PRINTER_NAME_ALIASES TEXT("printerNameAliases") // MULTI_SZ
#define SPLDS_PRINTER_LOCATIONS TEXT("printerLocations") // MULTI_SZ
#define SPLDS_PRINTER_MODEL TEXT("printerModel") // SZ
#define PRINTER_HTML_VIEW_QUEUE 0
#define PRINTER_HTML_VIEW_PRINTPROPERTIES 1
#define PRINTER_HTML_VIEW_INSTALL 2
#define PRINTER_HTML_VIEW_JOBPROPERTIES 3
DWORD
WINAPI
SetPrinterHTMLViewA(
HANDLE hPrinter,
DWORD dwView,
LPCSTR lpszPath
);
DWORD
WINAPI
SetPrinterHTMLViewW(
HANDLE hPrinter,
DWORD dwView,
LPCWSTR lpszPath
);
#ifdef UNICODE
#define SetPrinterHTMLView SetPrinterHTMLViewW
#else
#define SetPrinterHTMLView SetPrinterHTMLViewA
#endif // !UNICODE
DWORD
WINAPI
GetPrinterHTMLViewA(
HANDLE hPrinter,
DWORD dwView,
LPSTR lpszPath,
DWORD nSize,
LPDWORD pcbNeeded
);
DWORD
WINAPI
GetPrinterHTMLViewW(
HANDLE hPrinter,
DWORD dwView,
LPWSTR lpszPath,
DWORD nSize,
LPDWORD pcbNeeded
);
#ifdef UNICODE
#define GetPrinterHTMLView GetPrinterHTMLViewW
#else
#define GetPrinterHTMLView GetPrinterHTMLViewA
#endif // !UNICODE
#ifdef __cplusplus
}
#endif
#endif // _WINSPOOL_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -