⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 spoolss.idl

📁 samba最新软件
💻 IDL
📖 第 1 页 / 共 3 页
字号:
	} spoolss_DriverInfo6;	typedef [nodiscriminant,relative_base,public] union {		[case(1)] spoolss_DriverInfo1 info1;		[case(2)] spoolss_DriverInfo2 info2;		[case(3)] spoolss_DriverInfo3 info3;		[case(4)] spoolss_DriverInfo4 info4;		[case(5)] spoolss_DriverInfo5 info5;		[case(6)] spoolss_DriverInfo6 info6;		[default];	} spoolss_DriverInfo;	/******************/	/* Function: 0x0a */	[public,noopnum,noprint] WERROR _spoolss_EnumPrinterDrivers(		[in,unique] [string,charset(UTF16)] uint16 *server,		[in,unique] [string,charset(UTF16)] uint16 *environment,		[in] uint32 level,		[in,unique] DATA_BLOB *buffer,		[in] uint32 offered,		[out,unique] DATA_BLOB *info,		[out] uint32 needed,		[out] uint32 count	);	[public,noopnum,noprint] void __spoolss_EnumPrinterDrivers(		[in] uint32 level,		[in] uint32 count,		[out,switch_is(level)] spoolss_DriverInfo info[count]	);	[nopull,nopush] WERROR spoolss_EnumPrinterDrivers(		[in,unique] [string,charset(UTF16)] uint16 *server,		[in,unique] [string,charset(UTF16)] uint16 *environment,		[in] uint32 level,		[in,unique] DATA_BLOB *buffer,		[in] uint32 offered,		[out,unique,switch_is(level),size_is(count)] spoolss_DriverInfo *info,		[out] uint32 needed,		[out] uint32 count	);	/******************/	/* Function: 0x0b */	[todo] WERROR spoolss_GetPrinterDriver(	);	/******************/	/* Function: 0x0c */	typedef struct {		nstring directory_name;	} spoolss_DriverDirectoryInfo1;	/* NOTE: it's seems that w2k3 completly ignores the level	         in its server code	 */	typedef [nodiscriminant,relative_base,gensize,public] union {		[case(1)] spoolss_DriverDirectoryInfo1 info1;		[default] spoolss_DriverDirectoryInfo1 info1;	} spoolss_DriverDirectoryInfo;	[public] WERROR spoolss_GetPrinterDriverDirectory(		[in,unique] [string,charset(UTF16)] uint16 *server,		[in,unique] [string,charset(UTF16)] uint16 *environment,		[in] uint32 level,		[in,unique] DATA_BLOB *buffer,		[in] uint32 offered,		[out,unique,subcontext(4),subcontext_size(offered),switch_is(level)] spoolss_DriverDirectoryInfo *info,		[out] uint32 needed	);	/******************/	/* Function: 0x0d */	WERROR spoolss_DeletePrinterDriver(		[in,ref] policy_handle *handle,		[in,unique] [string,charset(UTF16)] uint16 *server,		[in] [string,charset(UTF16)] uint16 architecture[],		[in] [string,charset(UTF16)] uint16 driver[]	);	/******************/	/* Function: 0x0e */	[todo] WERROR spoolss_AddPrintProcessor(	);	/******************/	/* Function: 0x0f */	typedef struct {		[relative] nstring *print_processor_name;	} spoolss_PrintProcessorInfo1;	typedef [nodiscriminant,relative_base,public] union {		[case(1)] spoolss_PrintProcessorInfo1 info1;		[default];	} spoolss_PrintProcessorInfo;	[public,noopnum,noprint] WERROR _spoolss_EnumPrintProcessors(		[in,unique] [string,charset(UTF16)] uint16 *servername,		[in,unique] [string,charset(UTF16)] uint16 *environment,		[in] uint32 level,		[in,unique] DATA_BLOB *buffer,		[in] uint32 offered,		[out,unique] DATA_BLOB *info,		[out] uint32 needed,		[out] uint32 count	);	[public,noopnum,noprint] void __spoolss_EnumPrintProcessors(		[in] uint32 level,		[in] uint32 count,		[out,switch_is(level)] spoolss_PrintProcessorInfo info[count]	);	[nopull,nopush] WERROR spoolss_EnumPrintProcessors(		[in,unique] [string,charset(UTF16)] uint16 *servername,		[in,unique] [string,charset(UTF16)] uint16 *environment,		[in] uint32 level,		[in,unique] DATA_BLOB *buffer,		[in] uint32 offered,		[out,unique,switch_is(level),size_is(count)] spoolss_PrintProcessorInfo *info,		[out] uint32 needed,		[out] uint32 count	);	/******************/	/* Function: 0x10 */	[todo] WERROR spoolss_GetPrintProcessorDirectory(	);	/******************/	/* Function: 0x11 */	typedef struct {		[string,charset(UTF16)] uint16 *document_name;		[string,charset(UTF16)] uint16 *output_file;		[string,charset(UTF16)] uint16 *datatype;	} spoolss_DocumentInfo1;	typedef [switch_type(uint32)] union {		[case(1)] spoolss_DocumentInfo1 *info1;		[case(2)]; /* TODO */		[case(3)]; /* TODO */		[default];	} spoolss_DocumentInfo;	WERROR spoolss_StartDocPrinter(		[in,ref] policy_handle *handle,		[in] uint32 level,		[in,switch_is(level)] spoolss_DocumentInfo info,		[out] uint32 job_id	);	/******************/	/* Function: 0x12 */	WERROR spoolss_StartPagePrinter(		[in,ref] policy_handle *handle	);	/******************/	/* Function: 0x13 */	WERROR spoolss_WritePrinter(		[in,ref] policy_handle *handle,		[in] DATA_BLOB data,		[in,value(r->in.data.length)] uint32 _data_size,		[out] uint32 num_written	);	/******************/	/* Function: 0x14 */	WERROR spoolss_EndPagePrinter(		[in,ref] policy_handle *handle	);	/******************/	/* Function: 0x15 */	WERROR spoolss_AbortPrinter(		[in,ref] policy_handle *handle	);	/******************/	/* Function: 0x16 */	WERROR spoolss_ReadPrinter(		[in,ref] policy_handle *handle,		[in] uint32 data_size,		[out] DATA_BLOB data,		[out,value(r->out.data.length)] uint32 _data_size	);	/******************/	/* Function: 0x17 */	WERROR spoolss_EndDocPrinter(		[in,ref] policy_handle *handle	);	/******************/	/* Function: 0x18 */	[todo] WERROR spoolss_AddJob(	);	/******************/	/* Function: 0x19 */	[todo] WERROR spoolss_ScheduleJob(	);	/******************/	/* Function: 0x1a */	const string SPOOLSS_ARCHITECTURE_NT_X86		= "Windows NT x86";	typedef [public,gensize] struct {		[value(ndr_size_spoolss_OSVersion(r,ndr->flags))] uint32 _ndr_size;		uint32 major;		uint32 minor;		uint32 build;		[value(2)] uint32 unknown;		[subcontext(0),subcontext_size(256)] nstring extra_string;	} spoolss_OSVersion;	typedef [public,gensize] struct {		[value(ndr_size_spoolss_OSVersionEx(r,ndr->flags))] uint32 _ndr_size;		uint32 major;		uint32 minor;		uint32 build;		[value(2)] uint32 unknown1;		[subcontext(0),subcontext_size(256)] nstring extra_string;		uint32 unknown2;/* service pack number? I saw 0 from w2k3 and 1 from winxp sp1*/		uint32 unknown3;/* hmm? w2k3: 131346(0x20112) winxp sp1: 503382272 0x1E010100 */	} spoolss_OSVersionEx;	typedef [v1_enum] enum {		SPOOLSS_PRINTER_DATA_TYPE_NULL = 0,		SPOOLSS_PRINTER_DATA_TYPE_STRING = 1,		SPOOLSS_PRINTER_DATA_TYPE_BINARY = 3,		SPOOLSS_PRINTER_DATA_TYPE_UINT32 = 4,		SPOOLSS_PRINTER_DATA_TYPE_STRING_ARRAY = 7	} spoolss_PrinterDataType;	typedef [nodiscriminant,public,gensize] union {		[case(SPOOLSS_PRINTER_DATA_TYPE_NULL)];		[case(SPOOLSS_PRINTER_DATA_TYPE_STRING)] nstring string;		[case(SPOOLSS_PRINTER_DATA_TYPE_BINARY),flag(NDR_REMAINING)] DATA_BLOB binary;		[case(SPOOLSS_PRINTER_DATA_TYPE_UINT32)] uint32 value;		[case(SPOOLSS_PRINTER_DATA_TYPE_STRING_ARRAY)] nstring_array string_array;		[default,flag(NDR_REMAINING)] DATA_BLOB data;	} spoolss_PrinterData;	[noopnum,noprint,public] WERROR _spoolss_GetPrinterData(		[in,ref] policy_handle *handle,		[in] 	 [string,charset(UTF16)] uint16 value_name[],		[in] 	 uint32 offered,		[out] 	 spoolss_PrinterDataType type,		[out] 	 DATA_BLOB data,		[out] 	 uint32 needed	);	[noopnum,noprint,public] void __spoolss_GetPrinterData(		[in] spoolss_PrinterDataType type,		[out,switch_is(type)] spoolss_PrinterData data	);	[nopull,nopush,public] WERROR spoolss_GetPrinterData(		[in,ref] policy_handle *handle,		[in] 	 [string,charset(UTF16)] uint16 value_name[],		[in] 	 uint32 offered,		[out] 	 spoolss_PrinterDataType type,		[out,subcontext(4),subcontext_size(offered),switch_is(type)] spoolss_PrinterData data,		[out] 	 uint32 needed	);	/******************/	/* Function: 0x1b */	[noopnum,nopull,noprint,public] WERROR _spoolss_SetPrinterData(		[in,ref] policy_handle *handle,		[in] [string,charset(UTF16)] uint16 value_name[],		[in] spoolss_PrinterDataType type,		[in] DATA_BLOB data,		[in] uint32 _offered	);	[noopnum,nopull,noprint,public] void __spoolss_SetPrinterData(		[in] spoolss_PrinterDataType type,		[out,switch_is(type)] spoolss_PrinterData data	);	[nopush] WERROR spoolss_SetPrinterData(		[in,ref] policy_handle *handle,		[in] [string,charset(UTF16)] uint16 value_name[],		[in] spoolss_PrinterDataType type,		[in,subcontext(4),switch_is(type)] spoolss_PrinterData data,		[in,value(ndr_size_spoolss_PrinterData(&data,type,flags))] uint32 _offered	);	/******************/	/* Function: 0x1c */	[todo] WERROR spoolss_WaitForPrinterChange(	);	/******************/	/* Function: 0x1d */	[public] WERROR spoolss_ClosePrinter(		[in,out,ref]     policy_handle *handle	);	/******************/	/* Function: 0x1e */	typedef [v1_enum] enum {		SPOOLSS_FORM_USER	= 0,		SPOOLSS_FORM_BUILTIN	= 1,		SPOOLSS_FORM_PRINTER	= 2	} spoolss_FormFlags;	typedef struct {		uint32 width;		uint32 height;	} spoolss_FormSize;	typedef struct {		uint32 left;		uint32 top;		uint32 right;		uint32 bottom;	} spoolss_FormArea;	typedef struct {		spoolss_FormFlags flags;		[relative] nstring *form_name;		spoolss_FormSize size;		spoolss_FormArea area;	} spoolss_FormInfo1;	typedef [nodiscriminant,relative_base,public,gensize] union {		[case(1)] spoolss_FormInfo1 info1;		[default];	} spoolss_FormInfo;	typedef struct {		spoolss_FormFlags flags;		[string,charset(UTF16)] uint16 *form_name;		spoolss_FormSize size;		spoolss_FormArea area;	} spoolss_AddFormInfo1;	typedef [switch_type(uint32)] union {		[case(1)] spoolss_AddFormInfo1 *info1;	} spoolss_AddFormInfo;	WERROR spoolss_AddForm(		[in,ref] policy_handle *handle,		[in] uint32 level,		[in,switch_is(level)] spoolss_AddFormInfo info	);	/******************/	/* Function: 0x1f */	WERROR spoolss_DeleteForm(		[in,ref] policy_handle *handle,		[in] [string,charset(UTF16)] uint16 form_name[]	);	/******************/	/* Function: 0x20 */	WERROR spoolss_GetForm(		[in,ref] policy_handle *handle,		[in] [string,charset(UTF16)] uint16 form_name[],		[in] uint32 level,		[in,unique] DATA_BLOB *buffer,		[in] uint32 offered,		[out,unique,subcontext(4),subcontext_size(offered),switch_is(level)] spoolss_FormInfo *info,		[out] uint32 needed	);	/******************/	/* Function: 0x21 */	WERROR spoolss_SetForm(		[in,ref] policy_handle *handle,		[in] [string,charset(UTF16)] uint16 form_name[],		[in] uint32 level,		[in,switch_is(level)] spoolss_AddFormInfo info	);	/******************/	/* Function: 0x22 */	[public,noopnum,noprint] WERROR _spoolss_EnumForms(		[in,ref] policy_handle *handle,		[in] 	 uint32 level,		[in,unique] DATA_BLOB *buffer,		[in] 	 uint32 offered,		[out,unique] DATA_BLOB *info,		[out]	 uint32 needed,		[out]	 uint32 count	);	[public,noopnum,noprint] void __spoolss_EnumForms(		[in] uint32 level,		[in] uint32 count,		[out,switch_is(level)] spoolss_FormInfo info[count]	);	[nopull,nopush] WERROR spoolss_EnumForms(		[in,ref] policy_handle *handle,		[in] 	 uint32 level,		[in,unique] DATA_BLOB *buffer,		[in] 	 uint32 offered,		[out,unique,switch_is(level),size_is(count)] spoolss_FormInfo *info,		[out] uint32 needed,		[out] uint32 count	);	typedef struct {		[relative] nstring *port_name;	} spoolss_PortInfo1;	typedef bitmap {		SPOOLSS_PORT_TYPE_WRITE		= 0x00000001,		SPOOLSS_PORT_TYPE_READ		= 0x00000002,		SPOOLSS_PORT_TYPE_REDIRECTED	= 0x00000004,		SPOOLSS_PORT_TYPE_NET_ATTACHED  = 0x00000008	} spoolss_PortType;	typedef struct {		[relative] nstring *port_name;		[relative] nstring *monitor_name;		[relative] nstring *description;		spoolss_PortType port_type;		uint32 reserved;	} spoolss_PortInfo2;	typedef [nodiscriminant,relative_base,public] union {		[case(1)] spoolss_PortInfo1 info1;		[case(2)] spoolss_PortInfo2 info2;		[case(3)]; /* TODO */		[default];	} spoolss_PortInfo;	/******************/	/* Function: 0x23 */	[public,noopnum,noprint] WERROR _spoolss_EnumPorts(		[in,unique] [string,charset(UTF16)] uint16 *servername,		[in] uint32 level,		[in,unique] DATA_BLOB *buffer,		[in] uint32 offered,		[out,unique] DATA_BLOB *info,		[out] uint32 needed,		[out] uint32 count	);	[public,noopnum,noprint] void __spoolss_EnumPorts(		[in] uint32 level,		[in] uint32 count,		[out,switch_is(level)] spoolss_PortInfo info[count]	);	[nopull,nopush] WERROR spoolss_EnumPorts(		[in,unique] [string,charset(UTF16)] uint16 *servername,		[in] uint32 level,		[in,unique] DATA_BLOB *buffer,		[in] uint32 offered,		[out,unique,switch_is(level),size_is(count)] spoolss_PortInfo *info,		[out] uint32 needed,		[out] uint32 count	);	/******************/	/* Function: 0x24 */	typedef struct {		[relative] nstring *monitor_name;	} spoolss_MonitorInfo1;	typedef struct {		[relative] nstring *monitor_name;		[relative] nstring *environment;		[relative] nstring *dll_name;	} spoolss_MonitorInfo2;	typedef [nodiscriminant,relative_base,public] union {		[case(1)] spoolss_MonitorInfo1 info1;		[case(2)] spoolss_MonitorInfo2 info2;		[default];	} spoolss_MonitorInfo;	[public,noopnum,noprint] WERROR _spoolss_EnumMonitors(		[in,unique] [string,charset(UTF16)] uint16 *servername,		[in] uint32 level,		[in,unique] DATA_BLOB *buffer,		[in] uint32 offered,		[out,unique] DATA_BLOB *info,		[out] uint32 needed,		[out] uint32 count	);	[public,noopnum,noprint] void __spoolss_EnumMonitors(		[in] uint32 level,		[in] uint32 count,		[out,switch_is(level)] spoolss_MonitorInfo info[count]	);	[nopull,nopush] WERROR spoolss_EnumMonitors(		[in,unique] [string,charset(UTF16)] uint16 *servername,		[in] uint32 level,		[in,unique] DATA_BLOB *buffer,		[in] uint32 offered,		[out,unique,switch_is(level),size_is(count)] spoolss_MonitorInfo *info,		[out] uint32 needed,		[out] uint32 count	);	/******************/	/* Function: 0x25 */	WERROR spoolss_AddPort(	       [in,unique] [string,charset(UTF16)] uint16 *server_name,	       [in] uint32 unknown,	       [in] [string,charset(UTF16)] uint16 monitor_name[]	);	/******************/	/* Function: 0x26 */	[todo] WERROR spoolss_ConfigurePort(	);	/******************/	/* Function: 0x27 */	[todo] WERROR spoolss_DeletePort(	);	/******************/	/* Function: 0x28 */	[todo] WERROR spoolss_CreatePrinterIC(	);	/******************/	/* Function: 0x29 */	[todo] WERROR spoolss_PlayGDIScriptOnPrinterIC(	);	/******************/	/* Function: 0x2a */	[todo] WERROR spoolss_DeletePrinterIC(	);	/******************/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -