Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
BOOL WINAPI USBMON_EnumPorts(LPWSTR pName, DWORD Level, LPBYTE pPorts, DWORD cbBuf,LPDWORD pcbNeeded, LPDWORD pcReturned);
#define MAX_PORT_LEN 20 //chars, this is the max port len of a USB printer
#define MAX_PORT_DESC_LEN 60 //chars This will probably need to get bigger or be made dynamic if we want port-unique descriptions
#define MAX_MONITOR_NAME_LEN 40
//#define PORT_NAME_BASE L"USB"
//#define PORT_NAME_BASE_A "USB"
#define MAX_PRINTER_NAME_LEN 222
#define MONITOR_NAME L"USB Print Monitor"
#define STANDARD_PORT_DESC L"Virtual printer port for USB"
#define MAX_ENUM_PRINTER_BUFFER_SIZE 1024*512
#define MAX_WRITE_CHUNK 10240
typedef struct USBMON_PRINTER_INFO_DEF { WCHAR DevicePath[256]; BOOL bLinked; DWORD dwVidPid; struct USBMON_PRINTER_INFO_DEF *pNext;
} USBMON_PRINTER_INFO, *PUSBMON_PRINTER_INFO;
typedef struct USBMON_PORT_INFO_DEF { WCHAR szPortName[MAX_PORT_LEN]; WCHAR szPortDescription[MAX_PORT_DESC_LEN]; WCHAR DevicePath[256]; int iRefCount; DWORD ReadTimeoutMultiplier; DWORD ReadTimeoutConstant; DWORD WriteTimeoutMultiplier; DWORD WriteTimeoutConstant; HANDLE hDeviceHandle; HANDLE hPrinter; //handle to print queue
DWORD dwCurrentJob; DWORD dwDeviceFlags; struct USBMON_PORT_INFO_DEF *pNext; } USBMON_PORT_INFO, *PUSBMON_PORT_INFO;
typedef struct USBMON_BASENAME_DEF { WCHAR wcBaseName[MAX_PORT_LEN]; struct USBMON_BASENAME_DEF *pNext; } USBMON_BASENAME, * PUSBMON_BASENAME;
typedef struct USBMON_QUEUE_INFO_DEF { WCHAR wcPortName[MAX_PORT_LEN]; WCHAR wcPrinterName[MAX_PRINTER_NAME_LEN]; struct USBMON_QUEUE_INFO_DEF *pNext; } USBMON_QUEUE_INFO, *PUSBMON_QUEUE_INFO;
extern PUSBMON_PORT_INFO pPortInfoG; extern PUSBMON_PRINTER_INFO pPrinterInfoG; extern char szDebugBuff[]; extern HKEY hPortsKeyG; //global, declared in EnumPorts.
extern PUSBMON_BASENAME GpBaseNameList;
// {28D78FAD-5A12-11d1-AE5B-0000F803A8C2}
static const GUID USB_PRINTER_GUID = { 0x28d78fad, 0x5a12, 0x11d1, { 0xae, 0x5b, 0x0, 0x0, 0xf8, 0x3, 0xa8, 0xc2 } };
|