// [MS-RPRN] interface [ uuid(12345678-1234-ABCD-EF00-0123456789AB), version(1.0), ms_union, endpoint("ncacn_np:[\\pipe\\spoolss]"), pointer_default(unique) ] interface winspool { //import "ms-dtyp.idl"; // [MS-RPRN] common enumerations typedef enum { BIDI_NULL = 0, BIDI_INT = 1, BIDI_FLOAT = 2, BIDI_BOOL = 3, BIDI_STRING = 4, BIDI_TEXT = 5, BIDI_ENUM = 6, BIDI_BLOB = 7 } BIDI_TYPE; // [MS-RPRN] common data types typedef unsigned short LANGID; typedef [handle] void* GDI_HANDLE; typedef [handle] void* PRINTER_HANDLE; typedef [handle] wchar_t* STRING_HANDLE; // [MS-RPRN] common utility structures typedef struct { long cx; long cy; } SIZE; typedef struct { long left; long top; long right; long bottom; } RECTL; // [MS-RPRN] common device state structure struct _devicemode { wchar_t dmDeviceName[32]; unsigned short dmSpecVersion; unsigned short dmDriverVersion; unsigned short dmSize; unsigned short dmDriverExtra; DWORD dmFields; short dmOrientation; short dmPaperSize; short dmPaperLength; short dmPaperWidth; short dmScale; short dmCopies; short dmDefaultSource; short dmPrintQuality; short dmColor; short dmDuplex; short dmYResolution; short dmTTOption; short dmCollate; wchar_t dmFormName[32]; unsigned short reserved0; DWORD reserved1; DWORD reserved2; DWORD reserved3; DWORD dmNup; DWORD reserved4; DWORD dmICMMethod; DWORD dmICMIntent; DWORD dmMediaType; DWORD dmDitherType; DWORD reserved5; DWORD reserved6; DWORD reserved7; DWORD reserved8; }; }