Documentation ¶
Index ¶
- Variables
- func NewWinspoolServerHandle(o WinspoolServer) dcerpc.ServerHandle
- func RegisterWinspoolServer(conn dcerpc.Conn, o WinspoolServer, opts ...dcerpc.Option)
- func WinspoolServerHandle(ctx context.Context, o WinspoolServer, opNum int, r ndr.Reader) (dcerpc.Operation, error)
- type AbortPrinterRequest
- type AbortPrinterResponse
- type AddFormRequest
- type AddFormResponse
- type AddJobRequest
- type AddJobResponse
- type AddMonitorRequest
- type AddMonitorResponse
- type AddPerMachineConnectionRequest
- type AddPerMachineConnectionResponse
- type AddPortExRequest
- type AddPortExResponse
- type AddPrintProcessorRequest
- type AddPrintProcessorResponse
- type AddPrinterDriverExRequest
- type AddPrinterDriverExResponse
- type AddPrinterDriverRequest
- type AddPrinterDriverResponse
- type AddPrinterExRequest
- type AddPrinterExResponse
- type AddPrinterRequest
- type AddPrinterResponse
- type BIDIData
- type BIDIData_Union
- type BIDIData_Union_BinaryData
- type BIDIData_Union_BoolData
- type BIDIData_Union_FloatData
- type BIDIData_Union_IntData
- type BIDIData_Union_StringData
- type BIDIRequestContainer
- type BIDIRequestData
- type BIDIResponseContainer
- type BIDIResponseData
- type BIDIType
- type BinaryContainer
- type BranchOfficeJobData
- type BranchOfficeJobDataContainer
- type BranchOfficeJobDataError
- type BranchOfficeJobDataPipelineFailed
- type BranchOfficeJobDataPrinted
- type BranchOfficeJobDataRendered
- type BranchOfficeJobData_JobInfo
- func (o *BranchOfficeJobData_JobInfo) GetValue() any
- func (o *BranchOfficeJobData_JobInfo) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint16) error
- func (o *BranchOfficeJobData_JobInfo) NDRSwitchValue(sw uint16) uint16
- func (o *BranchOfficeJobData_JobInfo) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint16) error
- type BranchOfficeJobData_JobInfo_LogJobError
- type BranchOfficeJobData_JobInfo_LogJobPrinted
- type BranchOfficeJobData_JobInfo_LogJobRendered
- type BranchOfficeJobData_JobInfo_LogOfflineFileFull
- type BranchOfficeJobData_JobInfo_LogPipelineFailed
- type BranchOfficeJobEventType
- type BranchOfficeLogOfflineFileFull
- type ClientContainer
- type ClientContainer_ClientInfo
- func (o *ClientContainer_ClientInfo) GetValue() any
- func (o *ClientContainer_ClientInfo) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error
- func (o *ClientContainer_ClientInfo) NDRSwitchValue(sw uint32) uint32
- func (o *ClientContainer_ClientInfo) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error
- type ClientContainer_ClientInfo_ClientInfo1
- type ClientContainer_ClientInfo_NotUsed1
- type ClientContainer_ClientInfo_NotUsed2
- type ClientInfo1
- type ClientInfo2
- type ClientInfo3
- type ClosePrinterRequest
- type ClosePrinterResponse
- type CorePrinterDriver
- type CreateJobOnPrinterRequest
- type CreateJobOnPrinterResponse
- type CreatePrinterICRequest
- type CreatePrinterICResponse
- type DeleteFormRequest
- type DeleteFormResponse
- type DeleteJobNamedPropertyRequest
- type DeleteJobNamedPropertyResponse
- type DeleteMonitorRequest
- type DeleteMonitorResponse
- type DeletePerMachineConnectionRequest
- type DeletePerMachineConnectionResponse
- type DeletePortRequest
- type DeletePortResponse
- type DeletePrintProcessorRequest
- type DeletePrintProcessorResponse
- type DeletePrinterDataExRequest
- type DeletePrinterDataExResponse
- type DeletePrinterDataRequest
- type DeletePrinterDataResponse
- type DeletePrinterDriverExRequest
- type DeletePrinterDriverExResponse
- type DeletePrinterDriverRequest
- type DeletePrinterDriverResponse
- type DeletePrinterICRequest
- type DeletePrinterICResponse
- type DeletePrinterKeyRequest
- type DeletePrinterKeyResponse
- type DeletePrinterRequest
- type DeletePrinterResponse
- type DevMode
- type DevModeContainer
- type DocInfo1
- type DocInfoContainer
- type DocInfoContainer_DocInfo
- func (o *DocInfoContainer_DocInfo) GetValue() any
- func (o *DocInfoContainer_DocInfo) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error
- func (o *DocInfoContainer_DocInfo) NDRSwitchValue(sw uint32) uint32
- func (o *DocInfoContainer_DocInfo) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error
- type DocInfoContainer_DocInfo1
- type DriverContainer
- type DriverContainer_DriverInfo
- func (o *DriverContainer_DriverInfo) GetValue() any
- func (o *DriverContainer_DriverInfo) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error
- func (o *DriverContainer_DriverInfo) NDRSwitchValue(sw uint32) uint32
- func (o *DriverContainer_DriverInfo) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error
- type DriverContainer_DriverInfo_Level2
- type DriverContainer_DriverInfo_Level3
- type DriverContainer_DriverInfo_Level4
- type DriverContainer_DriverInfo_Level6
- type DriverContainer_DriverInfo_Level8
- type DriverContainer_DriverInfo_NotUsed
- type DriverInfo1
- type DriverInfo2
- type DriverInfo3
- type DriverInfo4
- type DriverInfo6
- type DriverInfo8
- type EndDocPrinterRequest
- type EndDocPrinterResponse
- type EndPagePrinterRequest
- type EndPagePrinterResponse
- type EnumFormsRequest
- type EnumFormsResponse
- type EnumJobNamedPropertiesRequest
- type EnumJobNamedPropertiesResponse
- type EnumJobsRequest
- type EnumJobsResponse
- type EnumMonitorsRequest
- type EnumMonitorsResponse
- type EnumPerMachineConnectionsRequest
- type EnumPerMachineConnectionsResponse
- type EnumPortsRequest
- type EnumPortsResponse
- type EnumPrintProcessorDataTypesRequest
- type EnumPrintProcessorDataTypesResponse
- type EnumPrintProcessorsRequest
- type EnumPrintProcessorsResponse
- type EnumPrinterDataExRequest
- type EnumPrinterDataExResponse
- type EnumPrinterDataRequest
- type EnumPrinterDataResponse
- type EnumPrinterDriversRequest
- type EnumPrinterDriversResponse
- type EnumPrinterKeyRequest
- type EnumPrinterKeyResponse
- type EnumPrintersRequest
- type EnumPrintersResponse
- type FindClosePrinterChangeNotificationRequest
- type FindClosePrinterChangeNotificationResponse
- type FlushPrinterRequest
- type FlushPrinterResponse
- type FormContainer
- type FormContainer_FormInfo
- func (o *FormContainer_FormInfo) GetValue() any
- func (o *FormContainer_FormInfo) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error
- func (o *FormContainer_FormInfo) NDRSwitchValue(sw uint32) uint32
- func (o *FormContainer_FormInfo) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error
- type FormContainer_FormInfo_FormInfo1
- type FormContainer_FormInfo_FormInfo2
- type FormInfo1
- type FormInfo2
- type GDI
- type GetCorePrinterDriversRequest
- type GetCorePrinterDriversResponse
- type GetFormRequest
- type GetFormResponse
- type GetJobAttributesRequest
- type GetJobAttributesResponse
- type GetJobNamedPropertyValueRequest
- type GetJobNamedPropertyValueResponse
- type GetJobRequest
- type GetJobResponse
- type GetPrintProcessorDirectoryRequest
- type GetPrintProcessorDirectoryResponse
- type GetPrinterAttributesRequest
- type GetPrinterAttributesResponse
- type GetPrinterDataExRequest
- type GetPrinterDataExResponse
- type GetPrinterDataRequest
- type GetPrinterDataResponse
- type GetPrinterDriver2Request
- type GetPrinterDriver2Response
- type GetPrinterDriverDirectoryRequest
- type GetPrinterDriverDirectoryResponse
- type GetPrinterDriverPackagePathRequest
- type GetPrinterDriverPackagePathResponse
- type GetPrinterDriverRequest
- type GetPrinterDriverResponse
- type GetPrinterRequest
- type GetPrinterResponse
- type JobContainer
- type JobContainer_JobInfo
- func (o *JobContainer_JobInfo) GetValue() any
- func (o *JobContainer_JobInfo) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error
- func (o *JobContainer_JobInfo) NDRSwitchValue(sw uint32) uint32
- func (o *JobContainer_JobInfo) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error
- type JobContainer_JobInfo_Level1
- type JobContainer_JobInfo_Level2
- type JobContainer_JobInfo_Level3
- type JobContainer_JobInfo_Level4
- type JobInfo1
- type JobInfo2
- type JobInfo3
- type JobInfo4
- type LogJobInfoForBranchOfficeRequest
- type LogJobInfoForBranchOfficeResponse
- type MonitorContainer
- type MonitorContainer_MonitorInfo
- func (o *MonitorContainer_MonitorInfo) GetValue() any
- func (o *MonitorContainer_MonitorInfo) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error
- func (o *MonitorContainer_MonitorInfo) NDRSwitchValue(sw uint32) uint32
- func (o *MonitorContainer_MonitorInfo) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error
- type MonitorContainer_MonitorInfo_MonitorInfo1
- type MonitorContainer_MonitorInfo_MonitorInfo2
- type MonitorInfo1
- type MonitorInfo2
- type OSType
- type OpenPrinterExRequest
- type OpenPrinterExResponse
- type OpenPrinterRequest
- type OpenPrinterResponse
- type PlayGDIScriptOnPrinterICRequest
- type PlayGDIScriptOnPrinterICResponse
- type PortContainer
- type PortContainer_PortInfo
- func (o *PortContainer_PortInfo) GetValue() any
- func (o *PortContainer_PortInfo) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error
- func (o *PortContainer_PortInfo) NDRSwitchValue(sw uint32) uint32
- func (o *PortContainer_PortInfo) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error
- type PortContainer_PortInfo_PortInfo1
- type PortContainer_PortInfo_PortInfo2
- type PortContainer_PortInfo_PortInfo255
- type PortContainer_PortInfo_PortInfo3
- type PortInfo1
- type PortInfo2
- type PortInfo255
- type PortInfo3
- type PortVarContainer
- type PrintNamedProperty
- type PrintPropertyType
- type PrintPropertyValue
- type PrintPropertyValue_PropertyBlob
- type PrintPropertyValue_PropertyByte
- type PrintPropertyValue_PropertyInt32
- type PrintPropertyValue_PropertyInt64
- type PrintPropertyValue_PropertyString
- type PrintPropertyValue_Value
- func (o *PrintPropertyValue_Value) GetValue() any
- func (o *PrintPropertyValue_Value) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint16) error
- func (o *PrintPropertyValue_Value) NDRSwitchValue(sw uint16) uint16
- func (o *PrintPropertyValue_Value) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint16) error
- type PrintPropertyValue_Value_PropertyBlob
- type Printer
- type PrinterContainer
- type PrinterContainer_PrinterInfo
- func (o *PrinterContainer_PrinterInfo) GetValue() any
- func (o *PrinterContainer_PrinterInfo) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error
- func (o *PrinterContainer_PrinterInfo) NDRSwitchValue(sw uint32) uint32
- func (o *PrinterContainer_PrinterInfo) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error
- type PrinterContainer_PrinterInfo_PrinterInfo1
- type PrinterContainer_PrinterInfo_PrinterInfo2
- type PrinterContainer_PrinterInfo_PrinterInfo3
- type PrinterContainer_PrinterInfo_PrinterInfo4
- type PrinterContainer_PrinterInfo_PrinterInfo5
- type PrinterContainer_PrinterInfo_PrinterInfo6
- type PrinterContainer_PrinterInfo_PrinterInfo7
- type PrinterContainer_PrinterInfo_PrinterInfo8
- type PrinterContainer_PrinterInfo_PrinterInfo9
- type PrinterContainer_PrinterInfo_PrinterInfoStress
- type PrinterInfo1
- type PrinterInfo2
- type PrinterInfo3
- type PrinterInfo4
- type PrinterInfo5
- type PrinterInfo6
- type PrinterInfo7
- type PrinterInfo8
- type PrinterInfo9
- type PrinterInfoStress
- type ReadPrinterRequest
- type ReadPrinterResponse
- type Rectangle
- type RegeneratePrintDeviceCapabilitiesRequest
- type RegeneratePrintDeviceCapabilitiesResponse
- type RemoteFindFirstPrinterChangeNotificationExRequest
- type RemoteFindFirstPrinterChangeNotificationExResponse
- type RemoteFindFirstPrinterChangeNotificationRequest
- type RemoteFindFirstPrinterChangeNotificationResponse
- type ReplyClosePrinterRequest
- type ReplyClosePrinterResponse
- type ReplyOpenPrinterRequest
- type ReplyOpenPrinterResponse
- type ResetPrinterRequest
- type ResetPrinterResponse
- type RouterRefreshPrinterChangeNotificationRequest
- type RouterRefreshPrinterChangeNotificationResponse
- type RouterReplyPrinterExRequest
- type RouterReplyPrinterExResponse
- type RouterReplyPrinterRequest
- type RouterReplyPrinterResponse
- type ScheduleJobRequest
- type ScheduleJobResponse
- type SecurityContainer
- type SendRecvBIDIDataRequest
- type SendRecvBIDIDataResponse
- type SetFormRequest
- type SetFormResponse
- type SetJobAttributesRequest
- type SetJobAttributesResponse
- type SetJobNamedPropertyRequest
- type SetJobNamedPropertyResponse
- type SetJobRequest
- type SetJobResponse
- type SetPortRequest
- type SetPortResponse
- type SetPrinterAttributesRequest
- type SetPrinterAttributesResponse
- type SetPrinterDataExRequest
- type SetPrinterDataExResponse
- type SetPrinterDataRequest
- type SetPrinterDataResponse
- type SetPrinterRequest
- type SetPrinterResponse
- type Size
- type StartDocPrinterRequest
- type StartDocPrinterResponse
- type StartPagePrinterRequest
- type StartPagePrinterResponse
- type StringContainer
- type SystemTimeContainer
- type V2NotifyInfo
- type V2NotifyInfoData
- type V2NotifyInfoDataData
- func (o *V2NotifyInfoDataData) GetValue() any
- func (o *V2NotifyInfoDataData) MarshalUnionNDR(ctx context.Context, w ndr.Writer, sw uint32) error
- func (o *V2NotifyInfoDataData) NDRSwitchValue(sw uint32) uint32
- func (o *V2NotifyInfoDataData) UnmarshalUnionNDR(ctx context.Context, w ndr.Reader, sw uint32) error
- type V2NotifyInfoDataData_Data
- type V2NotifyInfoDataData_DevMode
- type V2NotifyInfoDataData_SecurityDescriptor
- type V2NotifyInfoDataData_String
- type V2NotifyInfoDataData_SystemTime
- type V2NotifyOptions
- type V2NotifyOptionsType
- type V2ReplyPrinter
- type V2ReplyPrinter_Info
- type WaitForPrinterChangeRequest
- type WaitForPrinterChangeResponse
- type WinspoolClient
- type WinspoolServer
- type WritePrinterRequest
- type WritePrinterResponse
- type XcvDataRequest
- type XcvDataResponse
Constants ¶
This section is empty.
Variables ¶
var ( // Syntax UUID WinspoolSyntaxUUID = &uuid.UUID{TimeLow: 0x12345678, TimeMid: 0x1234, TimeHiAndVersion: 0xabcd, ClockSeqHiAndReserved: 0xef, ClockSeqLow: 0x0, Node: [6]uint8{0x1, 0x23, 0x45, 0x67, 0x89, 0xab}} // Syntax ID WinspoolSyntaxV1_0 = &dcerpc.SyntaxID{IfUUID: WinspoolSyntaxUUID, IfVersionMajor: 1, IfVersionMinor: 0} )
var (
// import guard
GoPackage = "rprn"
)
var SplfileContentTypePropertyName = "Spool File Contents"
SplfileContentTypePropertyName represents the SPLFILE_CONTENT_TYPE_PROP_NAME RPC constant
var TableDevMode = 3
TableDevMode represents the TABLE_DEVMODE RPC constant
var TableDword = 1
TableDword represents the TABLE_DWORD RPC constant
var TableSecurityDescriptor = 5
TableSecurityDescriptor represents the TABLE_SECURITYDESCRIPTOR RPC constant
var TableString = 2
TableString represents the TABLE_STRING RPC constant
var TableTime = 4
TableTime represents the TABLE_TIME RPC constant
Functions ¶
func NewWinspoolServerHandle ¶
func NewWinspoolServerHandle(o WinspoolServer) dcerpc.ServerHandle
func RegisterWinspoolServer ¶
func RegisterWinspoolServer(conn dcerpc.Conn, o WinspoolServer, opts ...dcerpc.Option)
Types ¶
type AbortPrinterRequest ¶
type AbortPrinterRequest struct { // hPrinter: A handle to a printer object or port object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` }
AbortPrinterRequest structure represents the RpcAbortPrinter operation request
func (*AbortPrinterRequest) MarshalNDR ¶
func (*AbortPrinterRequest) UnmarshalNDR ¶
type AbortPrinterResponse ¶
type AbortPrinterResponse struct { // Return: The RpcAbortPrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
AbortPrinterResponse structure represents the RpcAbortPrinter operation response
func (*AbortPrinterResponse) MarshalNDR ¶
func (*AbortPrinterResponse) UnmarshalNDR ¶
type AddFormRequest ¶
type AddFormRequest struct { // hPrinter: A handle to a printer object or server object that MUST have been opened // using the RpcAddPrinter, RpcAddPrinterEx, RpcOpenPrinter, or RpcOpenPrinterEx methods. Printer *Printer `idl:"name:hPrinter" json:"printer"` // pFormInfoContainer: This parameter MUST adhere to the parameter specification in // FORM_CONTAINER Parameters (section 3.1.4.1.8.4). FormInfoContainer *FormContainer `idl:"name:pFormInfoContainer" json:"form_info_container"` }
AddFormRequest structure represents the RpcAddForm operation request
func (*AddFormRequest) MarshalNDR ¶
func (*AddFormRequest) UnmarshalNDR ¶
type AddFormResponse ¶
type AddFormResponse struct { // Return: The RpcAddForm return value. Return uint32 `idl:"name:Return" json:"return"` }
AddFormResponse structure represents the RpcAddForm operation response
func (*AddFormResponse) MarshalNDR ¶
func (*AddFormResponse) UnmarshalNDR ¶
type AddJobRequest ¶
type AddJobRequest struct { // hPrinter: A handle to a printer object that was opened using RpcAddPrinter (section // 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), // or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // Level: A value that MUST be 0x00000001, 0x00000002 or 0x00000003. Level uint32 `idl:"name:Level" json:"level"` // pAddJob: A pointer to a buffer of undefined values. This value can be NULL if cbBuf // is zero and Level is 0x00000001. AddJob []byte `idl:"name:pAddJob;size_is:(cbBuf);pointer:unique" json:"add_job"` // cbBuf: The size, in bytes, of the buffer pointed to by pAddJob. If Level is 0x00000002 // or 0x00000003, this value SHOULD be greater than or equal to 10 bytes. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
AddJobRequest structure represents the RpcAddJob operation request
func (*AddJobRequest) MarshalNDR ¶
func (*AddJobRequest) UnmarshalNDR ¶
type AddJobResponse ¶
type AddJobResponse struct { // pAddJob: A pointer to a buffer of undefined values. This value can be NULL if cbBuf // is zero and Level is 0x00000001. AddJob []byte `idl:"name:pAddJob;size_is:(cbBuf);pointer:unique" json:"add_job"` // pcbNeeded: A pointer to a variable that SHOULD receive zero. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // Return: The RpcAddJob return value. Return uint32 `idl:"name:Return" json:"return"` }
AddJobResponse structure represents the RpcAddJob operation response
func (*AddJobResponse) MarshalNDR ¶
func (*AddJobResponse) UnmarshalNDR ¶
type AddMonitorRequest ¶
type AddMonitorRequest struct { // Name: A parameter that adheres to the specification in Print Server Name Parameters // (section 3.1.4.1.4). Name string `idl:"name:Name;string;pointer:unique" json:"name"` // pMonitorContainer: A parameter that adheres to the specification in MONITOR_CONTAINER // Parameters (section 3.1.4.1.8.9). The Level member of the MONITOR_CONTAINER MUST // be 0x00000002. MonitorContainer *MonitorContainer `idl:"name:pMonitorContainer" json:"monitor_container"` }
AddMonitorRequest structure represents the RpcAddMonitor operation request
func (*AddMonitorRequest) MarshalNDR ¶
func (*AddMonitorRequest) UnmarshalNDR ¶
type AddMonitorResponse ¶
type AddMonitorResponse struct { // Return: The RpcAddMonitor return value. Return uint32 `idl:"name:Return" json:"return"` }
AddMonitorResponse structure represents the RpcAddMonitor operation response
func (*AddMonitorResponse) MarshalNDR ¶
func (*AddMonitorResponse) UnmarshalNDR ¶
type AddPerMachineConnectionRequest ¶
type AddPerMachineConnectionRequest struct { // pServer: A value that adheres to the specification in Print Server Name Parameters // (section 3.1.4.1.4). Server string `idl:"name:pServer;string;pointer:unique" json:"server"` // pPrinterName: A value that adheres to the specification in Printer Name Parameters // (section 3.1.4.1.5). A printer connection of the form: PrinterName string `idl:"name:pPrinterName;string" json:"printer_name"` // pPrintServer: A pointer to a string that specifies the name of the print server that // is hosting the printer to which the connection is established. For rules governing // server names, see section 2.2.4.16. PrintServer string `idl:"name:pPrintServer;string" json:"print_server"` // pProvider: A pointer to a string that specifies the name of a print provider. If // the string is the empty string "", an implementation-specific default print provider // name is used.<312> For rules governing print provider names, see section 2.2.4.12. Provider string `idl:"name:pProvider;string" json:"provider"` }
AddPerMachineConnectionRequest structure represents the RpcAddPerMachineConnection operation request
func (*AddPerMachineConnectionRequest) MarshalNDR ¶
func (*AddPerMachineConnectionRequest) UnmarshalNDR ¶
type AddPerMachineConnectionResponse ¶
type AddPerMachineConnectionResponse struct { // Return: The RpcAddPerMachineConnection return value. Return uint32 `idl:"name:Return" json:"return"` }
AddPerMachineConnectionResponse structure represents the RpcAddPerMachineConnection operation response
func (*AddPerMachineConnectionResponse) MarshalNDR ¶
func (*AddPerMachineConnectionResponse) UnmarshalNDR ¶
type AddPortExRequest ¶
type AddPortExRequest struct { // pName: A parameter specified in Print Server Name Parameters (section 3.1.4.1.4). Name string `idl:"name:pName;string;pointer:unique" json:"name"` // pPortContainer: A parameter specified in PORT_CONTAINER Parameters (section 3.1.4.1.8.5). // The value of the Level member in the PORT_CONTAINER that is referenced by this parameter // MUST be 0x00000001 or 0xFFFFFFFF. PortContainer *PortContainer `idl:"name:pPortContainer" json:"port_container"` // pPortVarContainer: A pointer to a PORT_VAR_CONTAINER (section 2.2.1.2.8) information // structure that contains information about the port. PortVarContainer *PortVarContainer `idl:"name:pPortVarContainer" json:"port_var_container"` // pMonitorName: A pointer to a string that specifies the monitor associated with the // port. For rules governing monitor names, see section 2.2.4.8. MonitorName string `idl:"name:pMonitorName;string" json:"monitor_name"` }
AddPortExRequest structure represents the RpcAddPortEx operation request
func (*AddPortExRequest) MarshalNDR ¶
func (*AddPortExRequest) UnmarshalNDR ¶
type AddPortExResponse ¶
type AddPortExResponse struct { // Return: The RpcAddPortEx return value. Return uint32 `idl:"name:Return" json:"return"` }
AddPortExResponse structure represents the RpcAddPortEx operation response
func (*AddPortExResponse) MarshalNDR ¶
func (*AddPortExResponse) UnmarshalNDR ¶
type AddPrintProcessorRequest ¶
type AddPrintProcessorRequest struct { // pName: This parameter MUST adhere to the parameter specification in Print Server // Name Parameters (section 3.1.4.1.4). Name string `idl:"name:pName;string;pointer:unique" json:"name"` // pEnvironment: This parameter MUST adhere to the parameter specification in Environment // Name Parameters (section 3.1.4.1.3). Environment string `idl:"name:pEnvironment;string" json:"environment"` // pPathName: A pointer to a string that specifies the file name of the print processor. // For rules governing path names, see section 2.2.4.9. PathName string `idl:"name:pPathName;string" json:"path_name"` // pPrintProcessorName: A pointer to a string that specifies the name of the print processor. // For rules governing print processor names, see section 2.2.4.11. PrintProcessorName string `idl:"name:pPrintProcessorName;string" json:"print_processor_name"` }
AddPrintProcessorRequest structure represents the RpcAddPrintProcessor operation request
func (*AddPrintProcessorRequest) MarshalNDR ¶
func (*AddPrintProcessorRequest) UnmarshalNDR ¶
type AddPrintProcessorResponse ¶
type AddPrintProcessorResponse struct { // Return: The RpcAddPrintProcessor return value. Return uint32 `idl:"name:Return" json:"return"` }
AddPrintProcessorResponse structure represents the RpcAddPrintProcessor operation response
func (*AddPrintProcessorResponse) MarshalNDR ¶
func (*AddPrintProcessorResponse) UnmarshalNDR ¶
type AddPrinterDriverExRequest ¶
type AddPrinterDriverExRequest struct { // pName: A string that conforms to the parameter specification in Print Server Name // Parameters (section 3.1.4.1.4). Name string `idl:"name:pName;string;pointer:unique" json:"name"` // pDriverContainer: A pointer to a DRIVER_CONTAINER structure (section 2.2.1.2.3) that // MUST conform to the specification in DRIVER_CONTAINER parameters (section 3.1.4.1.8.3). // // The Level member of the DRIVER_CONTAINER refers to the level of driver information // structure, as follows: // // +------------+----------------------------------------+ // | | | // | VALUE | DESCRIPTION | // | | | // +------------+----------------------------------------+ // +------------+----------------------------------------+ // | 0x00000002 | DRIVER_INFO_2 (section 2.2.1.5.2). | // +------------+----------------------------------------+ // | 0x00000003 | RPC_DRIVER_INFO_3 (section 2.2.1.5.3). | // +------------+----------------------------------------+ // | 0x00000004 | RPC_DRIVER_INFO_4 (section 2.2.1.5.4). | // +------------+----------------------------------------+ // | 0x00000006 | RPC_DRIVER_INFO_6 (section 2.2.1.5.5). | // +------------+----------------------------------------+ // | 0x00000008 | RPC_DRIVER_INFO_8 (section 2.2.1.5.6). | // +------------+----------------------------------------+ DriverContainer *DriverContainer `idl:"name:pDriverContainer" json:"driver_container"` // dwFileCopyFlags: A bit field that specifies options for copying replacement printer // driver files. The value of this parameter is a combination of flags from the following // tables. // // Exactly one of the following flags MUST be specified: // // +---------------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +---------------------------------+----------------------------------------------------------------------------------+ // +---------------------------------+----------------------------------------------------------------------------------+ // | APD_STRICT_UPGRADE 0x00000001 | Add the replacement printer driver only if none of the files of the replacement | // | | driver are older than any corresponding files of the currently installed driver. | // +---------------------------------+----------------------------------------------------------------------------------+ // | APD_STRICT_DOWNGRADE 0x00000002 | Add the replacement printer driver only if none of the files of the currently | // | | installed driver are older than any corresponding files of the replacement | // | | driver. | // +---------------------------------+----------------------------------------------------------------------------------+ // | APD_COPY_ALL_FILES 0x00000004 | Add the printer driver and copy all the files in the driver directory. File time | // | | stamps MUST be ignored. | // +---------------------------------+----------------------------------------------------------------------------------+ // | APD_COPY_NEW_FILES 0x00000008 | Add the printer driver and copy the files in the driver directory that are newer | // | | than any of the corresponding files that are currently in use. | // +---------------------------------+----------------------------------------------------------------------------------+ // // Zero or more of the following flags can be specified. // // +--------------------------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +--------------------------------------------+----------------------------------------------------------------------------------+ // +--------------------------------------------+----------------------------------------------------------------------------------+ // | APD_COPY_FROM_DIRECTORY 0x00000010 | Add the printer driver by using the fully qualified file names that are | // | | specified in the _DRIVER_INFO_6 structure. If this flag is specified, one of the | // | | other copy flags in this bit field MUST be specified. | // +--------------------------------------------+----------------------------------------------------------------------------------+ // | APD_DONT_COPY_FILES_TO_CLUSTER 0x00001000 | When adding a printer driver to a print server cluster, do not copy the driver | // | | files to the shared cluster disk. | // +--------------------------------------------+----------------------------------------------------------------------------------+ // | APD_COPY_TO_ALL_SPOOLERS 0x00002000 | Add the printer driver to cluster spooler servers. | // +--------------------------------------------+----------------------------------------------------------------------------------+ // | APD_INSTALL_WARNED_DRIVER 0x00008000 | Add the printer driver, even if it is in the server's List of Warned Printer | // | | Drivers (section 3.1.1).<343> | // +--------------------------------------------+----------------------------------------------------------------------------------+ // | APD_RETURN_BLOCKING_STATUS_CODE 0x00010000 | Specifies the implementation-specific error code to return if the printer driver | // | | is blocked from installation by server policy.<344> | // +--------------------------------------------+----------------------------------------------------------------------------------+ FileCopyFlags uint32 `idl:"name:dwFileCopyFlags" json:"file_copy_flags"` }
AddPrinterDriverExRequest structure represents the RpcAddPrinterDriverEx operation request
func (*AddPrinterDriverExRequest) MarshalNDR ¶
func (*AddPrinterDriverExRequest) UnmarshalNDR ¶
type AddPrinterDriverExResponse ¶
type AddPrinterDriverExResponse struct { // Return: The RpcAddPrinterDriverEx return value. Return uint32 `idl:"name:Return" json:"return"` }
AddPrinterDriverExResponse structure represents the RpcAddPrinterDriverEx operation response
func (*AddPrinterDriverExResponse) MarshalNDR ¶
func (*AddPrinterDriverExResponse) UnmarshalNDR ¶
type AddPrinterDriverRequest ¶
type AddPrinterDriverRequest struct { // pName: Specified in Print Server Name Parameters (section 3.1.4.1.4). Name string `idl:"name:pName;string;pointer:unique" json:"name"` // pDriverContainer: Specified in DRIVER_CONTAINER Parameters (section 3.1.4.1.8.3). // The Level member of the DRIVER_CONTAINER MUST be 0x00000002, 0x00000003, or 0x00000004. DriverContainer *DriverContainer `idl:"name:pDriverContainer" json:"driver_container"` }
AddPrinterDriverRequest structure represents the RpcAddPrinterDriver operation request
func (*AddPrinterDriverRequest) MarshalNDR ¶
func (*AddPrinterDriverRequest) UnmarshalNDR ¶
type AddPrinterDriverResponse ¶
type AddPrinterDriverResponse struct { // Return: The RpcAddPrinterDriver return value. Return uint32 `idl:"name:Return" json:"return"` }
AddPrinterDriverResponse structure represents the RpcAddPrinterDriver operation response
func (*AddPrinterDriverResponse) MarshalNDR ¶
func (*AddPrinterDriverResponse) UnmarshalNDR ¶
type AddPrinterExRequest ¶
type AddPrinterExRequest struct { // pName: A parameter specified in Print Server Name Parameters (section 3.1.4.1.4). Name string `idl:"name:pName;string;pointer:unique" json:"name"` // pPrinterContainer: A parameter specified in PRINTER_CONTAINER Parameters (section // 3.1.4.1.8.6). The Level member of the PRINTER_CONTAINER MUST be 0x00000001 or 0x00000002. PrinterContainer *PrinterContainer `idl:"name:pPrinterContainer" json:"printer_container"` // pDevModeContainer: A parameter specified in DEVMODE_CONTAINER Parameters (section // 3.1.4.1.8.1). DevModeContainer *DevModeContainer `idl:"name:pDevModeContainer" json:"dev_mode_container"` // pSecurityContainer: A parameter specified in SECURITY_CONTAINER Parameters (section // 3.1.4.1.8.7). SecurityContainer *SecurityContainer `idl:"name:pSecurityContainer" json:"security_container"` // pClientInfo: A parameter specified in SPLCLIENT_CONTAINER Parameters (section 3.1.4.1.8.8). ClientInfo *ClientContainer `idl:"name:pClientInfo" json:"client_info"` }
AddPrinterExRequest structure represents the RpcAddPrinterEx operation request
func (*AddPrinterExRequest) MarshalNDR ¶
func (*AddPrinterExRequest) UnmarshalNDR ¶
type AddPrinterExResponse ¶
type AddPrinterExResponse struct { // pHandle: A pointer to a variable that MUST receive the printer remote procedure call // (RPC) context handle to the printer object added. RPC context handles are specified // in [C706]. Handle *Printer `idl:"name:pHandle" json:"handle"` // Return: The RpcAddPrinterEx return value. Return uint32 `idl:"name:Return" json:"return"` }
AddPrinterExResponse structure represents the RpcAddPrinterEx operation response
func (*AddPrinterExResponse) MarshalNDR ¶
func (*AddPrinterExResponse) UnmarshalNDR ¶
type AddPrinterRequest ¶
type AddPrinterRequest struct { // pName: A parameter specified in Print Server Name Parameters (section 3.1.4.1.4). Name string `idl:"name:pName;string;pointer:unique" json:"name"` // pPrinterContainer: A parameter specified in PRINTER_CONTAINER Parameters (section // 3.1.4.1.8.6). The Level member of the PRINTER_CONTAINER MUST be 0x00000001 or 0x00000002. PrinterContainer *PrinterContainer `idl:"name:pPrinterContainer" json:"printer_container"` // pDevModeContainer: A parameter specified in DEVMODE_CONTAINER Parameters (section // 3.1.4.1.8.1). DevModeContainer *DevModeContainer `idl:"name:pDevModeContainer" json:"dev_mode_container"` // pSecurityContainer: A parameter specified in SECURITY_CONTAINER Parameters (section // 3.1.4.1.8.7). SecurityContainer *SecurityContainer `idl:"name:pSecurityContainer" json:"security_container"` }
AddPrinterRequest structure represents the RpcAddPrinter operation request
func (*AddPrinterRequest) MarshalNDR ¶
func (*AddPrinterRequest) UnmarshalNDR ¶
type AddPrinterResponse ¶
type AddPrinterResponse struct { // pHandle: A pointer to a variable that receives the printer RPC context handle to // the printer object added. RPC context handles are specified in [C706]. Handle *Printer `idl:"name:pHandle" json:"handle"` // Return: The RpcAddPrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
AddPrinterResponse structure represents the RpcAddPrinter operation response
func (*AddPrinterResponse) MarshalNDR ¶
func (*AddPrinterResponse) UnmarshalNDR ¶
type BIDIData ¶
type BIDIData struct { // dwBidiType: The type of data in a bidirectional request. The value of this member // specifies a valid structure for the u union. The value of this member MUST be one // of the BIDI_TYPE enumeration values specified in section 2.2.3.13. BIDIType uint32 `idl:"name:dwBidiType" json:"bidi_type"` // u: The bidirectional data in the format specified by the value of the dwBidiType // member. Union *BIDIData_Union `idl:"name:u;switch_is:dwBidiType" json:"union"` }
BIDIData structure represents RPC_BIDI_DATA RPC structure.
The RPC_BIDI_DATA structure is used to store the values of a bidirectional schema.<72>
func (*BIDIData) MarshalNDR ¶
type BIDIData_Union ¶
type BIDIData_Union struct { // Types that are assignable to Value // // *BIDIData_Union_BoolData // *BIDIData_Union_IntData // *BIDIData_Union_StringData // *BIDIData_Union_FloatData // *BIDIData_Union_BinaryData Value is_BIDIData_Union `json:"value"` }
BIDIData_Union structure represents RPC_BIDI_DATA union anonymous member.
The RPC_BIDI_DATA structure is used to store the values of a bidirectional schema.<72>
func (*BIDIData_Union) GetValue ¶
func (o *BIDIData_Union) GetValue() any
func (*BIDIData_Union) MarshalUnionNDR ¶
func (*BIDIData_Union) NDRSwitchValue ¶
func (o *BIDIData_Union) NDRSwitchValue(sw uint32) uint32
func (*BIDIData_Union) UnmarshalUnionNDR ¶
type BIDIData_Union_BinaryData ¶
type BIDIData_Union_BinaryData struct {
BinaryData *BinaryContainer `idl:"name:binaryData" json:"binary_data"`
}
BIDIData_Union_BinaryData structure represents BIDIData_Union RPC union arm.
It has following labels: 7
func (*BIDIData_Union_BinaryData) MarshalNDR ¶
func (*BIDIData_Union_BinaryData) UnmarshalNDR ¶
type BIDIData_Union_BoolData ¶
type BIDIData_Union_BoolData struct {
BoolData int32 `idl:"name:boolData" json:"bool_data"`
}
BIDIData_Union_BoolData structure represents BIDIData_Union RPC union arm.
It has following labels: 0, 3
func (*BIDIData_Union_BoolData) MarshalNDR ¶
func (*BIDIData_Union_BoolData) UnmarshalNDR ¶
type BIDIData_Union_FloatData ¶
type BIDIData_Union_FloatData struct {
FloatData float32 `idl:"name:floatData" json:"float_data"`
}
BIDIData_Union_FloatData structure represents BIDIData_Union RPC union arm.
It has following labels: 2
func (*BIDIData_Union_FloatData) MarshalNDR ¶
func (*BIDIData_Union_FloatData) UnmarshalNDR ¶
type BIDIData_Union_IntData ¶
type BIDIData_Union_IntData struct {
IntData int32 `idl:"name:intData" json:"int_data"`
}
BIDIData_Union_IntData structure represents BIDIData_Union RPC union arm.
It has following labels: 1
func (*BIDIData_Union_IntData) MarshalNDR ¶
func (*BIDIData_Union_IntData) UnmarshalNDR ¶
type BIDIData_Union_StringData ¶
type BIDIData_Union_StringData struct {
StringData string `idl:"name:stringData;string;pointer:unique" json:"string_data"`
}
BIDIData_Union_StringData structure represents BIDIData_Union RPC union arm.
It has following labels: 4, 5, 6
func (*BIDIData_Union_StringData) MarshalNDR ¶
func (*BIDIData_Union_StringData) UnmarshalNDR ¶
type BIDIRequestContainer ¶
type BIDIRequestContainer struct { // Version: The version of the bidirectional API schema. The value of this member MUST // be 0x00000001. Version uint32 `idl:"name:Version" json:"version"` // Flags: A value that MUST be set to zero when sent and MUST be ignored on receipt. Flags uint32 `idl:"name:Flags" json:"flags"` // Count: The number of bidirectional requests in the aData member. Count uint32 `idl:"name:Count" json:"count"` // aData: An array of RPC_BIDI_REQUEST_DATA structures. Each structure in this member // contains a single bidirectional request. For details, see section 2.2.1.12.1. Data []*BIDIRequestData `idl:"name:aData;size_is:(Count);pointer:unique" json:"data"` }
BIDIRequestContainer structure represents RPC_BIDI_REQUEST_CONTAINER RPC structure.
The RPC_BIDI_REQUEST_CONTAINER structure is a container for a list of bidirectional requests.<6>
func (*BIDIRequestContainer) MarshalNDR ¶
func (*BIDIRequestContainer) NDRSizeInfo ¶
func (o *BIDIRequestContainer) NDRSizeInfo() []uint64
func (*BIDIRequestContainer) UnmarshalNDR ¶
type BIDIRequestData ¶
type BIDIRequestData struct { // dwReqNumber: The index of the request, which is used to match a response to a request // in a multirequest operation. RequestNumber uint32 `idl:"name:dwReqNumber" json:"request_number"` // pSchema: A pointer to the schema string that identifies the requested information.<68> Schema string `idl:"name:pSchema;string;pointer:unique" json:"schema"` // data: The data that is associated with the schema. Data *BIDIData `idl:"name:data" json:"data"` }
BIDIRequestData structure represents RPC_BIDI_REQUEST_DATA RPC structure.
The RPC_BIDI_REQUEST_DATA structure holds a single bidirectional request.<67> The request is part of a bidirectional communication request using the RpcSendRecvBidiData (section 3.1.4.2.27) method. One or more RPC_BIDI_REQUEST_DATA structures MUST be contained in a RPC_BIDI_REQUEST_CONTAINER (section 2.2.1.2.10).
func (*BIDIRequestData) MarshalNDR ¶
func (*BIDIRequestData) UnmarshalNDR ¶
type BIDIResponseContainer ¶
type BIDIResponseContainer struct { // Version: This member MUST contain the value that specifies the version of the bidirectional // API schema. The value of this member MUST be 0x00000001. Version uint32 `idl:"name:Version" json:"version"` // Flags: This member is a set of flags that are reserved for system use. The value // of this member MUST be set to zero when sent and MUST be ignored on receipt. Flags uint32 `idl:"name:Flags" json:"flags"` // Count: This member specifies the number of bidirectional responses in the aData member. Count uint32 `idl:"name:Count" json:"count"` // aData: This member is an array of RPC_BIDI_RESPONSE_DATA structures. Each structure // in this member MUST contain a single bidirectional response. For more information, // see section 2.2.1.12.2. Data []*BIDIResponseData `idl:"name:aData;size_is:(Count);pointer:unique" json:"data"` }
BIDIResponseContainer structure represents RPC_BIDI_RESPONSE_CONTAINER RPC structure.
The RPC_BIDI_RESPONSE_CONTAINER structure is a container for a list of bidirectional responses.<7>
func (*BIDIResponseContainer) MarshalNDR ¶
func (*BIDIResponseContainer) NDRSizeInfo ¶
func (o *BIDIResponseContainer) NDRSizeInfo() []uint64
func (*BIDIResponseContainer) UnmarshalNDR ¶
type BIDIResponseData ¶
type BIDIResponseData struct { // dwResult: The result of the operation that used this structure. If the operation // was successful, the value of this member MUST be set to zero; otherwise, the value // of this member MUST be set to a nonzero value.<70> Result uint32 `idl:"name:dwResult" json:"result"` // dwReqNumber: The index of the response, which is used to match the response to the // request in a multi-request operation. RequestNumber uint32 `idl:"name:dwReqNumber" json:"request_number"` // pSchema: A pointer to the schema string that identifies the requested information.<71> Schema string `idl:"name:pSchema;string;pointer:unique" json:"schema"` // data: The data that is associated with the schema. This can be a single piece of // data or a homogeneous data list. The data MUST be composed of a name, a type, and // a value; for example, "\Printer.Stapler:CurrentValue". It is referenced by its name // under Properties. Data *BIDIData `idl:"name:data" json:"data"` }
BIDIResponseData structure represents RPC_BIDI_RESPONSE_DATA RPC structure.
The RPC_BIDI_RESPONSE_DATA structure holds a single bidirectional response.<69>
func (*BIDIResponseData) MarshalNDR ¶
func (*BIDIResponseData) UnmarshalNDR ¶
type BIDIType ¶
type BIDIType uint16
BIDIType type represents BIDI_TYPE RPC enumeration.
The BIDI_TYPE enumeration specifies the type of data transferred in a bidirectional operation.
var ( // BIDI_NULL: No bidirectional data. BIDITypeNull BIDIType = 0 // BIDI_INT: Bidirectional data is an integer. BIDITypeInt BIDIType = 1 // BIDI_FLOAT: Bidirectional data is a floating-point number. BIDITypeFloat BIDIType = 2 // BIDI_BOOL: Bidirectional data is a Boolean value. BIDITypeBool BIDIType = 3 // BIDI_STRING: Bidirectional data is a string. BIDITypeString BIDIType = 4 // BIDI_TEXT: Bidirectional data is text data. BIDITypeText BIDIType = 5 // BIDI_ENUM: Bidirectional data is an enumeration. BIDITypeEnum BIDIType = 6 // BIDI_BLOB: Bidirectional data is a data BLOB. BIDITypeBlob BIDIType = 7 )
type BinaryContainer ¶
type BinaryContainer struct { // cbBuf: This member specifies the size, in bytes, of the buffer that is pointed to // by the pszString member. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` // pszString: A pointer to an array of bytes that contain binary printer data. String []byte `idl:"name:pszString;size_is:(cbBuf);pointer:unique" json:"string"` }
BinaryContainer structure represents RPC_BINARY_CONTAINER RPC structure.
The RPC_BINARY_CONTAINER structure is a container for binary printer data and is used in the RPC_BIDI_DATA (section 2.2.1.12.3) structure.<8>
func (*BinaryContainer) MarshalNDR ¶
func (*BinaryContainer) UnmarshalNDR ¶
type BranchOfficeJobData ¶
type BranchOfficeJobData struct { // eEventType: The type of Windows Event to which the Branch Office Print Remote Log // Entry corresponds, which MUST be an EBranchOfficeJobEventType (section 2.2.1.15.1) // value. EventType BranchOfficeJobEventType `idl:"name:eEventType" json:"event_type"` // JobId: The identifier of a print job. JobID uint32 `idl:"name:JobId" json:"job_id"` // JobInfo: The branch office print remote logging structure that contains the data // required to log a Branch Office Print Remote Log Entry corresponding to the eEventType // member value. JobInfo *BranchOfficeJobData_JobInfo `idl:"name:JobInfo;switch_is:eEventType" json:"job_info"` }
BranchOfficeJobData structure represents RPC_BranchOfficeJobData RPC structure.
The RPC_BranchOfficeJobData structure holds a branch office print remote logging structure that contains the data required to log a single Branch Office Print Remote Log Entry (section 3.1.1) corresponding to a specific type of Windows Event.<85>
func (*BranchOfficeJobData) MarshalNDR ¶
func (*BranchOfficeJobData) UnmarshalNDR ¶
type BranchOfficeJobDataContainer ¶
type BranchOfficeJobDataContainer struct { // cJobDataEntries: The number of RPC_BranchOfficeJobData structures in the JobData // member. JobDataEntriesCount uint32 `idl:"name:cJobDataEntries" json:"job_data_entries_count"` // JobData: An array of RPC_BranchOfficeJobData structures. Each structure in the array // contains a single Branch Office Print Remote Log Entry (section 3.1.1). JobData []*BranchOfficeJobData `idl:"name:JobData;size_is:(cJobDataEntries);pointer:unique" json:"job_data"` }
BranchOfficeJobDataContainer structure represents RPC_BranchOfficeJobDataContainer RPC structure.
The RPC_BranchOfficeJobDataContainer structure is a container for an array of RPC_BranchOfficeJobData structures (section 2.2.1.15.2).<12>
func (*BranchOfficeJobDataContainer) MarshalNDR ¶
func (*BranchOfficeJobDataContainer) NDRSizeInfo ¶
func (o *BranchOfficeJobDataContainer) NDRSizeInfo() []uint64
func (*BranchOfficeJobDataContainer) UnmarshalNDR ¶
type BranchOfficeJobDataError ¶
type BranchOfficeJobDataError struct { // LastError: A 32-bit unsigned integer that specifies an implementation-specific error // code for the last error that occurred during processing of this print job. LastError uint32 `idl:"name:LastError" json:"last_error"` // pDocumentName: A pointer to a string that specifies the name of the print document // for this print job. DocumentName string `idl:"name:pDocumentName;string" json:"document_name"` // pUserName: A pointer to a string that specifies the name of the user that owns the // print job. For rules governing user names, see section 2.2.4.17. UserName string `idl:"name:pUserName;string" json:"user_name"` // pPrinterName: A pointer to a string that specifies the name of the printer used for // the print job. For rules governing printer names, see section 2.2.4.14. PrinterName string `idl:"name:pPrinterName;string" json:"printer_name"` // pDataType: A pointer to a string that specifies the type of data that the printing // application sent to the printer in the print job. The identified data type MUST be // supported by the print processor that is associated with the printer that is processing // the job. For rules governing data type names, see section 2.2.4.2. DataType string `idl:"name:pDataType;string" json:"data_type"` // TotalSize: A 64-bit signed integer that specifies the size of the print job, in bytes. // This value MUST be greater than zero. TotalSize int64 `idl:"name:TotalSize" json:"total_size"` // PrintedSize: A 64-bit signed integer that specifies the amount of data for the print // job that actually got processed and sent to the printer, in bytes. This value MUST // be zero or greater. PrintedSize int64 `idl:"name:PrintedSize" json:"printed_size"` // TotalPages: A 32-bit unsigned integer that specifies the number of pages the document // contains. TotalPages uint32 `idl:"name:TotalPages" json:"total_pages"` // PrintedPages: A 32-bit unsigned integer that specifies the number of pages of the // document that actually got processed and sent to the printer. PrintedPages uint32 `idl:"name:PrintedPages" json:"printed_pages"` // pMachineName: A pointer to a string that specifies the name of the client computer // that owns the print job. For rules governing computer names, see section 2.2.4.16. MachineName string `idl:"name:pMachineName;string" json:"machine_name"` // pJobError: A pointer to a string that specifies the text representation of the value // of the LastError error code. JobError string `idl:"name:pJobError;string" json:"job_error"` // pErrorDescription: A pointer to an optional string that specifies message text for // a system-defined error corresponding to the value of the LastError error code. ErrorDescription string `idl:"name:pErrorDescription;string" json:"error_description"` }
BranchOfficeJobDataError structure represents RPC_BranchOfficeJobDataError RPC structure.
The RPC_BranchOfficeJobDataError structure holds a single Branch Office Print Remote Log Entry (section 3.1.1).<86> This entry contains the information needed to create event ID 372 in the Microsoft-Windows-PrintService/Admin event channel.
func (*BranchOfficeJobDataError) MarshalNDR ¶
func (*BranchOfficeJobDataError) UnmarshalNDR ¶
type BranchOfficeJobDataPipelineFailed ¶
type BranchOfficeJobDataPipelineFailed struct { // pDocumentName: A pointer to a string that specifies the name of the print document // for this print job. DocumentName string `idl:"name:pDocumentName;string" json:"document_name"` // pPrinterName: A pointer to a string that specifies the name of the printer used for // the print job. For rules governing printer names, see section 2.2.4.14. PrinterName string `idl:"name:pPrinterName;string" json:"printer_name"` // pExtraErrorInfo: A pointer to an optional string that specifies additional text associated // with the failure in the Print Pipeline. ExtraErrorInfo string `idl:"name:pExtraErrorInfo;string" json:"extra_error_info"` }
BranchOfficeJobDataPipelineFailed structure represents RPC_BranchOfficeJobDataPipelineFailed RPC structure.
The RPC_BranchOfficeJobDataPipelineFailed structure holds a single Branch Office Print Remote Log Entry (section 3.1.1).<87> This entry contains the information needed to create event ID 824 in the Microsoft-Windows-PrintService/Operational event channel.
func (*BranchOfficeJobDataPipelineFailed) MarshalNDR ¶
func (*BranchOfficeJobDataPipelineFailed) UnmarshalNDR ¶
type BranchOfficeJobDataPrinted ¶
type BranchOfficeJobDataPrinted struct { // Status: A 32-bit unsigned integer that specifies an implementation-specific error // code for the last error that occurred during the processing of this print job. Status uint32 `idl:"name:Status" json:"status"` // pDocumentName: A string that specifies the name of the print document for this print // job. DocumentName string `idl:"name:pDocumentName;string" json:"document_name"` // pUserName: A pointer to a string that specifies the name of the user that owns the // print job. For rules governing user names, see section 2.2.4.17. UserName string `idl:"name:pUserName;string" json:"user_name"` // pMachineName: A pointer to a string that specifies the name of the client computer // that owns the print job. For rules governing computer names, see section 2.2.4.16. MachineName string `idl:"name:pMachineName;string" json:"machine_name"` // pPrinterName: A pointer to a string that specifies the name of the printer used for // the print job. For rules governing printer names, see section 2.2.4.14. PrinterName string `idl:"name:pPrinterName;string" json:"printer_name"` // pPortName: A pointer to a string that specifies a supported printer port. For rules // governing port names, see section 2.2.4.10. PortName string `idl:"name:pPortName;string" json:"port_name"` // Size: A 64-bit signed integer that specifies the size of the print job, in bytes. Size int64 `idl:"name:Size" json:"size"` // TotalPages: A 32-bit unsigned integer that specifies the number of pages the document // contains. TotalPages uint32 `idl:"name:TotalPages" json:"total_pages"` }
BranchOfficeJobDataPrinted structure represents RPC_BranchOfficeJobDataPrinted RPC structure.
The RPC_BranchOfficeJobDataPrinted structure holds a single Branch Office Print Remote Log Entry (section 3.1.1).<88> This entry contains the information needed to create event ID 307 in the Microsoft-Windows-PrintService/Operational event channel.
func (*BranchOfficeJobDataPrinted) MarshalNDR ¶
func (*BranchOfficeJobDataPrinted) UnmarshalNDR ¶
type BranchOfficeJobDataRendered ¶
type BranchOfficeJobDataRendered struct { // Size: A 64-bit signed integer that specifies the size of the print job, in bytes. Size int64 `idl:"name:Size" json:"size"` // ICMMethod: A 32-bit unsigned integer that specifies how Image Color Management (ICM) // is handled for the print job. See the definition of the dmICMMethod field in section // 2.2.2.1. ICMMethod uint32 `idl:"name:ICMMethod" json:"icm_method"` // Color: A 16-bit signed integer that specifies the color mode to use for the print // job. See the definition of the dmColor field in section 2.2.2.1. Color int16 `idl:"name:Color" json:"color"` // PrintQuality: A 16-bit signed integer that specifies the printer resolution for the // print job. See the definition of the dmPrintQuality field in section 2.2.2.1. PrintQuality int16 `idl:"name:PrintQuality" json:"print_quality"` // YResolution: A 16-bit signed integer that specifies the vertical-resolution in dots // per inch for the print job. See the definition of the dmYResolution field in section // 2.2.2.1. YResolution int16 `idl:"name:YResolution" json:"y_resolution"` // Copies: A 16-bit signed integer that specifies the number of copies to be printed // for the print job. See the definition of the dmCopies field in section 2.2.2.1. Copies int16 `idl:"name:Copies" json:"copies"` // TTOption: A 16-bit signed integer that specifies how TrueType fonts are printed for // the print job. See the definition of the dmTTOption field in section 2.2.2.1. TTOption int16 `idl:"name:TTOption" json:"tt_option"` }
BranchOfficeJobDataRendered structure represents RPC_BranchOfficeJobDataRendered RPC structure.
The RPC_BranchOfficeJobDataRendered structure holds a single Branch Office Print Remote Log Entry (section 3.1.1).<89> This entry contains the information needed to create event ID 805 in the Microsoft-Windows-PrintService/Operational event channel.
func (*BranchOfficeJobDataRendered) MarshalNDR ¶
func (*BranchOfficeJobDataRendered) UnmarshalNDR ¶
type BranchOfficeJobData_JobInfo ¶
type BranchOfficeJobData_JobInfo struct { // Types that are assignable to Value // // *BranchOfficeJobData_JobInfo_LogJobPrinted // *BranchOfficeJobData_JobInfo_LogJobRendered // *BranchOfficeJobData_JobInfo_LogJobError // *BranchOfficeJobData_JobInfo_LogPipelineFailed // *BranchOfficeJobData_JobInfo_LogOfflineFileFull Value is_BranchOfficeJobData_JobInfo `json:"value"` }
BranchOfficeJobData_JobInfo structure represents RPC_BranchOfficeJobData union anonymous member.
The RPC_BranchOfficeJobData structure holds a branch office print remote logging structure that contains the data required to log a single Branch Office Print Remote Log Entry (section 3.1.1) corresponding to a specific type of Windows Event.<85>
func (*BranchOfficeJobData_JobInfo) GetValue ¶
func (o *BranchOfficeJobData_JobInfo) GetValue() any
func (*BranchOfficeJobData_JobInfo) MarshalUnionNDR ¶
func (*BranchOfficeJobData_JobInfo) NDRSwitchValue ¶
func (o *BranchOfficeJobData_JobInfo) NDRSwitchValue(sw uint16) uint16
func (*BranchOfficeJobData_JobInfo) UnmarshalUnionNDR ¶
type BranchOfficeJobData_JobInfo_LogJobError ¶
type BranchOfficeJobData_JobInfo_LogJobError struct { // LogJobError: An RPC_BranchOfficeJobDataError (section 2.2.1.15.3) structure for a // Branch Office Print Remote Log Entry corresponding to event ID 372. This structure // is present only if eEventType is set to kLogJobError. LogJobError *BranchOfficeJobDataError `idl:"name:LogJobError" json:"log_job_error"` }
BranchOfficeJobData_JobInfo_LogJobError structure represents BranchOfficeJobData_JobInfo RPC union arm.
It has following labels: 3
func (*BranchOfficeJobData_JobInfo_LogJobError) MarshalNDR ¶
func (*BranchOfficeJobData_JobInfo_LogJobError) UnmarshalNDR ¶
type BranchOfficeJobData_JobInfo_LogJobPrinted ¶
type BranchOfficeJobData_JobInfo_LogJobPrinted struct { // LogJobPrinted: An RPC_BranchOfficeJobDataPrinted (section 2.2.1.15.5) structure for // a Branch Office Print Remote Log Entry corresponding to event ID 307. This structure // is present only if eEventType is set to kLogJobPrinted. LogJobPrinted *BranchOfficeJobDataPrinted `idl:"name:LogJobPrinted" json:"log_job_printed"` }
BranchOfficeJobData_JobInfo_LogJobPrinted structure represents BranchOfficeJobData_JobInfo RPC union arm.
It has following labels: 1
func (*BranchOfficeJobData_JobInfo_LogJobPrinted) MarshalNDR ¶
func (*BranchOfficeJobData_JobInfo_LogJobPrinted) UnmarshalNDR ¶
type BranchOfficeJobData_JobInfo_LogJobRendered ¶
type BranchOfficeJobData_JobInfo_LogJobRendered struct { // LogJobRendered: An RPC_BranchOfficeJobDataRendered (section 2.2.1.15.6) structure // for a Branch Office Print Remote Log Entry corresponding to event ID 805. This structure // is present only if eEventType is set to kLogJobRendered. LogJobRendered *BranchOfficeJobDataRendered `idl:"name:LogJobRendered" json:"log_job_rendered"` }
BranchOfficeJobData_JobInfo_LogJobRendered structure represents BranchOfficeJobData_JobInfo RPC union arm.
It has following labels: 2
func (*BranchOfficeJobData_JobInfo_LogJobRendered) MarshalNDR ¶
func (*BranchOfficeJobData_JobInfo_LogJobRendered) UnmarshalNDR ¶
type BranchOfficeJobData_JobInfo_LogOfflineFileFull ¶
type BranchOfficeJobData_JobInfo_LogOfflineFileFull struct { // LogOfflineFileFull: An RPC_BranchOfficeLogOfflineFileFull (section 2.2.1.15.7) structure // for a Branch Office Print Remote Log Entry corresponding to event ID 868. This structure // is present only if eEventType is set to kLogOfflineFileFull. LogOfflineFileFull *BranchOfficeLogOfflineFileFull `idl:"name:LogOfflineFileFull" json:"log_offline_file_full"` }
BranchOfficeJobData_JobInfo_LogOfflineFileFull structure represents BranchOfficeJobData_JobInfo RPC union arm.
It has following labels: 5
func (*BranchOfficeJobData_JobInfo_LogOfflineFileFull) MarshalNDR ¶
func (*BranchOfficeJobData_JobInfo_LogOfflineFileFull) UnmarshalNDR ¶
type BranchOfficeJobData_JobInfo_LogPipelineFailed ¶
type BranchOfficeJobData_JobInfo_LogPipelineFailed struct { // LogPipelineFailed: An RPC_BranchOfficeJobDataPipelineFailed (section 2.2.1.15.4) // structure for a Branch Office Print Remote Log Entry corresponding to event ID 824. // This structure is present only if eEventType is set to kLogJobPipelineError. LogPipelineFailed *BranchOfficeJobDataPipelineFailed `idl:"name:LogPipelineFailed" json:"log_pipeline_failed"` }
BranchOfficeJobData_JobInfo_LogPipelineFailed structure represents BranchOfficeJobData_JobInfo RPC union arm.
It has following labels: 4
func (*BranchOfficeJobData_JobInfo_LogPipelineFailed) MarshalNDR ¶
func (*BranchOfficeJobData_JobInfo_LogPipelineFailed) UnmarshalNDR ¶
type BranchOfficeJobEventType ¶
type BranchOfficeJobEventType uint16
BranchOfficeJobEventType type represents EBranchOfficeJobEventType RPC enumeration.
The EBranchOfficeJobEventType enumeration specifies the type of Windows Event contained by a Branch Office Print Remote Log Entry (section 3.1.1).<84>
var ( // kInvalidJobState: The Windows Event is an unknown type. BranchOfficeJobEventTypeInvalidJobState BranchOfficeJobEventType = 0 // kLogJobPrinted: The Branch Office Print Remote Log Entry contains a Windows Event // that corresponds to event ID 307. BranchOfficeJobEventTypeLogJobPrinted BranchOfficeJobEventType = 1 // kLogJobRendered: The Branch Office Print Remote Log Entry contains a Windows Event // that corresponds to event ID 805. BranchOfficeJobEventTypeLogJobRendered BranchOfficeJobEventType = 2 // kLogJobError: The Branch Office Print Remote Log Entry contains a Windows Event that // corresponds to event ID 372. BranchOfficeJobEventTypeLogJobError BranchOfficeJobEventType = 3 // kLogJobPipelineError: The Branch Office Print Remote Log Entry contains a Windows // Event that corresponds to event ID 824. BranchOfficeJobEventTypeLogJobPipelineError BranchOfficeJobEventType = 4 // kLogOfflineFileFull: The Branch Office Print Remote Log Entry contains a Windows // Event that corresponds to event ID 868. BranchOfficeJobEventTypeLogOfflineFileFull BranchOfficeJobEventType = 5 )
func (BranchOfficeJobEventType) String ¶
func (o BranchOfficeJobEventType) String() string
type BranchOfficeLogOfflineFileFull ¶
type BranchOfficeLogOfflineFileFull struct { // pMachineName: A pointer to a string that specifies the name of the client computer // that encountered the Branch Office Print Remote Log Offline Archive full condition. // For rules governing computer names, see section 2.2.4.16. MachineName string `idl:"name:pMachineName;string" json:"machine_name"` }
BranchOfficeLogOfflineFileFull structure represents RPC_BranchOfficeLogOfflineFileFull RPC structure.
The RPC_BranchOfficeLogOfflineFileFull structure holds a single Branch Office Print Remote Log Entry (section 3.1.1)<90> that indicates the Branch Office Print Remote Log Offline Archive (section 3.2.1) has exceeded the maximum allowed size.<91> This entry contains the information needed to create event ID 868 in the Microsoft-Windows-PrintService/Admin event channel.
func (*BranchOfficeLogOfflineFileFull) MarshalNDR ¶
func (*BranchOfficeLogOfflineFileFull) UnmarshalNDR ¶
type ClientContainer ¶
type ClientContainer struct { // Level: The information level that is used by the ClientInfo member to determine the // information structure. The value MUST be 0x00000001. Level uint32 `idl:"name:Level" json:"level"` // ClientInfo: Client information in a structure that corresponds to the information // level specified by the Level member. ClientInfo *ClientContainer_ClientInfo `idl:"name:ClientInfo;switch_is:Level" json:"client_info"` }
ClientContainer structure represents SPLCLIENT_CONTAINER RPC structure.
The SPLCLIENT_CONTAINER structure contains an information structure that provides data about the connecting client.<9>
func (*ClientContainer) MarshalNDR ¶
func (*ClientContainer) UnmarshalNDR ¶
type ClientContainer_ClientInfo ¶
type ClientContainer_ClientInfo struct { // Types that are assignable to Value // // *ClientContainer_ClientInfo_ClientInfo1 // *ClientContainer_ClientInfo_NotUsed1 // *ClientContainer_ClientInfo_NotUsed2 Value is_ClientContainer_ClientInfo `json:"value"` }
ClientContainer_ClientInfo structure represents SPLCLIENT_CONTAINER union anonymous member.
The SPLCLIENT_CONTAINER structure contains an information structure that provides data about the connecting client.<9>
func (*ClientContainer_ClientInfo) GetValue ¶
func (o *ClientContainer_ClientInfo) GetValue() any
func (*ClientContainer_ClientInfo) MarshalUnionNDR ¶
func (*ClientContainer_ClientInfo) NDRSwitchValue ¶
func (o *ClientContainer_ClientInfo) NDRSwitchValue(sw uint32) uint32
func (*ClientContainer_ClientInfo) UnmarshalUnionNDR ¶
type ClientContainer_ClientInfo_ClientInfo1 ¶
type ClientContainer_ClientInfo_ClientInfo1 struct { // pClientInfo1: A pointer to an SPLCLIENT_INFO_1 structure (section 2.2.1.11.1) information. ClientInfo1 *ClientInfo1 `idl:"name:pClientInfo1" json:"client_info1"` }
ClientContainer_ClientInfo_ClientInfo1 structure represents ClientContainer_ClientInfo RPC union arm.
It has following labels: 1
func (*ClientContainer_ClientInfo_ClientInfo1) MarshalNDR ¶
func (*ClientContainer_ClientInfo_ClientInfo1) UnmarshalNDR ¶
type ClientContainer_ClientInfo_NotUsed1 ¶
type ClientContainer_ClientInfo_NotUsed1 struct { // pNotUsed1: A pointer to a structure that is specified only as a placeholder in the // IDL and MUST be ignored. NotUsed1 *ClientInfo2 `idl:"name:pNotUsed1" json:"not_used1"` }
ClientContainer_ClientInfo_NotUsed1 structure represents ClientContainer_ClientInfo RPC union arm.
It has following labels: 2
func (*ClientContainer_ClientInfo_NotUsed1) MarshalNDR ¶
func (*ClientContainer_ClientInfo_NotUsed1) UnmarshalNDR ¶
type ClientContainer_ClientInfo_NotUsed2 ¶
type ClientContainer_ClientInfo_NotUsed2 struct { // pNotUsed2: A pointer to a structure that is specified only as a placeholder in the // IDL and MUST be ignored. NotUsed2 *ClientInfo3 `idl:"name:pNotUsed2" json:"not_used2"` }
ClientContainer_ClientInfo_NotUsed2 structure represents ClientContainer_ClientInfo RPC union arm.
It has following labels: 3
func (*ClientContainer_ClientInfo_NotUsed2) MarshalNDR ¶
func (*ClientContainer_ClientInfo_NotUsed2) UnmarshalNDR ¶
type ClientInfo1 ¶
type ClientInfo1 struct { // dwSize: The size, in bytes, of the structure. // // All members not defined in this section are specified in sections 2.2.1.3.7 and 2.2.1.3. Size uint32 `idl:"name:dwSize" json:"size"` MachineName string `idl:"name:pMachineName;string" json:"machine_name"` UserName string `idl:"name:pUserName;string" json:"user_name"` BuildNum uint32 `idl:"name:dwBuildNum" json:"build_num"` MajorVersion uint32 `idl:"name:dwMajorVersion" json:"major_version"` MinorVersion uint32 `idl:"name:dwMinorVersion" json:"minor_version"` ProcessorArchitecture uint16 `idl:"name:wProcessorArchitecture" json:"processor_architecture"` }
ClientInfo1 structure represents SPLCLIENT_INFO_1 RPC structure.
The SPLCLIENT_INFO_1 structure provides information about the calling client of the print server.<65>
func (*ClientInfo1) MarshalNDR ¶
func (*ClientInfo1) UnmarshalNDR ¶
type ClientInfo2 ¶
type ClientInfo2 struct { // notUsed: A value that MUST be ignored. NotUsed int64 `idl:"name:notUsed" json:"not_used"` }
ClientInfo2 structure represents SPLCLIENT_INFO_2 RPC structure.
The SPLCLIENT_INFO_2 structure is specified only as a placeholder in the IDL. It is not sent over the wire.
func (*ClientInfo2) MarshalNDR ¶
func (*ClientInfo2) UnmarshalNDR ¶
type ClientInfo3 ¶
type ClientInfo3 struct { // cbSize: The size, in bytes, of the structure. Length uint32 `idl:"name:cbSize" json:"length"` // dwFlags: This member is reserved for future use. The value of this member SHOULD // be set to zero when sent and MUST be ignored on receipt. Flags uint32 `idl:"name:dwFlags" json:"flags"` // dwSize: This member is reserved for future use. The value of this member SHOULD be // set to zero when sent and MUST be ignored on receipt. Size uint32 `idl:"name:dwSize" json:"size"` MachineName string `idl:"name:pMachineName;string" json:"machine_name"` UserName string `idl:"name:pUserName;string" json:"user_name"` BuildNum uint32 `idl:"name:dwBuildNum" json:"build_num"` MajorVersion uint32 `idl:"name:dwMajorVersion" json:"major_version"` MinorVersion uint32 `idl:"name:dwMinorVersion" json:"minor_version"` ProcessorArchitecture uint16 `idl:"name:wProcessorArchitecture" json:"processor_architecture"` // hSplPrinter: This member MUST NOT be used remotely and the value of this member SHOULD // be set to zero for calls that are made remotely. // // All members not defined in this section are specified in sections 2.2.1.3.7 and 2.2.1.3. Printer uint64 `idl:"name:hSplPrinter" json:"printer"` }
ClientInfo3 structure represents SPLCLIENT_INFO_3 RPC structure.
The SPLCLIENT_INFO_3 structure provides information about the calling client of the print server.<66>
func (*ClientInfo3) MarshalNDR ¶
func (*ClientInfo3) UnmarshalNDR ¶
type ClosePrinterRequest ¶
type ClosePrinterRequest struct { // phPrinter: A pointer to a handle to a printer object, server object, job object, // or port object that was opened by RpcAddPrinter (section 3.1.4.2.3), RpcAddPrinterEx // (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), or RpcOpenPrinterEx (section // 3.1.4.2.14). Printer *Printer `idl:"name:phPrinter" json:"printer"` }
ClosePrinterRequest structure represents the RpcClosePrinter operation request
func (*ClosePrinterRequest) MarshalNDR ¶
func (*ClosePrinterRequest) UnmarshalNDR ¶
type ClosePrinterResponse ¶
type ClosePrinterResponse struct { // phPrinter: A pointer to a handle to a printer object, server object, job object, // or port object that was opened by RpcAddPrinter (section 3.1.4.2.3), RpcAddPrinterEx // (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), or RpcOpenPrinterEx (section // 3.1.4.2.14). Printer *Printer `idl:"name:phPrinter" json:"printer"` // Return: The RpcClosePrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
ClosePrinterResponse structure represents the RpcClosePrinter operation response
func (*ClosePrinterResponse) MarshalNDR ¶
func (*ClosePrinterResponse) UnmarshalNDR ¶
type CorePrinterDriver ¶
type CorePrinterDriver struct { // CoreDriverGUID (16 bytes): A GUID that uniquely identifies the package. CoreDriverGUID *dtyp.GUID `idl:"name:CoreDriverGUID" json:"core_driver_guid"` // ftDriverDate (8 bytes): A FILETIME value ([MS-DTYP] section 2.3.3) that specifies // the date this package was published.<135> DriverDate *dtyp.Filetime `idl:"name:ftDriverDate" json:"driver_date"` // dwlDriverVersion (8 bytes): A 64-bit value that specifies the version of the core // printer driver that can be used to match the driver version in the driver installation // control file.<136> DriverVersion uint64 `idl:"name:dwlDriverVersion" json:"driver_version"` // szPackageID (520 bytes): A string that specifies the package name. PackageID []uint16 `idl:"name:szPackageID" json:"package_id"` }
CorePrinterDriver structure represents CORE_PRINTER_DRIVER RPC structure.
The CORE_PRINTER_DRIVER structure defines information that identifies a specific core printer driver.<134> See the RpcGetCorePrinterDrivers method (section 3.1.4.4.9) for an example of its use.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | CoreDriverGUID (16 bytes) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ftDriverDate | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dwlDriverVersion | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | szPackageID (520 bytes) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
func (*CorePrinterDriver) MarshalNDR ¶
func (*CorePrinterDriver) UnmarshalNDR ¶
type CreateJobOnPrinterRequest ¶
type CreateJobOnPrinterRequest struct { Printer *Printer `idl:"name:hPrinter" json:"printer"` JobID uint32 `idl:"name:jobId" json:"job_id"` PDLFormat string `idl:"name:pdlFormat;string;pointer:unique" json:"pdl_format"` JobAttributeGroupBufferSize uint32 `idl:"name:jobAttributeGroupBufferSize" json:"job_attribute_group_buffer_size"` JobAttributeGroupBuffer []byte `idl:"name:jobAttributeGroupBuffer;size_is:(jobAttributeGroupBufferSize)" json:"job_attribute_group_buffer"` }
CreateJobOnPrinterRequest structure represents the RpcIppCreateJobOnPrinter operation request
func (*CreateJobOnPrinterRequest) MarshalNDR ¶
func (*CreateJobOnPrinterRequest) UnmarshalNDR ¶
type CreateJobOnPrinterResponse ¶
type CreateJobOnPrinterResponse struct { ResponseBufferSize uint32 `idl:"name:ippResponseBufferSize;pointer:ref" json:"response_buffer_size"` ResponseBuffer []byte `idl:"name:ippResponseBuffer;size_is:(, ippResponseBufferSize);pointer:ref" json:"response_buffer"` // Return: The RpcIppCreateJobOnPrinter return value. Return int32 `idl:"name:Return" json:"return"` }
CreateJobOnPrinterResponse structure represents the RpcIppCreateJobOnPrinter operation response
func (*CreateJobOnPrinterResponse) MarshalNDR ¶
func (*CreateJobOnPrinterResponse) UnmarshalNDR ¶
type CreatePrinterICRequest ¶
type CreatePrinterICRequest struct { // hPrinter: A handle to a printer object (section 2.2.1.1.4) that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pDevModeContainer: A parameter specified in DEVMODE_CONTAINER Parameters (section // 3.1.4.1.8.1). DevModeContainer *DevModeContainer `idl:"name:pDevModeContainer" json:"dev_mode_container"` }
CreatePrinterICRequest structure represents the RpcCreatePrinterIC operation request
func (*CreatePrinterICRequest) MarshalNDR ¶
func (*CreatePrinterICRequest) UnmarshalNDR ¶
type CreatePrinterICResponse ¶
type CreatePrinterICResponse struct { // pHandle: A pointer to a printer information context handle (section 2.2.1.1.2). Handle *GDI `idl:"name:pHandle" json:"handle"` // Return: The RpcCreatePrinterIC return value. Return uint32 `idl:"name:Return" json:"return"` }
CreatePrinterICResponse structure represents the RpcCreatePrinterIC operation response
func (*CreatePrinterICResponse) MarshalNDR ¶
func (*CreatePrinterICResponse) UnmarshalNDR ¶
type DeleteFormRequest ¶
type DeleteFormRequest struct { // hPrinter: A handle to a printer object or server object that MUST have been opened // by using the RpcAddPrinter, RpcAddPrinterEx, RpcOpenPrinter, or RpcOpenPrinterEx // methods. Printer *Printer `idl:"name:hPrinter" json:"printer"` // pFormName: A pointer to a string that MUST identify the form to delete. For rules // governing form names, see section 2.2.4.5. FormName string `idl:"name:pFormName;string" json:"form_name"` }
DeleteFormRequest structure represents the RpcDeleteForm operation request
func (*DeleteFormRequest) MarshalNDR ¶
func (*DeleteFormRequest) UnmarshalNDR ¶
type DeleteFormResponse ¶
type DeleteFormResponse struct { // Return: The RpcDeleteForm return value. Return uint32 `idl:"name:Return" json:"return"` }
DeleteFormResponse structure represents the RpcDeleteForm operation response
func (*DeleteFormResponse) MarshalNDR ¶
func (*DeleteFormResponse) UnmarshalNDR ¶
type DeleteJobNamedPropertyRequest ¶
type DeleteJobNamedPropertyRequest struct { // hPrinter: A PRINTER_HANDLE (section 2.2.1.1.4) to a printer object, job object, or // server object that was opened by RpcAddPrinter (section 3.1.4.2.3), RpcAddPrinterEx // (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), or RpcOpenPrinterEx (section // 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // JobId: The identifier of a print job. This value MUST NOT be zero. JobID uint32 `idl:"name:JobId" json:"job_id"` // pszName: A pointer to a string that specifies the Job Named Property to be deleted. // This pointer MUST NOT be NULL. Name string `idl:"name:pszName;string" json:"name"` }
DeleteJobNamedPropertyRequest structure represents the RpcDeleteJobNamedProperty operation request
func (*DeleteJobNamedPropertyRequest) MarshalNDR ¶
func (*DeleteJobNamedPropertyRequest) UnmarshalNDR ¶
type DeleteJobNamedPropertyResponse ¶
type DeleteJobNamedPropertyResponse struct { // Return: The RpcDeleteJobNamedProperty return value. Return uint32 `idl:"name:Return" json:"return"` }
DeleteJobNamedPropertyResponse structure represents the RpcDeleteJobNamedProperty operation response
func (*DeleteJobNamedPropertyResponse) MarshalNDR ¶
func (*DeleteJobNamedPropertyResponse) UnmarshalNDR ¶
type DeleteMonitorRequest ¶
type DeleteMonitorRequest struct { // Name: This parameter MUST adhere to the parameter specification in Print Server Name // Parameters, section 3.1.4.1.4. Name string `idl:"name:Name;string;pointer:unique" json:"name"` // pEnvironment: This parameter MUST adhere to the parameter specification in Environment // Name Parameters, section 3.1.4.1.3. Environment string `idl:"name:pEnvironment;string;pointer:unique" json:"environment"` // pMonitorName: A pointer to a string that specifies the name of the monitor to remove. // For rules governing monitor names, see section 2.2.4.8. MonitorName string `idl:"name:pMonitorName;string" json:"monitor_name"` }
DeleteMonitorRequest structure represents the RpcDeleteMonitor operation request
func (*DeleteMonitorRequest) MarshalNDR ¶
func (*DeleteMonitorRequest) UnmarshalNDR ¶
type DeleteMonitorResponse ¶
type DeleteMonitorResponse struct { // Return: The RpcDeleteMonitor return value. Return uint32 `idl:"name:Return" json:"return"` }
DeleteMonitorResponse structure represents the RpcDeleteMonitor operation response
func (*DeleteMonitorResponse) MarshalNDR ¶
func (*DeleteMonitorResponse) UnmarshalNDR ¶
type DeletePerMachineConnectionRequest ¶
type DeletePerMachineConnectionRequest struct { // pServer: A parameter specified in Print Server Name Parameters (section 3.1.4.1.4). Server string `idl:"name:pServer;string;pointer:unique" json:"server"` // pPrinterName: A parameter specified in Printer Name Parameters (section 3.1.4.1.5) // which specifies a printer connection. PrinterName string `idl:"name:pPrinterName;string" json:"printer_name"` }
DeletePerMachineConnectionRequest structure represents the RpcDeletePerMachineConnection operation request
func (*DeletePerMachineConnectionRequest) MarshalNDR ¶
func (*DeletePerMachineConnectionRequest) UnmarshalNDR ¶
type DeletePerMachineConnectionResponse ¶
type DeletePerMachineConnectionResponse struct { // Return: The RpcDeletePerMachineConnection return value. Return uint32 `idl:"name:Return" json:"return"` }
DeletePerMachineConnectionResponse structure represents the RpcDeletePerMachineConnection operation response
func (*DeletePerMachineConnectionResponse) MarshalNDR ¶
func (*DeletePerMachineConnectionResponse) UnmarshalNDR ¶
type DeletePortRequest ¶
type DeletePortRequest struct { // pName: A parameter specified in Print Server Name Parameters (section 3.1.4.1.4). Name string `idl:"name:pName;string;pointer:unique" json:"name"` // hWnd: The value of this parameter SHOULD be set to zero when sent and MUST be ignored // on receipt. Wnd uint64 `idl:"name:hWnd" json:"wnd"` // pPortName: A pointer to a string that specifies the name of the port that is deleted. // For rules governing port names, see section 2.2.4.10. PortName string `idl:"name:pPortName;string" json:"port_name"` }
DeletePortRequest structure represents the RpcDeletePort operation request
func (*DeletePortRequest) MarshalNDR ¶
func (*DeletePortRequest) UnmarshalNDR ¶
type DeletePortResponse ¶
type DeletePortResponse struct { // Return: The RpcDeletePort return value. Return uint32 `idl:"name:Return" json:"return"` }
DeletePortResponse structure represents the RpcDeletePort operation response
func (*DeletePortResponse) MarshalNDR ¶
func (*DeletePortResponse) UnmarshalNDR ¶
type DeletePrintProcessorRequest ¶
type DeletePrintProcessorRequest struct { // Name: A parameter specified in Print Server Name Parameters (section 3.1.4.1.4). Name string `idl:"name:Name;string;pointer:unique" json:"name"` // pEnvironment: A parameter specified in Environment Name Parameters (section 3.1.4.1.3). Environment string `idl:"name:pEnvironment;string;pointer:unique" json:"environment"` // pPrintProcessorName: A pointer to a string that specifies the name of the print processor // that is removed. For rules governing print processor names, see Print Processor Names // (section 2.2.4.11). PrintProcessorName string `idl:"name:pPrintProcessorName;string" json:"print_processor_name"` }
DeletePrintProcessorRequest structure represents the RpcDeletePrintProcessor operation request
func (*DeletePrintProcessorRequest) MarshalNDR ¶
func (*DeletePrintProcessorRequest) UnmarshalNDR ¶
type DeletePrintProcessorResponse ¶
type DeletePrintProcessorResponse struct { // Return: The RpcDeletePrintProcessor return value. Return uint32 `idl:"name:Return" json:"return"` }
DeletePrintProcessorResponse structure represents the RpcDeletePrintProcessor operation response
func (*DeletePrintProcessorResponse) MarshalNDR ¶
func (*DeletePrintProcessorResponse) UnmarshalNDR ¶
type DeletePrinterDataExRequest ¶
type DeletePrinterDataExRequest struct { // hPrinter: A handle to a printer object that was opened by RpcAddPrinter (section // 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), // or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pKeyName: A pointer to a string that specifies the key containing the value to delete. // A key name is an arbitrary string defined by the printer driver associated with the // printer object. For rules governing key names, see section 2.2.4.7. KeyName string `idl:"name:pKeyName;string" json:"key_name"` // pValueName: A pointer to a string that identifies the configuration data to delete. // For rules governing value names, see section 2.2.4.18. ValueName string `idl:"name:pValueName;string" json:"value_name"` }
DeletePrinterDataExRequest structure represents the RpcDeletePrinterDataEx operation request
func (*DeletePrinterDataExRequest) MarshalNDR ¶
func (*DeletePrinterDataExRequest) UnmarshalNDR ¶
type DeletePrinterDataExResponse ¶
type DeletePrinterDataExResponse struct { // Return: The RpcDeletePrinterDataEx return value. Return uint32 `idl:"name:Return" json:"return"` }
DeletePrinterDataExResponse structure represents the RpcDeletePrinterDataEx operation response
func (*DeletePrinterDataExResponse) MarshalNDR ¶
func (*DeletePrinterDataExResponse) UnmarshalNDR ¶
type DeletePrinterDataRequest ¶
type DeletePrinterDataRequest struct { // hPrinter: A handle to a printer object that was opened by RpcAddPrinter (section // 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), // or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pValueName: A pointer to a string that identifies the configuration data to delete. // For rules governing value names, see section 2.2.4.18. ValueName string `idl:"name:pValueName;string" json:"value_name"` }
DeletePrinterDataRequest structure represents the RpcDeletePrinterData operation request
func (*DeletePrinterDataRequest) MarshalNDR ¶
func (*DeletePrinterDataRequest) UnmarshalNDR ¶
type DeletePrinterDataResponse ¶
type DeletePrinterDataResponse struct { // Return: The RpcDeletePrinterData return value. Return uint32 `idl:"name:Return" json:"return"` }
DeletePrinterDataResponse structure represents the RpcDeletePrinterData operation response
func (*DeletePrinterDataResponse) MarshalNDR ¶
func (*DeletePrinterDataResponse) UnmarshalNDR ¶
type DeletePrinterDriverExRequest ¶
type DeletePrinterDriverExRequest struct { // pName: A STRING_HANDLE structure (section 2.2.1.1.7) that conforms to the parameter // specification in Print Server Name Parameters (section 3.1.4.1.4). Name string `idl:"name:pName;string;pointer:unique" json:"name"` // pEnvironment: A string that conforms to the parameter specification in Environment // Name Parameters (section 3.1.4.1.3). Environment string `idl:"name:pEnvironment;string" json:"environment"` // pDriverName: A pointer to a string that specifies the name of the printer driver // to delete. For rules governing printer driver names, see section 2.2.4.3. DriverName string `idl:"name:pDriverName;string" json:"driver_name"` // dwDeleteFlag: A bit field that specifies options for deleting files and versions // of the printer driver. If the value of this parameter is zero, the driver MUST be // removed from the list of supported drivers, and the driver files MUST remain on the // print server. // // These flags can be combined to specify multiple options. // // +----------------------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +----------------------------------------+----------------------------------------------------------------------------------+ // +----------------------------------------+----------------------------------------------------------------------------------+ // | DPD_DELETE_UNUSED_FILES 0x00000001 | Remove unused printer driver files. In this case, an error MUST NOT be returned | // | | if some of the files are being used by another installed driver. | // +----------------------------------------+----------------------------------------------------------------------------------+ // | DPD_DELETE_SPECIFIC_VERSION 0x00000002 | Delete the version specified by the value of the dwVersionNum parameter. Because | // | | more than one version of a printer driver can be installed on a print server, | // | | setting this flag does not guarantee that the driver is removed from the list of | // | | supported drivers on the server. | // +----------------------------------------+----------------------------------------------------------------------------------+ // | DPD_DELETE_ALL_FILES 0x00000004 | Delete the printer driver only if all its associated files can be removed. In | // | | this case, an error MUST be returned if some of the files are being used by | // | | another installed driver. | // +----------------------------------------+----------------------------------------------------------------------------------+ DeleteFlag uint32 `idl:"name:dwDeleteFlag" json:"delete_flag"` // dwVersionNum: The version of the printer driver to delete. // // The value of this parameter is implementation-specific and identifies the driver // version and the operating system for which the driver was written. The driver version // for each printer driver object in a List of Printers (section 3.1.1). It has the // same format and meaning as the cVersion members in RPC_DRIVER_INFO structures (section // 2.2.1.5).<340> VersionNum uint32 `idl:"name:dwVersionNum" json:"version_num"` }
DeletePrinterDriverExRequest structure represents the RpcDeletePrinterDriverEx operation request
func (*DeletePrinterDriverExRequest) MarshalNDR ¶
func (*DeletePrinterDriverExRequest) UnmarshalNDR ¶
type DeletePrinterDriverExResponse ¶
type DeletePrinterDriverExResponse struct { // Return: The RpcDeletePrinterDriverEx return value. Return uint32 `idl:"name:Return" json:"return"` }
DeletePrinterDriverExResponse structure represents the RpcDeletePrinterDriverEx operation response
func (*DeletePrinterDriverExResponse) MarshalNDR ¶
func (*DeletePrinterDriverExResponse) UnmarshalNDR ¶
type DeletePrinterDriverRequest ¶
type DeletePrinterDriverRequest struct { // pName: Specified in Print Server Name Parameters (section 3.1.4.1.4). Name string `idl:"name:pName;string;pointer:unique" json:"name"` // pEnvironment: Specified in Environment Name Parameters (section 3.1.4.1.3). Environment string `idl:"name:pEnvironment;string" json:"environment"` // pDriverName: A pointer to a string that specifies the name of the printer driver // to delete. For rules governing printer driver names, see section 2.2.4.3. DriverName string `idl:"name:pDriverName;string" json:"driver_name"` }
DeletePrinterDriverRequest structure represents the RpcDeletePrinterDriver operation request
func (*DeletePrinterDriverRequest) MarshalNDR ¶
func (*DeletePrinterDriverRequest) UnmarshalNDR ¶
type DeletePrinterDriverResponse ¶
type DeletePrinterDriverResponse struct { // Return: The RpcDeletePrinterDriver return value. Return uint32 `idl:"name:Return" json:"return"` }
DeletePrinterDriverResponse structure represents the RpcDeletePrinterDriver operation response
func (*DeletePrinterDriverResponse) MarshalNDR ¶
func (*DeletePrinterDriverResponse) UnmarshalNDR ¶
type DeletePrinterICRequest ¶
type DeletePrinterICRequest struct { // phPrinterIC: A pointer to a printer information context handle (section 2.2.1.1.2) // that was returned by RpcCreatePrinterIC (section 3.1.4.2.10). PrinterIC *GDI `idl:"name:phPrinterIC" json:"printer_ic"` }
DeletePrinterICRequest structure represents the RpcDeletePrinterIC operation request
func (*DeletePrinterICRequest) MarshalNDR ¶
func (*DeletePrinterICRequest) UnmarshalNDR ¶
type DeletePrinterICResponse ¶
type DeletePrinterICResponse struct { // phPrinterIC: A pointer to a printer information context handle (section 2.2.1.1.2) // that was returned by RpcCreatePrinterIC (section 3.1.4.2.10). PrinterIC *GDI `idl:"name:phPrinterIC" json:"printer_ic"` // Return: The RpcDeletePrinterIC return value. Return uint32 `idl:"name:Return" json:"return"` }
DeletePrinterICResponse structure represents the RpcDeletePrinterIC operation response
func (*DeletePrinterICResponse) MarshalNDR ¶
func (*DeletePrinterICResponse) UnmarshalNDR ¶
type DeletePrinterKeyRequest ¶
type DeletePrinterKeyRequest struct { // hPrinter: A handle to a printer object that was opened by RpcAddPrinter (section // 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), // or RpcOpenPrinterEx (section 3.1.4.2.14) methods. Printer *Printer `idl:"name:hPrinter" json:"printer"` // pKeyName: A pointer to a string that specifies the key to delete. A key name is an // arbitrary string defined by the printer driver associated with the printer object. // For rules governing key names, see section 2.2.4.7. KeyName string `idl:"name:pKeyName;string" json:"key_name"` }
DeletePrinterKeyRequest structure represents the RpcDeletePrinterKey operation request
func (*DeletePrinterKeyRequest) MarshalNDR ¶
func (*DeletePrinterKeyRequest) UnmarshalNDR ¶
type DeletePrinterKeyResponse ¶
type DeletePrinterKeyResponse struct { // Return: The RpcDeletePrinterKey return value. Return uint32 `idl:"name:Return" json:"return"` }
DeletePrinterKeyResponse structure represents the RpcDeletePrinterKey operation response
func (*DeletePrinterKeyResponse) MarshalNDR ¶
func (*DeletePrinterKeyResponse) UnmarshalNDR ¶
type DeletePrinterRequest ¶
type DeletePrinterRequest struct { // hPrinter: A handle to a printer object that MUST have been opened by using the RpcAddPrinter, // RpcAddPrinterEx, RpcOpenPrinter, or RpcOpenPrinterEx methods. Printer *Printer `idl:"name:hPrinter" json:"printer"` }
DeletePrinterRequest structure represents the RpcDeletePrinter operation request
func (*DeletePrinterRequest) MarshalNDR ¶
func (*DeletePrinterRequest) UnmarshalNDR ¶
type DeletePrinterResponse ¶
type DeletePrinterResponse struct { // Return: The RpcDeletePrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
DeletePrinterResponse structure represents the RpcDeletePrinter operation response
func (*DeletePrinterResponse) MarshalNDR ¶
func (*DeletePrinterResponse) UnmarshalNDR ¶
type DevMode ¶
type DevMode struct { // dmDeviceName (64 bytes): A 32-element array of 16-bit Unicode characters that form // a null-terminated string that specifies the name of the printer. Printer name strings // that are longer than 32 characters are truncated to fit the array. For more rules // governing printer names, see section 2.2.4.14. DeviceName []uint16 `idl:"name:dmDeviceName" json:"device_name"` // dmSpecVersion (2 bytes): The version of initialization data specification on which // the _DEVMODE structure is based. This value SHOULD be 0x0401.<93> SpecVersion uint16 `idl:"name:dmSpecVersion" json:"spec_version"` // dmDriverVersion (2 bytes): For printers, an optional, implementation-defined version // of the printer driver.<94> DriverVersion uint16 `idl:"name:dmDriverVersion" json:"driver_version"` // dmSize (2 bytes): The size, in bytes, of the _DEVMODE structure, which MUST be a // multiple of 4. This value does not include the length of any private, printer driver–specific // data that follows the _DEVMODE structure's public fields. The size of private data // is specified by the dmDriverExtra value. Size uint16 `idl:"name:dmSize" json:"size"` // dmDriverExtra (2 bytes): The size, in bytes, of the private, printer driver–specific // data that follows this structure. DriverExtra uint16 `idl:"name:dmDriverExtra" json:"driver_extra"` // dmFields (4 bytes): A bitfield that specifies the fields of the _DEVMODE structure // that have been initialized. If a bit is set, the corresponding field MUST be initialized // and MUST be processed on receipt. If a bit is not set, the value of the corresponding // field SHOULD be zero when sent and MUST be ignored on receipt. // // The value of this field is the result of a bitwise OR of the following bits. // // +---+-----+---+-----+-----+-----+-----+-----+-----+-----+---+-----+-----+-----+-----+-----+-----+---+---+---+---+---+---+-----+---+---+---+---+---+-----+-----+-----+ // | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | // | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | // +---+-----+---+-----+-----+-----+-----+-----+-----+-----+---+-----+-----+-----+-----+-----+-----+---+---+---+---+---+---+-----+---+---+---+---+---+-----+-----+-----+ // +---+-----+---+-----+-----+-----+-----+-----+-----+-----+---+-----+-----+-----+-----+-----+-----+---+---+---+---+---+---+-----+---+---+---+---+---+-----+-----+-----+ // | 0 | U P | 0 | S C | P W | P L | P S | O R | C L | T T | Y | D X | C R | P Q | D S | C P | C M | 0 | 0 | 0 | 0 | 0 | 0 | F M | 0 | 0 | 0 | 0 | 0 | D T | M T | C I | // +---+-----+---+-----+-----+-----+-----+-----+-----+-----+---+-----+-----+-----+-----+-----+-----+---+---+---+---+---+---+-----+---+---+---+---+---+-----+-----+-----+ // // // +---------------------+----------------------------------------------------------------------------------+ // | | | // | NAME | DESCRIPTION | // | | | // +---------------------+----------------------------------------------------------------------------------+ // +---------------------+----------------------------------------------------------------------------------+ // | DM_ICMINTENT CI | If this bit is set, the dmICMIntent field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_MEDIATYPE MT | If this bit is set, the dmMediaType field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_DITHERTYPE DT | If this bit is set, the dmDitherType field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_FORMNAME FM | If this bit is set, the dmFormName field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_ICMMETHOD CM | If this bit is set, the dmICMMethod field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_COPIES CP | If this bit is set, the dmCopies field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_DEFAULTSOURCE DS | If this bit is set, the dmDefaultSource field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_PRINTQUALITY PQ | If this bit is set, the dmPrintQuality field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_COLOR CR | If this bit is set, the dmColor field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_DUPLEX DX | If this bit is set, the dmDuplex field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_YRESOLUTION Y | If this bit is set, the dmYResolution field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_TTOPTION TT | If this bit is set, the dmTTOption field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_COLLATE CL | If this bit is set, the dmCollate field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_ORIENTATION OR | If this bit is set, the dmOrientation field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_PAPERSIZE PS | If this bit is set, the dmPaperSize field MUST be initialized. This bit MUST NOT | // | | be set if either DM_PAPERLENGTH or DM_PAPERWIDTH are set. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_PAPERLENGTH PL | If this bit is set, the dmPaperLength field MUST be initialized. This bit MUST | // | | NOT be set if DM_PAPERSIZE is set. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_PAPERWIDTH PW | If this bit is set, the dmPaperWidth field MUST be initialized. This bit MUST | // | | NOT be set if DM_PAPERSIZE is set. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_SCALE SC | If this bit is set, the dmScale field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ // | DM_NUP UP | If this bit is set, the dmNup field MUST be initialized. | // +---------------------+----------------------------------------------------------------------------------+ Fields uint32 `idl:"name:dmFields" json:"fields"` // dmOrientation (2 bytes): For printers, the orientation for output. If the DM_ORIENTATION // bit is set in dmFields, the value of this field SHOULD be one of the following. // // +---------------------------+--------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +---------------------------+--------------------------+ // +---------------------------+--------------------------+ // | DMORIENT_POTRAIT 0x0001 | "Portrait" orientation. | // +---------------------------+--------------------------+ // | DMORIENT_LANDSCAPE 0x0002 | "Landscape" orientation. | // +---------------------------+--------------------------+ Orientation int16 `idl:"name:dmOrientation" json:"orientation"` // dmPaperSize (2 bytes): For printers, the size of the output media. If the DM_PAPERSIZE // bit is set in dmFields, the value of this field SHOULD<95> be one of the following, // or it MAY be a device-specific value that is greater than or equal to 0x0100. // // +----------------------------------------------+---------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +----------------------------------------------+---------------------------------------------------------+ // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_LETTER 0x0001 | Letter, 8 1/2 x 11 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_LEGAL 0x0005 | Legal, 8 1/2 x 14 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_10X14 0x0010 | 10 x 14-inch sheet | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_11X17 0x0011 | 11 x 17-inch sheet | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_12X11 0x005A | 12 x 11-inch sheet | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_A3 0x0008 | A3 sheet, 297 x 420 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_A3_ROTATED 0x004C | A3 rotated sheet, 420 x 297 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_A4 0x0009 | A4 sheet, 210 x 297 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_A4_ROTATED 0x004D | A4 rotated sheet, 297 x 210 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_A4SMALL 0x000A | A4 small sheet, 210 x 297 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_A5 0x000B | A5 sheet, 148 x 210 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_A5_ROTATED 0x004E | A5 rotated sheet, 210 x 148 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_A6 0x0046 | A6 sheet, 105 x 148 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_A6_ROTATED 0x0053 | A6 rotated sheet, 148 x 105 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_B4 0x000C | B4 sheet, 250 x 354 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_B4_JIS_ROTATED 0x004F | B4 (JIS) rotated sheet, 364 x 257 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_B5 0x000D | B5 sheet, 182 x 257-millimeter paper | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_B5_JIS_ROTATED 0x0050 | B5 (JIS) rotated sheet, 257 x 182 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_B6_JIS 0x0058 | B6 (JIS) sheet, 128 x 182 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_B6_JIS_ROTATED 0x0059 | B6 (JIS) rotated sheet, 182 x 128 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_CSHEET 0x0018 | C Sheet, 17 x 22 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_DBL_JAPANESE_POSTCARD 0x0045 | Double Japanese Postcard, 200 x 148 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_DBL_JAPANESE_POSTCARD_ROTATED 0x0052 | Double Japanese Postcard Rotated, 148 x 200 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_DSHEET 0x0019 | D Sheet, 22 x 34 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_9 0x0013 | #9 Envelope, 3 7/8 x 8 7/8 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_10 0x0014 | #10 Envelope, 4 1/8 x 9 1/2 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_11 0x0015 | #11 Envelope, 4 1/2 x 10 3/8 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_12 0x0016 | #12 Envelope, 4 3/4 x 11 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_14 0x0017 | #14 Envelope, 5 x 11 1/2 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_C5 0x001C | C5 Envelope, 162 x 229 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_C3 0x001D | C3 Envelope, 324 x 458 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_C4 0x001E | C4 Envelope, 229 x 324 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_C6 0x001F | C6 Envelope, 114 x 162 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_C65 0x0020 | C65 Envelope, 114 x 229 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_B4 0x0021 | B4 Envelope, 250 x 353 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_B5 0x0022 | B5 Envelope, 176 x 250 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_B6 0x0023 | B6 Envelope, 176 x 125 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_DL 0x001B | DL Envelope, 110 x 220 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_ITALY 0x0024 | Italy Envelope, 110 x 230 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_MONARCH 0x0025 | Monarch Envelope, 3 7/8 x 7 1/2 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ENV_PERSONAL 0x0026 | 6 3/4 Envelope, 3 5/8 x 6 1/2 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_ESHEET 0x001A | E Sheet, 34 x 44 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_EXECUTIVE 0x0007 | Executive, 7 1/4 x 10 1/2 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_FANFOLD_US 0x0027 | US Std Fanfold, 14 7/8 x 11 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_FANFOLD_STD_GERMAN 0x0028 | German Std Fanfold, 8 1/2 x 12 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_FANFOLD_LGL_GERMAN 0x0029 | German Legal Fanfold, 8 x 13 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_FOLIO 0x000E | Folio, 8 1/2 x 13-inch paper | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_JAPANESE_POSTCARD_ROTATED 0x0051 | Japanese Postcard Rotated, 148 x 100 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_JENV_CHOU3 0x0049 | Japanese Envelope Chou #3 | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_JENV_CHOU3_ROTATED 0x0056 | Japanese Envelope Chou #3 Rotated | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_JENV_CHOU4 0x004A | Japanese Envelope Chou #4 | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_JENV_CHOU4_ROTATED 0x0057 | Japanese Envelope Chou #4 Rotated | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_JENV_KAKU2 0x0047 | Japanese Envelope Kaku #2 | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_JENV_KAKU2_ROTATED 0x0054 | Japanese Envelope Kaku #2 Rotated | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_JENV_KAKU3 0x0048 | Japanese Envelope Kaku #3 | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_JENV_KAKU3_ROTATED 0x0055 | Japanese Envelope Kaku #3 Rotated | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_JENV_YOU4 0x005B | Japanese Envelope You #4 | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_JENV_YOU4_ROTATED 0x005C | Japanese Envelope You #4 Rotated | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_LEDGER 0x0004 | Ledger, 17 x 11 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_LETTER_ROTATED 0x004B | Letter Rotated, 11 by 8 1/2 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_LETTERSMALL 0x0002 | Letter Small, 8 1/2 x 11 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_NOTE 0x0012 | Note, 8 1/2 x 11-inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_P16K 0x005D | PRC 16K, 146 x 215 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_P16K_ROTATED 0x006A | PRC 16K Rotated, 215 x 146 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_P32K 0x005E | PRC 32K, 97 x 151 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_P32K_ROTATED 0x006B | PRC 32K Rotated, 151 x 97 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_P32KBIG 0x005F | PRC 32K(Big) 97 x 151 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_P32KBIG_ROTATED 0x006C | PRC 32K(Big) Rotated, 151 x 97 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_1 0x0060 | PRC Envelope #1, 102 by 165 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_1_ROTATED 0x006D | PRC Envelope #1 Rotated, 165 x 102 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_2 0x0061 | PRC Envelope #2, 102 x 176 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_2_ROTATED 0x006E | PRC Envelope #2 Rotated, 176 x 102 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_3 0x0062 | PRC Envelope #3, 125 x 176 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_3_ROTATED 0x006F | PRC Envelope #3 Rotated, 176 x 125 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_4 0x0063 | PRC Envelope #4, 110 x 208 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_4_ROTATED 0x0070 | PRC Envelope #4 Rotated, 208 x 110 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_5 0x0064 | PRC Envelope #5, 110 x 220 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_5_ROTATED 0x0071 | PRC Envelope #5 Rotated, 220 x 110 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_6 0x0065 | PRC Envelope #6, 120 x 230 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_6_ROTATED 0x0072 | PRC Envelope #6 Rotated, 230 x 120 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_7 0x0066 | PRC Envelope #7, 160 x 230 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_7_ROTATED 0x0073 | PRC Envelope #7 Rotated, 230 x 160 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_8 0x0067 | PRC Envelope #8, 120 x 309 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_8_ROTATED 0x0074 | PRC Envelope #8 Rotated, 309 x 120 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_9 0x0068 | PRC Envelope #9, 229 x 324 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_9_ROTATED 0x0075 | PRC Envelope #9 Rotated, 324 x 229 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_10 0x0069 | PRC Envelope #10, 324 x 458 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_PENV_10_ROTATED 0x0076 | PRC Envelope #10 Rotated, 458 x 324 millimeters | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_QUARTO 0x000F | Quarto, 215 x 275 millimeter paper | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_STATEMENT 0x0006 | Statement, 5 1/2 x 8 1/2 inches | // +----------------------------------------------+---------------------------------------------------------+ // | DMPAPER_TABLOID 0x0003 | Tabloid, 11 x 17 inches | // +----------------------------------------------+---------------------------------------------------------+ // | 0x0100 ≤ value | The value is device-specific. | // +----------------------------------------------+---------------------------------------------------------+ PaperSize int16 `idl:"name:dmPaperSize" json:"paper_size"` // dmPaperLength (2 bytes): If the DM_PAPERLENGTH bit is set in the dmFields field, // this field specifies the length of the paper, in tenths of a millimeter, to use in // the printer for which the job is destined. PaperLength int16 `idl:"name:dmPaperLength" json:"paper_length"` // dmPaperWidth (2 bytes): If the DM_PAPERWIDTH bit is set in the dmFields field, this // field specifies the width of the paper, in tenths of a millimeter, to use in the // printer for which the job is destined. PaperWidth int16 `idl:"name:dmPaperWidth" json:"paper_width"` // dmScale (2 bytes): If the DM_SCALE bit is set in the dmFields field, this field specifies // the percentage factor by which the printed output is to be scaled. Scale int16 `idl:"name:dmScale" json:"scale"` // dmCopies (2 bytes): If the DM_COPIES bit is set in the dmFields field, this field // specifies the number of copies to be printed, if the device supports multiple-page // copies. Copies int16 `idl:"name:dmCopies" json:"copies"` // dmDefaultSource (2 bytes): If the DM_DEFAULTSOURCE bit is set in the dmFields field, // this field specifies the paper source. // // The value of this field SHOULD be one of the following, or it MAY be a device-specific // value that is greater than or equal to 0x0100. // // +----------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +----------------------------+----------------------------------------------------------------------------------+ // +----------------------------+----------------------------------------------------------------------------------+ // | DMBIN_UPPER 0x0001 | Select the upper paper bin. This value is also used for the paper source for | // | | printers that only have one paper bin. | // +----------------------------+----------------------------------------------------------------------------------+ // | DMBIN_LOWER 0x0002 | Select the lower bin. | // +----------------------------+----------------------------------------------------------------------------------+ // | DMBIN_MIDDLE 0x0003 | Select the middle paper bin. | // +----------------------------+----------------------------------------------------------------------------------+ // | DMBIN_MANUAL 0x0004 | Manually select the paper bin. | // +----------------------------+----------------------------------------------------------------------------------+ // | DMBIN_ENVELOPE 0x0005 | Select the auto envelope bin. | // +----------------------------+----------------------------------------------------------------------------------+ // | DMBIN_ENVMANUAL 0x0006 | Select the manual envelope bin. | // +----------------------------+----------------------------------------------------------------------------------+ // | DMBIN_AUTO 0x0007 | Auto-select the bin. | // +----------------------------+----------------------------------------------------------------------------------+ // | DMBIN_TRACTOR 0x0008 | Select the bin with the tractor paper. | // +----------------------------+----------------------------------------------------------------------------------+ // | DMBIN_SMALLFMT 0x0009 | Select the bin with the smaller paper format. | // +----------------------------+----------------------------------------------------------------------------------+ // | DMBIN_LARGEFMT 0x000A | Select the bin with the larger paper format. | // +----------------------------+----------------------------------------------------------------------------------+ // | DMBIN_LARGECAPACITY 0x000B | Select the bin with large capacity. | // +----------------------------+----------------------------------------------------------------------------------+ // | DMBIN_CASSETTE 0x000E | Select the cassette bin. | // +----------------------------+----------------------------------------------------------------------------------+ // | DMBIN_FORMSOURCE 0x000F | Select the bin with the required form. | // +----------------------------+----------------------------------------------------------------------------------+ DefaultSource int16 `idl:"name:dmDefaultSource" json:"default_source"` // dmPrintQuality (2 bytes): If the DM_PRINTQUALITY bit is set in the dmFields field, // this field specifies the printer resolution. The value of this field MUST be either // a positive value that specifies a device-dependent resolution in dots per inch (DPI) // or one of the following four predefined device-independent values that are mapped // to a device-specific resolution in an implementation-specific manner. // // +---------------------+-----------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +---------------------+-----------------------------+ // +---------------------+-----------------------------+ // | DMRES_HIGH 0xFFFC | High-resolution printouts | // +---------------------+-----------------------------+ // | DMRES_MEDIUM 0xFFFD | Medium-resolution printouts | // +---------------------+-----------------------------+ // | DMRES_LOW 0xFFFE | Low-resolution printouts | // +---------------------+-----------------------------+ // | DMRES_DRAFT 0xFFFF | Draft-resolution printouts | // +---------------------+-----------------------------+ PrintQuality int16 `idl:"name:dmPrintQuality" json:"print_quality"` // dmColor (2 bytes): If the DM_COLOR bit is set in the dmFields field, this field specifies // the color mode to use with color printers. The value of this field MUST be one of // the following. // // +-------------------------+-------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +-------------------------+-------------------------------+ // +-------------------------+-------------------------------+ // | DMRES_MONOCHROME 0x0001 | Use monochrome printing mode. | // +-------------------------+-------------------------------+ // | DMRES_COLOR 0x0002 | Use color printing mode. | // +-------------------------+-------------------------------+ Color int16 `idl:"name:dmColor" json:"color"` // dmDuplex (2 bytes): If the DM_DUPLEX bit is set in the dmFields field, this field // specifies duplex or double-sided printing for printers that are capable of duplex // printing. The value of this field MUST be one of the following. // // +-------------------------+-----------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +-------------------------+-----------------------------------------------------------------------+ // +-------------------------+-----------------------------------------------------------------------+ // | DMDUP_SIMPLEX 0x0001 | Normal (non-duplex) printing. | // +-------------------------+-----------------------------------------------------------------------+ // | DMDUP_VERTICAL 0x0002 | Long-edge binding; that is, the long edge of the page is vertical. | // +-------------------------+-----------------------------------------------------------------------+ // | DMDUP_HORIZONTAL 0x0003 | Short-edge binding; that is, the long edge of the page is horizontal. | // +-------------------------+-----------------------------------------------------------------------+ Duplex int16 `idl:"name:dmDuplex" json:"duplex"` // dmYResolution (2 bytes): If the DM_YRESOLUTION bit is set in the dmFields, this field // specifies the y-resolution, in dots per inch, of the printer. YResolution int16 `idl:"name:dmYResolution" json:"y_resolution"` // dmTTOption (2 bytes): If the DM_TTOPTION bit is set in the dmFields field, this field // specifies how TrueType fonts MUST be printed. The value of this field MUST be one // of the following. // // +------------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +------------------------------+----------------------------------------------------------------------------------+ // +------------------------------+----------------------------------------------------------------------------------+ // | DMTT_BITMAP 0x0001 | Prints TrueType fonts as graphics. This is the default action for dot-matrix | // | | printers. | // +------------------------------+----------------------------------------------------------------------------------+ // | DMTT_DOWNLOAD 0x0002 | Downloads TrueType fonts as soft fonts. This is the default action for | // | | Hewlett-Packard printers that use printer control language (PCL). | // +------------------------------+----------------------------------------------------------------------------------+ // | DMTT_SUBDEV 0x0003 | Substitutes device fonts for TrueType fonts. This is the default action for | // | | PostScript printers. | // +------------------------------+----------------------------------------------------------------------------------+ // | DMTT_DOWNLOAD_OUTLINE 0x0004 | Downloads TrueType fonts as outline soft fonts.<96> | // +------------------------------+----------------------------------------------------------------------------------+ TTOption int16 `idl:"name:dmTTOption" json:"tt_option"` // dmCollate (2 bytes): If the DM_COLLATE bit is set in the dmFields field, this field // specifies whether collation is used when printing multiple copies. The value of this // field is one of the following: // // +------------------------+-----------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +------------------------+-----------------------------------------------+ // +------------------------+-----------------------------------------------+ // | DMCOLLATE_FALSE 0x0000 | Do not collate when printing multiple copies. | // +------------------------+-----------------------------------------------+ // | DMCOLLATE_TRUE 0x0001 | Collate when printing multiple copies. | // +------------------------+-----------------------------------------------+ Collate int16 `idl:"name:dmCollate" json:"collate"` // dmFormName (64 bytes): This field is a 32-element array of 16-bit Unicode characters. // If the DM_FORMNAME bit is set in the dmFields field, this field specifies the name // of the form to use, for example, "Letter" or "Legal". The value of this field is // restricted to 32 characters, including the trailing null. Form names that are longer // than 32 characters, including the trailing null, are truncated to fit the array. FormName []uint16 `idl:"name:dmFormName" json:"form_name"` // dmNup (4 bytes): If the DM_NUP bit is set in the dmFields, this field specifies the // responsibility for performing page layout for N-Up Printing. It is one of the following // values: // // +-------------------------+----------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +-------------------------+----------------------------------------+ // +-------------------------+----------------------------------------+ // | DMNUP_SYSTEM 0x00000001 | The print server does the page layout. | // +-------------------------+----------------------------------------+ // | DMNUP_ONEUP 0x00000002 | The application does the page layout. | // +-------------------------+----------------------------------------+ NUp uint32 `idl:"name:dmNup" json:"nup"` // dmICMMethod (4 bytes): If the DM_ICMMETHOD bit is set in the dmFields field, this // field specifies how Image Color Management (ICM) is handled. For a non-ICM application, // this field determines if ICM is enabled or disabled. For ICM applications, the system // examines this field to determine how to handle ICM support. The value of this field // is one of the following predefined values or a printer driver-defined value greater // than or equal to 0x00000100. // // +-------------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +-------------------------------+----------------------------------------------------------------------------------+ // +-------------------------------+----------------------------------------------------------------------------------+ // | DMICMMETHOD_NONE 0x00000001 | Specifies that ICM is disabled. | // +-------------------------------+----------------------------------------------------------------------------------+ // | DMICMMETHOD_SYSTEM 0x00000002 | Specifies that ICM is handled by the system on which the page description | // | | language (PDL) data is generated. | // +-------------------------------+----------------------------------------------------------------------------------+ // | DMICMMETHOD_DRIVER 0x00000003 | Specifies that ICM is handled by the printer driver. | // +-------------------------------+----------------------------------------------------------------------------------+ // | DMICMMETHOD_DEVICE 0x00000004 | Specifies that ICM is handled by the destination device. | // +-------------------------------+----------------------------------------------------------------------------------+ ICMMethod uint32 `idl:"name:dmICMMethod" json:"icm_method"` // dmICMIntent (4 bytes): If the DM_ICMINTENT bit is set in the dmFields field, this // field specifies which color matching method, or intent, is used by default. This // field is primarily for non-ICM applications. ICM applications can establish intents // by using the ICM functions. The value of this field is one of the following predefined // values, or a printer driver defined value greater than or equal to 0x00000100. // // +-----------------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +-----------------------------------+----------------------------------------------------------------------------------+ // +-----------------------------------+----------------------------------------------------------------------------------+ // | DMICM_SATURATE 0x00000001 | Color matching SHOULD be optimized for color saturation. | // +-----------------------------------+----------------------------------------------------------------------------------+ // | DMICM_CONTRAST 0x00000002 | Color matching SHOULD optimize for color contrast. | // +-----------------------------------+----------------------------------------------------------------------------------+ // | DMICM_COLORIMETRIC 0x00000003 | Color matching SHOULD optimize to match the exact color requested. | // +-----------------------------------+----------------------------------------------------------------------------------+ // | DMICM_ABS_COLORIMETRIC 0x00000004 | Color matching SHOULD optimize to match the exact color requested without white | // | | point mapping. | // +-----------------------------------+----------------------------------------------------------------------------------+ ICMIntent uint32 `idl:"name:dmICMIntent" json:"icm_intent"` // dmMediaType (4 bytes): If the DM_MEDIATYPE bit is set in the dmFields field, this // field specifies the type of media to print on. The value of this field is one of // the following predefined values or else a printer driver-defined value greater than // or equal to 0x00000100. // // +---------------------------------+------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +---------------------------------+------------------+ // +---------------------------------+------------------+ // | DMMEDIA_STANDARD 0x00000001 | Plain paper | // +---------------------------------+------------------+ // | DMMEDIA_TRANSPARENCY 0x00000002 | Transparent film | // +---------------------------------+------------------+ // | DMMEDIA_GLOSSY 0x00000003 | Glossy paper | // +---------------------------------+------------------+ MediaType uint32 `idl:"name:dmMediaType" json:"media_type"` // dmDitherType (4 bytes): If the DM_DITHERTYPE bit is set in the dmFields field, this // field specifies how dithering is to be done. The value of this field is one of the // following predefined values or else a printer driver-defined value greater than or // equal to 0x00000100. // // +------------------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +------------------------------------+----------------------------------------------------------------------------------+ // +------------------------------------+----------------------------------------------------------------------------------+ // | DMDITHER_NONE 0x00000001 | No dithering. | // +------------------------------------+----------------------------------------------------------------------------------+ // | DMDITHER_COARSE 0x00000002 | Dithering with a coarse brush. | // +------------------------------------+----------------------------------------------------------------------------------+ // | DMDITHER_FINE 0x00000003 | Dithering with a fine brush. | // +------------------------------------+----------------------------------------------------------------------------------+ // | DMDITHER_LINEART 0x00000004 | Line art dithering, a special dithering method that produces well defined | // | | borders between black, white, and gray scaling. | // +------------------------------------+----------------------------------------------------------------------------------+ // | DMDITHER_ERRORDIFFUSION 0x00000005 | Error diffusion dithering.<97> | // +------------------------------------+----------------------------------------------------------------------------------+ // | DMDITHER_RESERVED6 0x00000006 | Same as DMDITHER_LINEART. | // +------------------------------------+----------------------------------------------------------------------------------+ // | DMDITHER_RESERVED7 0x00000007 | Same as DMDITHER_LINEART. | // +------------------------------------+----------------------------------------------------------------------------------+ // | DMDITHER_RESERVED8 0x00000008 | Same as DMDITHER_LINEART. | // +------------------------------------+----------------------------------------------------------------------------------+ // | DMDITHER_RESERVED9 0x00000009 | Same as DMDITHER_LINEART. | // +------------------------------------+----------------------------------------------------------------------------------+ // | DMDITHER_GRAYSCALE 0x0000000A | Device does gray scaling. | // +------------------------------------+----------------------------------------------------------------------------------+ DitherType uint32 `idl:"name:dmDitherType" json:"dither_type"` // contains filtered or unexported fields }
DevMode structure represents DEVMODE RPC structure.
The DEVMODE structure is a truncated form of the variable-length, custom-marshaled _DEVMODE structure (section 2.2.2.1), which is version-specific and implementation-specific and cannot be expressed using IDL attributes.
All members of this structure are specified in section 2.2.2.1.
The _DEVMODE structure defines initialization data for a printer. Although the _DEVMODE structure does not contain any pointers, it is still custom-marshaled, because the size of the structure is version-specific and implementation-specific, and cannot be expressed using IDL attributes. It has the following message format.
The print server MUST accept _DEVMODE structures with truncated public information. A truncated _DEVMODE structure contains a subset of fields, from dmDeviceName up to and including dmFields, plus at least those fields that are initialized as specified by dmFields. It is followed by private, printer driver–specific data, the size of which is specified by the dmDriverExtra field.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmDeviceName (64 bytes) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmSpecVersion | dmDriverVersion | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmSize | dmDriverExtra | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmFields | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmOrientation | dmPaperSize | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmPaperLength | dmPaperWidth | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmScale | dmCopies | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmDefaultSource | dmPrintQuality | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmColor | dmDuplex | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmYResolution | dmTTOption | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmCollate | dmFormName (64 bytes) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | reserved0 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | reserved1 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | reserved2 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | reserved3 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmNup | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | reserved4 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmICMMethod | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmICMIntent | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmMediaType | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmDitherType | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | reserved5 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | reserved6 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | reserved7 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | reserved8 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | dmDriverExtraData (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
type DevModeContainer ¶
type DevModeContainer struct { // cbBuf: The size, in bytes, of the buffer pointed to by the pDevMode member. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` // pDevMode: An optional pointer to a variable-length, custom-marshaled _DEVMODE structure. // The NULL value MUST be used to indicate that the default initialization data for // the printer driver SHOULD be used. DevMode []byte `idl:"name:pDevMode;size_is:(cbBuf);pointer:unique" json:"dev_mode"` }
DevModeContainer structure represents DEVMODE_CONTAINER RPC structure.
The DEVMODE_CONTAINER structure specifies a _DEVMODE structure (section 2.2.2.1), which contains data for the initialization of a print device by a printer driver.
func (*DevModeContainer) MarshalNDR ¶
func (*DevModeContainer) UnmarshalNDR ¶
type DocInfo1 ¶
type DocInfo1 struct { // pDocName: An optional pointer to a string that provides the name of the document. // If this member is NULL, the print server SHOULD use an implementation-specific default // job name.<22> DocName string `idl:"name:pDocName;string" json:"doc_name"` // pOutputFile: An optional pointer to a string that specifies the name of an output // file. For rules governing path names, see section 2.2.4.9. OutputFile string `idl:"name:pOutputFile;string" json:"output_file"` // pDatatype: An optional pointer to a string that identifies the type of data used // to record the document. For rules governing data type names, see section 2.2.4.2. DataType string `idl:"name:pDatatype;string" json:"data_type"` }
DocInfo1 structure represents DOC_INFO_1 RPC structure.
The DOC_INFO_1 structure describes a document that is printed.
func (*DocInfo1) MarshalNDR ¶
type DocInfoContainer ¶
type DocInfoContainer struct { // Level: This member specifies the information level of the DocInfo member data. The // value of this member MUST be set to 0x00000001. Level uint32 `idl:"name:Level" json:"level"` // DocInfo: This member MUST define document properties, using an information structure // that MUST correspond to the value of the Level member. DocInfo *DocInfoContainer_DocInfo `idl:"name:DocInfo;switch_is:Level" json:"doc_info"` }
DocInfoContainer structure represents DOC_INFO_CONTAINER RPC structure.
The DOC_INFO_CONTAINER structure provides information about the document to be printed, using the DOC_INFO_1 structure.
func (*DocInfoContainer) MarshalNDR ¶
func (*DocInfoContainer) UnmarshalNDR ¶
type DocInfoContainer_DocInfo ¶
type DocInfoContainer_DocInfo struct { // Types that are assignable to Value // // *DocInfoContainer_DocInfo1 Value is_DocInfoContainer_DocInfo `json:"value"` }
DocInfoContainer_DocInfo structure represents DOC_INFO_CONTAINER union anonymous member.
The DOC_INFO_CONTAINER structure provides information about the document to be printed, using the DOC_INFO_1 structure.
func (*DocInfoContainer_DocInfo) GetValue ¶
func (o *DocInfoContainer_DocInfo) GetValue() any
func (*DocInfoContainer_DocInfo) MarshalUnionNDR ¶
func (*DocInfoContainer_DocInfo) NDRSwitchValue ¶
func (o *DocInfoContainer_DocInfo) NDRSwitchValue(sw uint32) uint32
func (*DocInfoContainer_DocInfo) UnmarshalUnionNDR ¶
type DocInfoContainer_DocInfo1 ¶
type DocInfoContainer_DocInfo1 struct { // pDocInfo1: A pointer to a DOC_INFO_1 structure (section 2.2.1.4) that describes the // document that is printed. DocInfo1 *DocInfo1 `idl:"name:pDocInfo1" json:"doc_info1"` }
DocInfoContainer_DocInfo1 structure represents DocInfoContainer_DocInfo RPC union arm.
It has following labels: 1
func (*DocInfoContainer_DocInfo1) MarshalNDR ¶
func (*DocInfoContainer_DocInfo1) UnmarshalNDR ¶
type DriverContainer ¶
type DriverContainer struct { // Level: Specifies the information level of the DriverInfo data. The value of this // member MUST be in the range 0x00000002 to 0x00000004 inclusive, 0x00000006, or 0x00000008. Level uint32 `idl:"name:Level" json:"level"` // DriverInfo: Defines printer driver properties by using an information structure that // corresponds to the value of the Level member. DriverInfo *DriverContainer_DriverInfo `idl:"name:DriverInfo;switch_is:Level" json:"driver_info"` }
DriverContainer structure represents DRIVER_CONTAINER RPC structure.
The DRIVER_CONTAINER structure provides information about printer drivers by using DRIVER_INFO structures (section 2.2.1.5). The DriverInfo member specifies the structure that defines the properties of a printer driver.
func (*DriverContainer) MarshalNDR ¶
func (*DriverContainer) UnmarshalNDR ¶
type DriverContainer_DriverInfo ¶
type DriverContainer_DriverInfo struct { // Types that are assignable to Value // // *DriverContainer_DriverInfo_NotUsed // *DriverContainer_DriverInfo_Level2 // *DriverContainer_DriverInfo_Level3 // *DriverContainer_DriverInfo_Level4 // *DriverContainer_DriverInfo_Level6 // *DriverContainer_DriverInfo_Level8 Value is_DriverContainer_DriverInfo `json:"value"` }
DriverContainer_DriverInfo structure represents DRIVER_CONTAINER union anonymous member.
The DRIVER_CONTAINER structure provides information about printer drivers by using DRIVER_INFO structures (section 2.2.1.5). The DriverInfo member specifies the structure that defines the properties of a printer driver.
func (*DriverContainer_DriverInfo) GetValue ¶
func (o *DriverContainer_DriverInfo) GetValue() any
func (*DriverContainer_DriverInfo) MarshalUnionNDR ¶
func (*DriverContainer_DriverInfo) NDRSwitchValue ¶
func (o *DriverContainer_DriverInfo) NDRSwitchValue(sw uint32) uint32
func (*DriverContainer_DriverInfo) UnmarshalUnionNDR ¶
type DriverContainer_DriverInfo_Level2 ¶
type DriverContainer_DriverInfo_Level2 struct { // Level2: If the Level member is 0x00000002, this member is a pointer to a DRIVER_INFO_2 // structure that provides printer driver information. For details, see section 2.2.1.5.2. Level2 *DriverInfo2 `idl:"name:Level2" json:"level2"` }
DriverContainer_DriverInfo_Level2 structure represents DriverContainer_DriverInfo RPC union arm.
It has following labels: 2
func (*DriverContainer_DriverInfo_Level2) MarshalNDR ¶
func (*DriverContainer_DriverInfo_Level2) UnmarshalNDR ¶
type DriverContainer_DriverInfo_Level3 ¶
type DriverContainer_DriverInfo_Level3 struct { // Level3: If the Level member is 0x00000003, this member is a pointer to an RPC_DRIVER_INFO_3 // structure that provides printer driver information. For details, see section 2.2.1.5.3. Level3 *DriverInfo3 `idl:"name:Level3" json:"level3"` }
DriverContainer_DriverInfo_Level3 structure represents DriverContainer_DriverInfo RPC union arm.
It has following labels: 3
func (*DriverContainer_DriverInfo_Level3) MarshalNDR ¶
func (*DriverContainer_DriverInfo_Level3) UnmarshalNDR ¶
type DriverContainer_DriverInfo_Level4 ¶
type DriverContainer_DriverInfo_Level4 struct { // Level4: If the Level member is 0x00000004, this member is a pointer to an RPC_DRIVER_INFO_4 // structure that provides printer driver information. For details, see section 2.2.1.5.4. Level4 *DriverInfo4 `idl:"name:Level4" json:"level4"` }
DriverContainer_DriverInfo_Level4 structure represents DriverContainer_DriverInfo RPC union arm.
It has following labels: 4
func (*DriverContainer_DriverInfo_Level4) MarshalNDR ¶
func (*DriverContainer_DriverInfo_Level4) UnmarshalNDR ¶
type DriverContainer_DriverInfo_Level6 ¶
type DriverContainer_DriverInfo_Level6 struct { // Level6: If the Level member is 0x00000006, this member is a pointer to an RPC_DRIVER_INFO_6 // structure that provides printer driver information. For details, see section 2.2.1.5.5. Level6 *DriverInfo6 `idl:"name:Level6" json:"level6"` }
DriverContainer_DriverInfo_Level6 structure represents DriverContainer_DriverInfo RPC union arm.
It has following labels: 6
func (*DriverContainer_DriverInfo_Level6) MarshalNDR ¶
func (*DriverContainer_DriverInfo_Level6) UnmarshalNDR ¶
type DriverContainer_DriverInfo_Level8 ¶
type DriverContainer_DriverInfo_Level8 struct { // Level8: If the Level member is 0x00000008, this member is a pointer to an RPC_DRIVER_INFO_8 // structure that provides printer driver information. For details, see section 2.2.1.5.6. Level8 *DriverInfo8 `idl:"name:Level8" json:"level8"` }
DriverContainer_DriverInfo_Level8 structure represents DriverContainer_DriverInfo RPC union arm.
It has following labels: 8
func (*DriverContainer_DriverInfo_Level8) MarshalNDR ¶
func (*DriverContainer_DriverInfo_Level8) UnmarshalNDR ¶
type DriverContainer_DriverInfo_NotUsed ¶
type DriverContainer_DriverInfo_NotUsed struct { // pNotUsed: A pointer to a structure that is specified only as a placeholder in the // IDL and MUST be ignored. NotUsed *DriverInfo1 `idl:"name:pNotUsed" json:"not_used"` }
DriverContainer_DriverInfo_NotUsed structure represents DriverContainer_DriverInfo RPC union arm.
It has following labels: 1
func (*DriverContainer_DriverInfo_NotUsed) MarshalNDR ¶
func (*DriverContainer_DriverInfo_NotUsed) UnmarshalNDR ¶
type DriverInfo1 ¶
type DriverInfo1 struct {
Name string `idl:"name:pName;string" json:"name"`
}
DriverInfo1 structure represents DRIVER_INFO_1 RPC structure.
The _DRIVER_INFO_1 structure specifies printer driver information. It is a custom-marshaled form of the _DRIVER_INFO_1 (section 2.2.1.5.1) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
The DRIVER_INFO_1 structure provides information about a printer driver.
All members not defined in this section are specified in sections 2.2.1.3.1 and 2.2.1.3.
func (*DriverInfo1) MarshalNDR ¶
func (*DriverInfo1) UnmarshalNDR ¶
type DriverInfo2 ¶
type DriverInfo2 struct { VersionCount uint32 `idl:"name:cVersion" json:"version_count"` Name string `idl:"name:pName;string" json:"name"` Environment string `idl:"name:pEnvironment;string" json:"environment"` DriverPath string `idl:"name:pDriverPath;string" json:"driver_path"` DataFile string `idl:"name:pDataFile;string" json:"data_file"` ConfigFile string `idl:"name:pConfigFile;string" json:"config_file"` }
DriverInfo2 structure represents DRIVER_INFO_2 RPC structure.
The _DRIVER_INFO_2 structure specifies printer driver information. It is a custom-marshaled form of the _DRIVER_INFO_2 (section 2.2.1.5.2) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
The DRIVER_INFO_2 structure provides information about a printer driver.
All members not defined in this section are specified in sections 2.2.1.3.1 and 2.2.1.3.
func (*DriverInfo2) MarshalNDR ¶
func (*DriverInfo2) UnmarshalNDR ¶
type DriverInfo3 ¶
type DriverInfo3 struct { VersionCount uint32 `idl:"name:cVersion" json:"version_count"` Name string `idl:"name:pName;string" json:"name"` Environment string `idl:"name:pEnvironment;string" json:"environment"` DriverPath string `idl:"name:pDriverPath;string" json:"driver_path"` DataFile string `idl:"name:pDataFile;string" json:"data_file"` ConfigFile string `idl:"name:pConfigFile;string" json:"config_file"` HelpFile string `idl:"name:pHelpFile;string" json:"help_file"` MonitorName string `idl:"name:pMonitorName;string" json:"monitor_name"` DefaultDataType string `idl:"name:pDefaultDataType;string" json:"default_data_type"` DependentFilesLength uint32 `idl:"name:cchDependentFiles" json:"dependent_files_length"` DependentFiles string `idl:"name:pDependentFiles;size_is:(cchDependentFiles);pointer:unique" json:"dependent_files"` }
DriverInfo3 structure represents RPC_DRIVER_INFO_3 RPC structure.
The RPC_DRIVER_INFO_3 structure provides information about a printer driver.<23>
All members not defined in this section are specified in sections 2.2.1.3.1 and 2.2.1.3.
func (*DriverInfo3) MarshalNDR ¶
func (*DriverInfo3) UnmarshalNDR ¶
type DriverInfo4 ¶
type DriverInfo4 struct { VersionCount uint32 `idl:"name:cVersion" json:"version_count"` Name string `idl:"name:pName;string" json:"name"` Environment string `idl:"name:pEnvironment;string" json:"environment"` DriverPath string `idl:"name:pDriverPath;string" json:"driver_path"` DataFile string `idl:"name:pDataFile;string" json:"data_file"` ConfigFile string `idl:"name:pConfigFile;string" json:"config_file"` HelpFile string `idl:"name:pHelpFile;string" json:"help_file"` MonitorName string `idl:"name:pMonitorName;string" json:"monitor_name"` DefaultDataType string `idl:"name:pDefaultDataType;string" json:"default_data_type"` DependentFilesLength uint32 `idl:"name:cchDependentFiles" json:"dependent_files_length"` DependentFiles string `idl:"name:pDependentFiles;size_is:(cchDependentFiles);pointer:unique" json:"dependent_files"` PreviousNamesLength uint32 `idl:"name:cchPreviousNames" json:"previous_names_length"` PreviousNames string `idl:"name:pszzPreviousNames;size_is:(cchPreviousNames);pointer:unique" json:"previous_names"` }
DriverInfo4 structure represents RPC_DRIVER_INFO_4 RPC structure.
The RPC_DRIVER_INFO_4 structure provides information about a printer driver.<24>
All members not defined in this section are specified in sections 2.2.1.3.1 and 2.2.1.3.
func (*DriverInfo4) MarshalNDR ¶
func (*DriverInfo4) UnmarshalNDR ¶
type DriverInfo6 ¶
type DriverInfo6 struct { VersionCount uint32 `idl:"name:cVersion" json:"version_count"` Name string `idl:"name:pName;string" json:"name"` Environment string `idl:"name:pEnvironment;string" json:"environment"` DriverPath string `idl:"name:pDriverPath;string" json:"driver_path"` DataFile string `idl:"name:pDataFile;string" json:"data_file"` ConfigFile string `idl:"name:pConfigFile;string" json:"config_file"` HelpFile string `idl:"name:pHelpFile;string" json:"help_file"` MonitorName string `idl:"name:pMonitorName;string" json:"monitor_name"` DefaultDataType string `idl:"name:pDefaultDataType;string" json:"default_data_type"` DependentFilesLength uint32 `idl:"name:cchDependentFiles" json:"dependent_files_length"` DependentFiles string `idl:"name:pDependentFiles;size_is:(cchDependentFiles);pointer:unique" json:"dependent_files"` PreviousNamesLength uint32 `idl:"name:cchPreviousNames" json:"previous_names_length"` PreviousNames string `idl:"name:pszzPreviousNames;size_is:(cchPreviousNames);pointer:unique" json:"previous_names"` DriverDate *dtyp.Filetime `idl:"name:ftDriverDate" json:"driver_date"` DriverVersion uint64 `idl:"name:dwlDriverVersion" json:"driver_version"` ManufacturerName string `idl:"name:pMfgName;string" json:"manufacturer_name"` OEMURL string `idl:"name:pOEMUrl;string" json:"oem_url"` HardwareID string `idl:"name:pHardwareID;string" json:"hardware_id"` Provider string `idl:"name:pProvider;string" json:"provider"` }
DriverInfo6 structure represents RPC_DRIVER_INFO_6 RPC structure.
The RPC_DRIVER_INFO_6 structure provides extended printer driver information.<25>
All members not defined in this section are specified in sections 2.2.1.3.1 and 2.2.1.3.
func (*DriverInfo6) MarshalNDR ¶
func (*DriverInfo6) UnmarshalNDR ¶
type DriverInfo8 ¶
type DriverInfo8 struct { VersionCount uint32 `idl:"name:cVersion" json:"version_count"` Name string `idl:"name:pName;string" json:"name"` Environment string `idl:"name:pEnvironment;string" json:"environment"` DriverPath string `idl:"name:pDriverPath;string" json:"driver_path"` DataFile string `idl:"name:pDataFile;string" json:"data_file"` ConfigFile string `idl:"name:pConfigFile;string" json:"config_file"` HelpFile string `idl:"name:pHelpFile;string" json:"help_file"` MonitorName string `idl:"name:pMonitorName;string" json:"monitor_name"` DefaultDataType string `idl:"name:pDefaultDataType;string" json:"default_data_type"` DependentFilesLength uint32 `idl:"name:cchDependentFiles" json:"dependent_files_length"` DependentFiles string `idl:"name:pDependentFiles;size_is:(cchDependentFiles);pointer:unique" json:"dependent_files"` PreviousNamesLength uint32 `idl:"name:cchPreviousNames" json:"previous_names_length"` PreviousNames string `idl:"name:pszzPreviousNames;size_is:(cchPreviousNames);pointer:unique" json:"previous_names"` DriverDate *dtyp.Filetime `idl:"name:ftDriverDate" json:"driver_date"` DriverVersion uint64 `idl:"name:dwlDriverVersion" json:"driver_version"` ManufacturerName string `idl:"name:pMfgName;string" json:"manufacturer_name"` OEMURL string `idl:"name:pOEMUrl;string" json:"oem_url"` HardwareID string `idl:"name:pHardwareID;string" json:"hardware_id"` Provider string `idl:"name:pProvider;string" json:"provider"` // pPrintProcessor: A pointer to a string that specifies the print processor for this // printer. For rules governing print processor names, see section 2.2.4.11. PrintProcessor string `idl:"name:pPrintProcessor;string" json:"print_processor"` // pVendorSetup: An optional pointer to a string that specifies the name of the vendor // setup file used for hardware vendor-provided custom setup. VendorSetup string `idl:"name:pVendorSetup;string" json:"vendor_setup"` // cchColorProfiles: The number of characters in the multisz structure pointed to by // the pszzColorProfiles member. ColorProfilesLength uint32 `idl:"name:cchColorProfiles" json:"color_profiles_length"` // pszzColorProfiles: An optional pointer to a multisz structure that contains the names // of all color profile files for this driver. ColorProfiles string `idl:"name:pszzColorProfiles;size_is:(cchColorProfiles);pointer:unique" json:"color_profiles"` // pInfPath: An optional pointer to a string that specifies the path to the installation // configuration file in the driver store that identifies the printer driver for installation.<27> InfPath string `idl:"name:pInfPath;string" json:"inf_path"` // dwPrinterDriverAttributes: A bit field that specifies attributes of the printer driver. // // When used as an input parameter in a call to RpcAddPrinterDriverEx, this value MUST // be zero. When used as output in the custom-marshaled form of this structure (_DRIVER_INFO_8), // this bit field is defined as one or more of the bit flags described in the following // table. // // +-----------------------------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +-----------------------------------------------+----------------------------------------------------------------------------------+ // +-----------------------------------------------+----------------------------------------------------------------------------------+ // | PRINTER_DRIVER_PACKAGE_AWARE 0x00000001 | The printer driver is part of a driver package.<28> | // +-----------------------------------------------+----------------------------------------------------------------------------------+ // | PRINTER_DRIVER_XPS 0x00000002 | The printer driver supports the Microsoft XML Paper Specification (XPS) format | // | | described in [MSFT-XMLPAPER].<29> | // +-----------------------------------------------+----------------------------------------------------------------------------------+ // | PRINTER_DRIVER_SANDBOX_ENABLED 0x00000004 | The printer driver is compatible with printer driver isolation.<30> | // +-----------------------------------------------+----------------------------------------------------------------------------------+ // | PRINTER_DRIVER_CLASS 0x00000008 | The printer driver is a class printer driver.<31> | // +-----------------------------------------------+----------------------------------------------------------------------------------+ // | PRINTER_DRIVER_DERIVED 0x00000010 | The printer driver is a derived printer driver.<32> | // +-----------------------------------------------+----------------------------------------------------------------------------------+ // | PRINTER_DRIVER_NOT_SHAREABLE 0x00000020 | Printers using the printer driver cannot be shared.<33> | // +-----------------------------------------------+----------------------------------------------------------------------------------+ // | PRINTER_DRIVER_CATEGORY_FAX 0x00000040 | The printer driver is intended for use with fax printers.<34> | // +-----------------------------------------------+----------------------------------------------------------------------------------+ // | PRINTER_DRIVER_CATEGORY_FILE 00x00000080 | The printer driver is intended for use with file printers.<35> | // +-----------------------------------------------+----------------------------------------------------------------------------------+ // | PRINTER_DRIVER_CATEGORY_VIRTUAL 0x00000100 | The printer driver is intended for use with virtual printers.<36> | // +-----------------------------------------------+----------------------------------------------------------------------------------+ // | PRINTER_DRIVER_CATEGORY_SERVICE 0x00000200 | The printer driver is intended for use with service printers.<37> | // +-----------------------------------------------+----------------------------------------------------------------------------------+ // | PRINTER_DRIVER_SOFT_RESET_REQUIRED 0x00000400 | Printers using this printer driver SHOULD use an implementation-specific | // | | mechanism to reset the printer when a print job is canceled.<38> | // +-----------------------------------------------+----------------------------------------------------------------------------------+ // | PRINTER_DRIVER_CATEGORY_3D 0x00001000 | The printer driver is intended for use with 3D printers.<39> | // +-----------------------------------------------+----------------------------------------------------------------------------------+ PrinterDriverAttributes uint32 `idl:"name:dwPrinterDriverAttributes" json:"printer_driver_attributes"` // cchCoreDependencies: The number of characters in the multisz structure pointed to // by the pszzCoreDriverDependencies member. CoreDependenciesLength uint32 `idl:"name:cchCoreDependencies" json:"core_dependencies_length"` // pszzCoreDriverDependencies: An optional pointer to a multisz structure that contains // the names of the core dependencies as specified by the installation configuration // file. These names specify the core sections of the installation configuration file // that are required by the printer driver.<40> CoreDriverDependencies string `idl:"name:pszzCoreDriverDependencies;size_is:(cchCoreDependencies);pointer:unique" json:"core_driver_dependencies"` // ftMinInboxDriverVerDate: A FILETIME value ([MS-DTYP] section 2.3.3) that specifies // the minimum date version that is required in order for any core printer driver to // be used as a dependency as listed in the multisz structure pointed to by the pszzCoreDriverDependencies // member. The value of this member MUST be specified in the same format as the ftDriverDate // member.<41> MinInboxDriverVerDate *dtyp.Filetime `idl:"name:ftMinInboxDriverVerDate" json:"min_inbox_driver_ver_date"` // dwlMinInboxDriverVerVersion: The minimum file version that is required for any core // printer driver to be used as a dependency as listed in the multisz structure pointed // to by the pszzCoreDriverDependencies member. The value of this member MUST be specified // in the same format as the dwlDriverVersion member.<42> // // All members not defined in this section are specified in sections 2.2.1.3.1 and 2.2.1.3. MinInboxDriverVerVersion uint64 `idl:"name:dwlMinInboxDriverVerVersion" json:"min_inbox_driver_ver_version"` }
DriverInfo8 structure represents RPC_DRIVER_INFO_8 RPC structure.
The RPC_DRIVER_INFO_8 structure specifies extended printer driver information.<26>
func (*DriverInfo8) MarshalNDR ¶
func (*DriverInfo8) UnmarshalNDR ¶
type EndDocPrinterRequest ¶
type EndDocPrinterRequest struct { // hPrinter: A handle to a printer object or port object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` }
EndDocPrinterRequest structure represents the RpcEndDocPrinter operation request
func (*EndDocPrinterRequest) MarshalNDR ¶
func (*EndDocPrinterRequest) UnmarshalNDR ¶
type EndDocPrinterResponse ¶
type EndDocPrinterResponse struct { // Return: The RpcEndDocPrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
EndDocPrinterResponse structure represents the RpcEndDocPrinter operation response
func (*EndDocPrinterResponse) MarshalNDR ¶
func (*EndDocPrinterResponse) UnmarshalNDR ¶
type EndPagePrinterRequest ¶
type EndPagePrinterRequest struct { // hPrinter: A handle to a printer object or port object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` }
EndPagePrinterRequest structure represents the RpcEndPagePrinter operation request
func (*EndPagePrinterRequest) MarshalNDR ¶
func (*EndPagePrinterRequest) UnmarshalNDR ¶
type EndPagePrinterResponse ¶
type EndPagePrinterResponse struct { // Return: The RpcEndPagePrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
EndPagePrinterResponse structure represents the RpcEndPagePrinter operation response
func (*EndPagePrinterResponse) MarshalNDR ¶
func (*EndPagePrinterResponse) UnmarshalNDR ¶
type EnumFormsRequest ¶
type EnumFormsRequest struct { // hPrinter: A handle to a printer object or server object that MUST have been opened // by using the RpcAddPrinter, RpcAddPrinterEx, RpcOpenPrinter, or RpcOpenPrinterEx // methods. Printer *Printer `idl:"name:hPrinter" json:"printer"` // Level: This value refers to the level of form information structure, as follows. // // +------------+--------------------------------------------------+ // | | | // | VALUE | DESCRIPTION | // | | | // +------------+--------------------------------------------------+ // +------------+--------------------------------------------------+ // | 0x00000001 | Corresponds to _FORM_INFO_1 (section 2.2.2.5.1). | // +------------+--------------------------------------------------+ // | 0x00000002 | Corresponds to _FORM_INFO_2 (section 2.2.2.5.2). | // +------------+--------------------------------------------------+ Level uint32 `idl:"name:Level" json:"level"` // pForm: This parameter MAY be NULL if cbBuf equals zero; otherwise, it is a pointer // to the BUFFER, as specified in INFO Structures Query Parameters, section 3.1.4.1.9. Form []byte `idl:"name:pForm;size_is:(cbBuf);pointer:unique" json:"form"` // cbBuf: This parameter MUST adhere to the parameter specification in INFO Structures // Query Parameters, section 3.1.4.1.9. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
EnumFormsRequest structure represents the RpcEnumForms operation request
func (*EnumFormsRequest) MarshalNDR ¶
func (*EnumFormsRequest) UnmarshalNDR ¶
type EnumFormsResponse ¶
type EnumFormsResponse struct { // pForm: This parameter MAY be NULL if cbBuf equals zero; otherwise, it is a pointer // to the BUFFER, as specified in INFO Structures Query Parameters, section 3.1.4.1.9. Form []byte `idl:"name:pForm;size_is:(cbBuf);pointer:unique" json:"form"` // pcbNeeded: This parameter MUST adhere to the parameter specification in INFO Structures // Query Parameters, section 3.1.4.1.9. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // pcReturned: This parameter MUST adhere to the parameter specification in INFO Structures // Query Parameters, section 3.1.4.1.9. ReturnedCount uint32 `idl:"name:pcReturned" json:"returned_count"` // Return: The RpcEnumForms return value. Return uint32 `idl:"name:Return" json:"return"` }
EnumFormsResponse structure represents the RpcEnumForms operation response
func (*EnumFormsResponse) MarshalNDR ¶
func (*EnumFormsResponse) UnmarshalNDR ¶
type EnumJobNamedPropertiesRequest ¶
type EnumJobNamedPropertiesRequest struct { // hPrinter: A PRINTER_HANDLE (section 2.2.1.1.4) to a printer object, job object, or // server object that was opened by RpcAddPrinter (section 3.1.4.2.3), RpcAddPrinterEx // (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), or RpcOpenPrinterEx (section // 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // JobId: The identifier of a print job. This value MUST NOT be zero. JobID uint32 `idl:"name:JobId" json:"job_id"` }
EnumJobNamedPropertiesRequest structure represents the RpcEnumJobNamedProperties operation request
func (*EnumJobNamedPropertiesRequest) MarshalNDR ¶
func (*EnumJobNamedPropertiesRequest) UnmarshalNDR ¶
type EnumJobNamedPropertiesResponse ¶
type EnumJobNamedPropertiesResponse struct { // pcProperties: On successful return from this call, this parameter is a pointer to // the address of an array of RPC_PrintNamedProperty (section 2.2.1.14.2) structures // returned. This pointer MUST NOT be NULL. PropertiesCount uint32 `idl:"name:pcProperties" json:"properties_count"` // ppProperties: On successful return from this call, this parameter is a pointer to // the address of an array of RPC_PrintNamedProperty structures returned. This pointer // MUST NOT be NULL. Properties []*PrintNamedProperty `idl:"name:ppProperties;size_is:(, pcProperties)" json:"properties"` // Return: The RpcEnumJobNamedProperties return value. Return uint32 `idl:"name:Return" json:"return"` }
EnumJobNamedPropertiesResponse structure represents the RpcEnumJobNamedProperties operation response
func (*EnumJobNamedPropertiesResponse) MarshalNDR ¶
func (*EnumJobNamedPropertiesResponse) UnmarshalNDR ¶
type EnumJobsRequest ¶
type EnumJobsRequest struct { // hPrinter: A handle to a printer object or port object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // FirstJob: The zero-based position within the print queue of the first print job to // enumerate. FirstJob uint32 `idl:"name:FirstJob" json:"first_job"` // NoJobs: The total number of print jobs to enumerate. NoJobs uint32 `idl:"name:NoJobs" json:"no_jobs"` // Level: The job information level. Level uint32 `idl:"name:Level" json:"level"` // pJob: A pointer to the BUFFER structure specified in INFO Structures Query Parameters // (section 3.1.4.1.9). Job []byte `idl:"name:pJob;size_is:(cbBuf);pointer:unique" json:"job"` // cbBuf: Specified in INFO Structures Query Parameters (section 3.1.4.1.9). BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
EnumJobsRequest structure represents the RpcEnumJobs operation request
func (*EnumJobsRequest) MarshalNDR ¶
func (*EnumJobsRequest) UnmarshalNDR ¶
type EnumJobsResponse ¶
type EnumJobsResponse struct { // pJob: A pointer to the BUFFER structure specified in INFO Structures Query Parameters // (section 3.1.4.1.9). Job []byte `idl:"name:pJob;size_is:(cbBuf);pointer:unique" json:"job"` // pcbNeeded: Specified in INFO Structures Query Parameters (section 3.1.4.1.9). NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // pcReturned: Specified in INFO Structures Query Parameters (section 3.1.4.1.9). ReturnedCount uint32 `idl:"name:pcReturned" json:"returned_count"` // Return: The RpcEnumJobs return value. Return uint32 `idl:"name:Return" json:"return"` }
EnumJobsResponse structure represents the RpcEnumJobs operation response
func (*EnumJobsResponse) MarshalNDR ¶
func (*EnumJobsResponse) UnmarshalNDR ¶
type EnumMonitorsRequest ¶
type EnumMonitorsRequest struct { // pName: This parameter MUST adhere to the parameter specification in Print Server // Name Parameters, section 3.1.4.1.4. Name string `idl:"name:pName;string;pointer:unique" json:"name"` // Level: This value refers to the level of port monitor information structure, as follows. // // +------------+-----------------------------------------------------+ // | | | // | VALUE | DESCRIPTION | // | | | // +------------+-----------------------------------------------------+ // +------------+-----------------------------------------------------+ // | 0x00000001 | Corresponds to _MONITOR_INFO_1 (section 2.2.2.7.1). | // +------------+-----------------------------------------------------+ // | 0x00000002 | Corresponds to _MONITOR_INFO_2 (section 2.2.2.7.2). | // +------------+-----------------------------------------------------+ Level uint32 `idl:"name:Level" json:"level"` // pMonitor: This parameter SHOULD be ignored if cbBuf equals zero; otherwise, it is // a pointer to the BUFFER, as specified in INFO Structures Query Parameters, section // 3.1.4.1.9. Monitor []byte `idl:"name:pMonitor;size_is:(cbBuf);pointer:unique" json:"monitor"` // cbBuf: This parameter MUST adhere to the parameter specification in INFO Structures // Query Parameters, section 3.1.4.1.9. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
EnumMonitorsRequest structure represents the RpcEnumMonitors operation request
func (*EnumMonitorsRequest) MarshalNDR ¶
func (*EnumMonitorsRequest) UnmarshalNDR ¶
type EnumMonitorsResponse ¶
type EnumMonitorsResponse struct { // pMonitor: This parameter SHOULD be ignored if cbBuf equals zero; otherwise, it is // a pointer to the BUFFER, as specified in INFO Structures Query Parameters, section // 3.1.4.1.9. Monitor []byte `idl:"name:pMonitor;size_is:(cbBuf);pointer:unique" json:"monitor"` // pcbNeeded: This parameter MUST adhere to the parameter specification in INFO Structures // Query Parameters, section 3.1.4.1.9. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // pcReturned: This parameter MUST adhere to the parameter specification in INFO Structures // Query Parameters, section 3.1.4.1.9. ReturnedCount uint32 `idl:"name:pcReturned" json:"returned_count"` // Return: The RpcEnumMonitors return value. Return uint32 `idl:"name:Return" json:"return"` }
EnumMonitorsResponse structure represents the RpcEnumMonitors operation response
func (*EnumMonitorsResponse) MarshalNDR ¶
func (*EnumMonitorsResponse) UnmarshalNDR ¶
type EnumPerMachineConnectionsRequest ¶
type EnumPerMachineConnectionsRequest struct { // pServer: A parameter specified in Print Server Name Parameters (section 3.1.4.1.4). Server string `idl:"name:pServer;string;pointer:unique" json:"server"` // pPrinterEnum: A pointer to the BUFFER, as specified in INFO Structures Query Parameters // (section 3.1.4.1.9). PrinterEnum []byte `idl:"name:pPrinterEnum;size_is:(cbBuf);pointer:unique" json:"printer_enum"` // cbBuf: A parameter specified in section 3.1.4.1.9. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
EnumPerMachineConnectionsRequest structure represents the RpcEnumPerMachineConnections operation request
func (*EnumPerMachineConnectionsRequest) MarshalNDR ¶
func (*EnumPerMachineConnectionsRequest) UnmarshalNDR ¶
type EnumPerMachineConnectionsResponse ¶
type EnumPerMachineConnectionsResponse struct { // pPrinterEnum: A pointer to the BUFFER, as specified in INFO Structures Query Parameters // (section 3.1.4.1.9). PrinterEnum []byte `idl:"name:pPrinterEnum;size_is:(cbBuf);pointer:unique" json:"printer_enum"` // pcbNeeded: A parameter specified in section 3.1.4.1.9. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // pcReturned: A parameter specified in section 3.1.4.1.9. ReturnedCount uint32 `idl:"name:pcReturned" json:"returned_count"` // Return: The RpcEnumPerMachineConnections return value. Return uint32 `idl:"name:Return" json:"return"` }
EnumPerMachineConnectionsResponse structure represents the RpcEnumPerMachineConnections operation response
func (*EnumPerMachineConnectionsResponse) MarshalNDR ¶
func (*EnumPerMachineConnectionsResponse) UnmarshalNDR ¶
type EnumPortsRequest ¶
type EnumPortsRequest struct { // pName: A parameter specified in Print Server Name Parameters, section 3.1.4.1.4. Name string `idl:"name:pName;string;pointer:unique" json:"name"` // Level: The port information level. // // +------------+--------------------------------------------------+ // | | | // | VALUE | DESCRIPTION | // | | | // +------------+--------------------------------------------------+ // +------------+--------------------------------------------------+ // | 0x00000001 | Corresponds to _PORT_INFO_1 (section 2.2.2.8.1). | // +------------+--------------------------------------------------+ // | 0x00000002 | Corresponds to _PORT_INFO_2 (section 2.2.2.8.2). | // +------------+--------------------------------------------------+ Level uint32 `idl:"name:Level" json:"level"` // pPort: A pointer to the BUFFER, as specified in INFO Structures Query Parameters, // section 3.1.4.1.9. Port []byte `idl:"name:pPort;size_is:(cbBuf);pointer:unique" json:"port"` // cbBuf: A parameter specified in INFO Structures Query Parameters. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
EnumPortsRequest structure represents the RpcEnumPorts operation request
func (*EnumPortsRequest) MarshalNDR ¶
func (*EnumPortsRequest) UnmarshalNDR ¶
type EnumPortsResponse ¶
type EnumPortsResponse struct { // pPort: A pointer to the BUFFER, as specified in INFO Structures Query Parameters, // section 3.1.4.1.9. Port []byte `idl:"name:pPort;size_is:(cbBuf);pointer:unique" json:"port"` // pcbNeeded: A parameter specified in INFO Structures Query Parameters. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // pcReturned: A parameter specified in INFO Structures Query Parameters. ReturnedCount uint32 `idl:"name:pcReturned" json:"returned_count"` // Return: The RpcEnumPorts return value. Return uint32 `idl:"name:Return" json:"return"` }
EnumPortsResponse structure represents the RpcEnumPorts operation response
func (*EnumPortsResponse) MarshalNDR ¶
func (*EnumPortsResponse) UnmarshalNDR ¶
type EnumPrintProcessorDataTypesRequest ¶
type EnumPrintProcessorDataTypesRequest struct { // pName: This parameter MUST adhere to the parameter specification in Print Server // Name Parameters, section 3.1.4.1.4. Name string `idl:"name:pName;string;pointer:unique" json:"name"` // pPrintProcessorName: A pointer to a string that specifies the name of the print processor // whose data types MUST be enumerated. For rules governing print processor names, see // section 2.2.4.11. PrintProcessorName string `idl:"name:pPrintProcessorName;string;pointer:unique" json:"print_processor_name"` // Level: The value of this parameter MUST be 0x00000001. Level uint32 `idl:"name:Level" json:"level"` // pDatatypes: This parameter MAY be NULL if cbBuf equals zero; otherwise, it is a pointer // to BUFFER as specified in INFO Structures Query Parameters, section 3.1.4.1.9. DataTypes []byte `idl:"name:pDatatypes;size_is:(cbBuf);pointer:unique" json:"data_types"` // cbBuf: This parameter MUST adhere to the parameter specification in INFO Structures // Query Parameters, section 3.1.4.1.9. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
EnumPrintProcessorDataTypesRequest structure represents the RpcEnumPrintProcessorDatatypes operation request
func (*EnumPrintProcessorDataTypesRequest) MarshalNDR ¶
func (*EnumPrintProcessorDataTypesRequest) UnmarshalNDR ¶
type EnumPrintProcessorDataTypesResponse ¶
type EnumPrintProcessorDataTypesResponse struct { // pDatatypes: This parameter MAY be NULL if cbBuf equals zero; otherwise, it is a pointer // to BUFFER as specified in INFO Structures Query Parameters, section 3.1.4.1.9. DataTypes []byte `idl:"name:pDatatypes;size_is:(cbBuf);pointer:unique" json:"data_types"` // pcbNeeded: This parameter MUST adhere to the parameter specification in INFO Structures // Query Parameters, section 3.1.4.1.9. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // pcReturned: This parameter MUST adhere to the parameter specification in INFO Structures // Query Parameters, section 3.1.4.1.9. ReturnedCount uint32 `idl:"name:pcReturned" json:"returned_count"` // Return: The RpcEnumPrintProcessorDatatypes return value. Return uint32 `idl:"name:Return" json:"return"` }
EnumPrintProcessorDataTypesResponse structure represents the RpcEnumPrintProcessorDatatypes operation response
func (*EnumPrintProcessorDataTypesResponse) MarshalNDR ¶
func (*EnumPrintProcessorDataTypesResponse) UnmarshalNDR ¶
type EnumPrintProcessorsRequest ¶
type EnumPrintProcessorsRequest struct { // pName: A parameter specified in Print Server Name Parameters, section 3.1.4.1.4. Name string `idl:"name:pName;string;pointer:unique" json:"name"` // pEnvironment: A parameter specified in Environment Name Parameters, section 3.1.4.1.3. Environment string `idl:"name:pEnvironment;string;pointer:unique" json:"environment"` // Level: The information level. This value MUST be 0x00000001. Level uint32 `idl:"name:Level" json:"level"` // pPrintProcessorInfo: A pointer to BUFFER as specified in INFO Structures Query Parameters, // section 3.1.4.1.9 PrintProcessorInfo []byte `idl:"name:pPrintProcessorInfo;size_is:(cbBuf);pointer:unique" json:"print_processor_info"` // cbBuf: A parameter specified in INFO Structures Query Parameters, section 3.1.4.1.9. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
EnumPrintProcessorsRequest structure represents the RpcEnumPrintProcessors operation request
func (*EnumPrintProcessorsRequest) MarshalNDR ¶
func (*EnumPrintProcessorsRequest) UnmarshalNDR ¶
type EnumPrintProcessorsResponse ¶
type EnumPrintProcessorsResponse struct { // pPrintProcessorInfo: A pointer to BUFFER as specified in INFO Structures Query Parameters, // section 3.1.4.1.9 PrintProcessorInfo []byte `idl:"name:pPrintProcessorInfo;size_is:(cbBuf);pointer:unique" json:"print_processor_info"` // pcbNeeded: A parameter specified in INFO Structures Query Parameters, section 3.1.4.1.9. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // pcReturned: A parameter specified in INFO Structures Query Parameters, section 3.1.4.1.9. ReturnedCount uint32 `idl:"name:pcReturned" json:"returned_count"` // Return: The RpcEnumPrintProcessors return value. Return uint32 `idl:"name:Return" json:"return"` }
EnumPrintProcessorsResponse structure represents the RpcEnumPrintProcessors operation response
func (*EnumPrintProcessorsResponse) MarshalNDR ¶
func (*EnumPrintProcessorsResponse) UnmarshalNDR ¶
type EnumPrinterDataExRequest ¶
type EnumPrinterDataExRequest struct { // hPrinter: A handle to a printer object that was opened by RpcAddPrinter (section // 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), // or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pKeyName: A pointer to a string that specifies the key containing the values to enumerate. // A key name is an arbitrary string defined by the printer driver associated with the // printer object. For rules governing key names, see section 2.2.4.7. KeyName string `idl:"name:pKeyName;string" json:"key_name"` EnumValuesInLength uint32 `idl:"name:cbEnumValuesIn" json:"enum_values_in_length"` }
EnumPrinterDataExRequest structure represents the RpcEnumPrinterDataEx operation request
func (*EnumPrinterDataExRequest) MarshalNDR ¶
func (*EnumPrinterDataExRequest) UnmarshalNDR ¶
type EnumPrinterDataExResponse ¶
type EnumPrinterDataExResponse struct { // pEnumValues: A pointer to BUFFER as specified in PRINTER_ENUM_VALUES Structures Query // Parameters (section 3.1.4.1.10). EnumValues []byte `idl:"name:pEnumValues;size_is:(cbEnumValuesIn)" json:"enum_values"` EnumValuesOutLength uint32 `idl:"name:pcbEnumValuesOut" json:"enum_values_out_length"` EnumValuesLength uint32 `idl:"name:numEnumValues" json:"enum_values_length"` // Return: The RpcEnumPrinterDataEx return value. Return uint32 `idl:"name:Return" json:"return"` }
EnumPrinterDataExResponse structure represents the RpcEnumPrinterDataEx operation response
func (*EnumPrinterDataExResponse) MarshalNDR ¶
func (*EnumPrinterDataExResponse) UnmarshalNDR ¶
type EnumPrinterDataRequest ¶
type EnumPrinterDataRequest struct { // hPrinter: A handle to a printer object that was opened by RpcAddPrinter (section // 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), // or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // dwIndex: The index of the configuration data value to retrieve. The value MUST be // greater than or equal to zero and less than the total number of configuration data // values for the printer. The client SHOULD use RpcEnumPrinterKeys to determine the // total number of configuration data values for the printer. Index uint32 `idl:"name:dwIndex" json:"index"` ValueNameInLength uint32 `idl:"name:cbValueNameIn" json:"value_name_in_length"` DataInLength uint32 `idl:"name:cbDataIn" json:"data_in_length"` }
EnumPrinterDataRequest structure represents the RpcEnumPrinterData operation request
func (*EnumPrinterDataRequest) MarshalNDR ¶
func (*EnumPrinterDataRequest) UnmarshalNDR ¶
type EnumPrinterDataResponse ¶
type EnumPrinterDataResponse struct { // pValueName: A pointer to a buffer that receives a string specifying the name of the // configuration data value. For rules governing value names, see section 2.2.4.18. ValueName string `idl:"name:pValueName;size_is:((cbValueNameIn/2))" json:"value_name"` ValueNameOutLength uint32 `idl:"name:pcbValueNameOut" json:"value_name_out_length"` // pType: A parameter specified in Dynamically Typed Query Parameters (section 3.1.4.1.2). Type uint32 `idl:"name:pType" json:"type"` // pData: A pointer to BUFFER as specified in Dynamically Typed Query Parameters. This // parameter can be NULL if cbData equals zero. Data []byte `idl:"name:pData;size_is:(cbDataIn)" json:"data"` DataOutLength uint32 `idl:"name:pcbDataOut" json:"data_out_length"` // Return: The RpcEnumPrinterData return value. Return uint32 `idl:"name:Return" json:"return"` }
EnumPrinterDataResponse structure represents the RpcEnumPrinterData operation response
func (*EnumPrinterDataResponse) MarshalNDR ¶
func (*EnumPrinterDataResponse) UnmarshalNDR ¶
type EnumPrinterDriversRequest ¶
type EnumPrinterDriversRequest struct { // pName: Specified in Print Server Name Parameters (section 3.1.4.1.4). Name string `idl:"name:pName;string;pointer:unique" json:"name"` // pEnvironment: Specified in Environment Name Parameters (section 3.1.4.1.3).<327> Environment string `idl:"name:pEnvironment;string;pointer:unique" json:"environment"` // Level: The driver information level. // // +------------+----------------------------------------------------+ // | | | // | VALUE | DESCRIPTION | // | | | // +------------+----------------------------------------------------+ // +------------+----------------------------------------------------+ // | 0x00000001 | Corresponds to _DRIVER_INFO_1 (section 2.2.2.4.1). | // +------------+----------------------------------------------------+ // | 0x00000002 | Corresponds to _DRIVER_INFO_2 (section 2.2.2.4.2). | // +------------+----------------------------------------------------+ // | 0x00000003 | Corresponds to _DRIVER_INFO_3 (section 2.2.2.4.3). | // +------------+----------------------------------------------------+ // | 0x00000004 | Corresponds to _DRIVER_INFO_4 (section 2.2.2.4.4). | // +------------+----------------------------------------------------+ // | 0x00000005 | Corresponds to _DRIVER_INFO_5 (section 2.2.2.4.5). | // +------------+----------------------------------------------------+ // | 0x00000006 | Corresponds to _DRIVER_INFO_6 (section 2.2.2.4.6). | // +------------+----------------------------------------------------+ // | 0x00000008 | Corresponds to _DRIVER_INFO_8 (section 2.2.2.4.8). | // +------------+----------------------------------------------------+ Level uint32 `idl:"name:Level" json:"level"` // pDrivers: A pointer to the BUFFER, as specified in INFO Structures Query Parameters // (section 3.1.4.1.9). Drivers []byte `idl:"name:pDrivers;size_is:(cbBuf);pointer:unique" json:"drivers"` // cbBuf: Specified in INFO Structures Query Parameters (section 3.1.4.1.9). BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
EnumPrinterDriversRequest structure represents the RpcEnumPrinterDrivers operation request
func (*EnumPrinterDriversRequest) MarshalNDR ¶
func (*EnumPrinterDriversRequest) UnmarshalNDR ¶
type EnumPrinterDriversResponse ¶
type EnumPrinterDriversResponse struct { // pDrivers: A pointer to the BUFFER, as specified in INFO Structures Query Parameters // (section 3.1.4.1.9). Drivers []byte `idl:"name:pDrivers;size_is:(cbBuf);pointer:unique" json:"drivers"` // pcbNeeded: Specified in INFO Structures Query Parameters (section 3.1.4.1.9). NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // pcReturned: Specified in INFO Structures Query Parameters (section 3.1.4.1.9). ReturnedCount uint32 `idl:"name:pcReturned" json:"returned_count"` // Return: The RpcEnumPrinterDrivers return value. Return uint32 `idl:"name:Return" json:"return"` }
EnumPrinterDriversResponse structure represents the RpcEnumPrinterDrivers operation response
func (*EnumPrinterDriversResponse) MarshalNDR ¶
func (*EnumPrinterDriversResponse) UnmarshalNDR ¶
type EnumPrinterKeyRequest ¶
type EnumPrinterKeyRequest struct { // hPrinter: A handle to a printer object that was opened by RpcAddPrinter (section // 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), // or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pKeyName: A pointer to a string that specifies the key containing the subkeys to // enumerate. A key name is an arbitrary string defined by the printer driver associated // with the printer object. For rules governing key names, see section 2.2.4.7. KeyName string `idl:"name:pKeyName;string" json:"key_name"` SubkeyInLength uint32 `idl:"name:cbSubkeyIn" json:"subkey_in_length"` }
EnumPrinterKeyRequest structure represents the RpcEnumPrinterKey operation request
func (*EnumPrinterKeyRequest) MarshalNDR ¶
func (*EnumPrinterKeyRequest) UnmarshalNDR ¶
type EnumPrinterKeyResponse ¶
type EnumPrinterKeyResponse struct { // pSubkey: A pointer to BUFFER as specified in String Query Parameters (section 3.1.4.1.7). Subkey string `idl:"name:pSubkey;size_is:((cbSubkeyIn/2))" json:"subkey"` SubkeyOutLength uint32 `idl:"name:pcbSubkeyOut" json:"subkey_out_length"` // Return: The RpcEnumPrinterKey return value. Return uint32 `idl:"name:Return" json:"return"` }
EnumPrinterKeyResponse structure represents the RpcEnumPrinterKey operation response
func (*EnumPrinterKeyResponse) MarshalNDR ¶
func (*EnumPrinterKeyResponse) UnmarshalNDR ¶
type EnumPrintersRequest ¶
type EnumPrintersRequest struct { // Flags: The types of print objects that this method enumerates. The value of this // parameter is the result of a bitwise OR of one or more of the Printer Enumeration // Flags (section 2.2.3.7), with the following additional specifications: // // * *PRINTER_ENUM_NAME:* If the Name parameter is NULL or points to an empty string, // and the Level parameter value is 0x00000001, available print providers SHOULD be // enumerated. If this flag is not set, the server SHOULD ignore the Name parameter. // // * *PRINTER_ENUM_REMOTE:* The Level parameter value MUST be 0x00000001. // // * *PRINTER_ENUM_NETWORK:* The Level parameter value MUST be 0x00000001. Flags uint32 `idl:"name:Flags" json:"flags"` // Name: NULL or a server name parameter as specified in Printer Server Name Parameters // (section 3.1.4.1.4). If the Flags parameter contains the PRINTER_ENUM_NAME flag, // the Name parameter value controls where the server SHOULD enumerate. The server SHOULD // enumerate locally if the Name parameter is either NULL or an empty string; otherwise, // remotely on the server whose name is specified by the Name string. Name string `idl:"name:Name;string;pointer:unique" json:"name"` // Level: The level of printer information structure, as follows. // // +------------+------------------------------------------+ // | | | // | VALUE | DESCRIPTION | // | | | // +------------+------------------------------------------+ // +------------+------------------------------------------+ // | 0x00000000 | _PRINTER_INFO_STRESS (section 2.2.2.9.1) | // +------------+------------------------------------------+ // | 0x00000001 | _PRINTER_INFO_1 (section 2.2.2.9.2) | // +------------+------------------------------------------+ // | 0x00000002 | _PRINTER_INFO_2 (section 2.2.2.9.3) | // +------------+------------------------------------------+ // | 0x00000004 | _PRINTER_INFO_4 (section 2.2.2.9.5) | // +------------+------------------------------------------+ // | 0x00000005 | _PRINTER_INFO_5 (section 2.2.2.9.6) | // +------------+------------------------------------------+ Level uint32 `idl:"name:Level" json:"level"` // pPrinterEnum: A pointer to a BUFFER defined in INFO Structures Query Parameters (section // 3.1.4.1.9). PrinterEnum []byte `idl:"name:pPrinterEnum;size_is:(cbBuf);pointer:unique" json:"printer_enum"` // cbBuf: An input parameter that adheres to the specification in INFO Structures Query // Parameters. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
EnumPrintersRequest structure represents the RpcEnumPrinters operation request
func (*EnumPrintersRequest) MarshalNDR ¶
func (*EnumPrintersRequest) UnmarshalNDR ¶
type EnumPrintersResponse ¶
type EnumPrintersResponse struct { // pPrinterEnum: A pointer to a BUFFER defined in INFO Structures Query Parameters (section // 3.1.4.1.9). PrinterEnum []byte `idl:"name:pPrinterEnum;size_is:(cbBuf);pointer:unique" json:"printer_enum"` // pcbNeeded: An output parameter that adheres to the specification in INFO Structures // Query Parameters. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // pcReturned: An output parameter that adheres to the specification in INFO Structures // Query Parameters. ReturnedCount uint32 `idl:"name:pcReturned" json:"returned_count"` // Return: The RpcEnumPrinters return value. Return uint32 `idl:"name:Return" json:"return"` }
EnumPrintersResponse structure represents the RpcEnumPrinters operation response
func (*EnumPrintersResponse) MarshalNDR ¶
func (*EnumPrintersResponse) UnmarshalNDR ¶
type FindClosePrinterChangeNotificationRequest ¶
type FindClosePrinterChangeNotificationRequest struct { // hPrinter: A handle to a printer object or server object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` }
FindClosePrinterChangeNotificationRequest structure represents the RpcFindClosePrinterChangeNotification operation request
func (*FindClosePrinterChangeNotificationRequest) MarshalNDR ¶
func (*FindClosePrinterChangeNotificationRequest) UnmarshalNDR ¶
type FindClosePrinterChangeNotificationResponse ¶
type FindClosePrinterChangeNotificationResponse struct { // Return: The RpcFindClosePrinterChangeNotification return value. Return uint32 `idl:"name:Return" json:"return"` }
FindClosePrinterChangeNotificationResponse structure represents the RpcFindClosePrinterChangeNotification operation response
func (*FindClosePrinterChangeNotificationResponse) MarshalNDR ¶
func (*FindClosePrinterChangeNotificationResponse) UnmarshalNDR ¶
type FlushPrinterRequest ¶
type FlushPrinterRequest struct { // hPrinter: A handle to a port object that was opened by RpcOpenPrinter (section 3.1.4.2.2) // or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pBuf: A pointer to the array of bytes containing the data to be written to the printer. // This parameter can be NULL if the value of the cbBuf parameter is zero. Buffer []byte `idl:"name:pBuf;size_is:(cbBuf)" json:"buffer"` // cbBuf: The size, in bytes, of the array pointed to by the pBuf parameter. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` // cSleep: The time, in milliseconds, to delay the I/O line to the printer port. A value // of zero indicates no delay. SleepCount uint32 `idl:"name:cSleep" json:"sleep_count"` }
FlushPrinterRequest structure represents the RpcFlushPrinter operation request
func (*FlushPrinterRequest) MarshalNDR ¶
func (*FlushPrinterRequest) UnmarshalNDR ¶
type FlushPrinterResponse ¶
type FlushPrinterResponse struct { // pcWritten: A pointer to a variable that receives the number of bytes of data that // were written to the printer. WrittenCount uint32 `idl:"name:pcWritten" json:"written_count"` // Return: The RpcFlushPrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
FlushPrinterResponse structure represents the RpcFlushPrinter operation response
func (*FlushPrinterResponse) MarshalNDR ¶
func (*FlushPrinterResponse) UnmarshalNDR ¶
type FormContainer ¶
type FormContainer struct { // Level: The information level of the FormInfo data. The value of this member MUST // be 0x00000001 or 0x00000002. Level uint32 `idl:"name:Level" json:"level"` // FormInfo: This member MUST define printer form properties, using an information structure // that MUST correspond to the value of the Level member. FormInfo *FormContainer_FormInfo `idl:"name:FormInfo;switch_is:Level" json:"form_info"` }
FormContainer structure represents FORM_CONTAINER RPC structure.
The FORM_CONTAINER structure provides information about printer forms, using FORM_INFO structures. The FormInfo member specifies the structure that defines the printer form properties.
func (*FormContainer) MarshalNDR ¶
func (*FormContainer) UnmarshalNDR ¶
type FormContainer_FormInfo ¶
type FormContainer_FormInfo struct { // Types that are assignable to Value // // *FormContainer_FormInfo_FormInfo1 // *FormContainer_FormInfo_FormInfo2 Value is_FormContainer_FormInfo `json:"value"` }
FormContainer_FormInfo structure represents FORM_CONTAINER union anonymous member.
The FORM_CONTAINER structure provides information about printer forms, using FORM_INFO structures. The FormInfo member specifies the structure that defines the printer form properties.
func (*FormContainer_FormInfo) GetValue ¶
func (o *FormContainer_FormInfo) GetValue() any
func (*FormContainer_FormInfo) MarshalUnionNDR ¶
func (*FormContainer_FormInfo) NDRSwitchValue ¶
func (o *FormContainer_FormInfo) NDRSwitchValue(sw uint32) uint32
func (*FormContainer_FormInfo) UnmarshalUnionNDR ¶
type FormContainer_FormInfo_FormInfo1 ¶
type FormContainer_FormInfo_FormInfo1 struct { // pFormInfo1: If the Level member is 0x00000001, this member is a pointer to a FORM_INFO_1 // structure, which provides information about a printer form. For details, see section // 2.2.1.6.1. FormInfo1 *FormInfo1 `idl:"name:pFormInfo1" json:"form_info1"` }
FormContainer_FormInfo_FormInfo1 structure represents FormContainer_FormInfo RPC union arm.
It has following labels: 1
func (*FormContainer_FormInfo_FormInfo1) MarshalNDR ¶
func (*FormContainer_FormInfo_FormInfo1) UnmarshalNDR ¶
type FormContainer_FormInfo_FormInfo2 ¶
type FormContainer_FormInfo_FormInfo2 struct { // pFormInfo2: If the Level member is 0x00000002, this member is a pointer to a RPC_FORM_INFO_2 // structure, which provides information about a printer form. For details, see section // 2.2.1.6.2. FormInfo2 *FormInfo2 `idl:"name:pFormInfo2" json:"form_info2"` }
FormContainer_FormInfo_FormInfo2 structure represents FormContainer_FormInfo RPC union arm.
It has following labels: 2
func (*FormContainer_FormInfo_FormInfo2) MarshalNDR ¶
func (*FormContainer_FormInfo_FormInfo2) UnmarshalNDR ¶
type FormInfo1 ¶
type FormInfo1 struct { Flags uint32 `idl:"name:Flags" json:"flags"` Name string `idl:"name:pName;string" json:"name"` Size *Size `idl:"name:Size" json:"size"` ImageableArea *Rectangle `idl:"name:ImageableArea" json:"imageable_area"` }
FormInfo1 structure represents FORM_INFO_1 RPC structure.
The FORM_INFO_1 structure provides information about a printer form.
All members not defined in this section are specified in sections 2.2.1.3.2 and 2.2.1.3.
The _FORM_INFO_1 structure specifies printer media information. It is a custom-marshaled form of the _FORM_INFO_1 (section 2.2.1.6.1) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
func (*FormInfo1) MarshalNDR ¶
type FormInfo2 ¶
type FormInfo2 struct { Flags uint32 `idl:"name:Flags" json:"flags"` Name string `idl:"name:pName;string;pointer:unique" json:"name"` Size *Size `idl:"name:Size" json:"size"` ImageableArea *Rectangle `idl:"name:ImageableArea" json:"imageable_area"` // pKeyword: This member MUST be set to NULL by the client if the value of the Flags // member is set to FORM_BUILTIN; otherwise, this member is a pointer to a string that // specifies a unique, localization-independent identifier for this form.<44> Keyword string `idl:"name:pKeyword;string;pointer:unique" json:"keyword"` // StringType: A value that specifies how a form's display name is passed. The value // of this member MUST be a value from the following table. // // +----------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +----------------------------+----------------------------------------------------------------------------------+ // +----------------------------+----------------------------------------------------------------------------------+ // | STRING_NONE 0x00000001 | Use the default display name, a string that is pointed to by the pName member. | // | | No localized display name exists. | // +----------------------------+----------------------------------------------------------------------------------+ // | STRING_MUIDLL 0x00000002 | Load the form name from the library of string resources that is identified by | // | | the pMuiDll member. The dwResourceId member specifies the ID of the form name | // | | string in that library. | // +----------------------------+----------------------------------------------------------------------------------+ // | STRING_LANGPAIR 0x00000004 | Use the form name, a string that is pointed to by the pDisplayName member, and | // | | the language that is identified by the wLangID member. | // +----------------------------+----------------------------------------------------------------------------------+ StringType uint32 `idl:"name:StringType" json:"string_type"` // pMuiDll: A NULL pointer and MUST be ignored on receipt if StringType is not equal // to STRING_MUIDLL, or it is a pointer to a string that contains the name of a library // of string resources. String resources can be localized into multiple languages.<45> MUIDLL string `idl:"name:pMuiDll;string;pointer:unique" json:"mui_dll"` // dwResourceId: The value of this member SHOULD be set to zero when sent and ignored // on receipt if the value of the StringType member is not equal to STRING_MUIDLL; otherwise, // the value of this member specifies the string resource ID of the form name in the // library that is identified by the string that is pointed to by the pMuiDll member. ResourceID uint32 `idl:"name:dwResourceId" json:"resource_id"` // pDisplayName: A NULL pointer and ignored on receipt if StringType is not equal to // STRING_LANGPAIR; otherwise, this member is a pointer to a string that specifies the // form name. DisplayName string `idl:"name:pDisplayName;string;pointer:unique" json:"display_name"` // wLangID: The value of this member SHOULD be set to zero when sent and ignored on // receipt if StringType is not equal to STRING_LANGPAIR; otherwise, the value of this // member MUST be the Language Identifier of the pDisplayName member [MS-LCID]. // // All members not defined in this section are specified in sections 2.2.1.3.2 and 2.2.1.3. LangID uint16 `idl:"name:wLangID" json:"lang_id"` }
FormInfo2 structure represents RPC_FORM_INFO_2 RPC structure.
The RPC_FORM_INFO_2 structure provides information about a printer form that includes its origin, dimensions, the dimensions of its printable area, and its display name.<43>
func (*FormInfo2) MarshalNDR ¶
type GDI ¶
type GDI dcetypes.ContextHandle
GDI structure represents GDI_HANDLE RPC structure.
func (*GDI) ContextHandle ¶
func (o *GDI) ContextHandle() *dcetypes.ContextHandle
type GetCorePrinterDriversRequest ¶
type GetCorePrinterDriversRequest struct { // pszServer: A STRING_HANDLE (section 2.2.1.1.7) for a server object. This parameter // MUST adhere to the specification in Print Server Name Parameters (section 3.1.4.1.4). Server string `idl:"name:pszServer;string;pointer:unique" json:"server"` // pszEnvironment: A pointer to a string that specifies the environment name for which // the core printer driver information is returned. For rules governing environment // names and product behaviors, see section 2.2.4.4. Environment string `idl:"name:pszEnvironment;string" json:"environment"` // cchCoreDrivers: The size, in bytes, of the buffer that is referenced by the pszzCoreDriverDependencies // parameter. CoreDriversLength uint32 `idl:"name:cchCoreDrivers" json:"core_drivers_length"` // pszzCoreDriverDependencies: A pointer to a multisz that contains a list of IDs of // the core printer drivers to be retrieved.<348> // // * // // Call RpcGetPrinterDriver (section 3.1.4.4.3 ( 00d91852-785d-42e4-a774-b1d96361b0ce // ) ) with a Level parameter value of 0x00000008. // // * // // A pointer to a _DRIVER_INFO_8 custom-marshaled structure (section 2.2.2.4.8 ( f9b749d6-08fc-4820-8d7b-fe0ee33e42c5 // ) ) is returned in the pDriver parameter. // // * // // In the _DRIVER_INFO_8 structure, the *szzCoreDependenciesOffset* member contains // an offset to a multisz that contains the list of IDs. CoreDriverDependencies string `idl:"name:pszzCoreDriverDependencies;size_is:(cchCoreDrivers)" json:"core_driver_dependencies"` // cCorePrinterDrivers: The count of CORE_PRINTER_DRIVER (section 2.2.2.13) structures // that are contained in the buffer that is pointed to by the pCorePrinterDrivers parameter. // It MUST equal the number of IDs that are specified in the multisz that is pointed // to by the pszzCoreDriverDependencies parameter. CorePrinterDriversCount uint32 `idl:"name:cCorePrinterDrivers" json:"core_printer_drivers_count"` }
GetCorePrinterDriversRequest structure represents the RpcGetCorePrinterDrivers operation request
func (*GetCorePrinterDriversRequest) MarshalNDR ¶
func (*GetCorePrinterDriversRequest) UnmarshalNDR ¶
type GetCorePrinterDriversResponse ¶
type GetCorePrinterDriversResponse struct { // pCorePrinterDrivers: A pointer to a buffer that receives an array of CORE_PRINTER_DRIVER // structures. CorePrinterDrivers []*CorePrinterDriver `idl:"name:pCorePrinterDrivers;size_is:(cCorePrinterDrivers)" json:"core_printer_drivers"` // Return: The RpcGetCorePrinterDrivers return value. Return int32 `idl:"name:Return" json:"return"` }
GetCorePrinterDriversResponse structure represents the RpcGetCorePrinterDrivers operation response
func (*GetCorePrinterDriversResponse) MarshalNDR ¶
func (*GetCorePrinterDriversResponse) UnmarshalNDR ¶
type GetFormRequest ¶
type GetFormRequest struct { // hPrinter: A handle to a printer object or server object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pFormName: A pointer to a string that specifies the form name for which data is required. // For rules governing form names, see section 2.2.4.5. FormName string `idl:"name:pFormName;string" json:"form_name"` // Level: The form information level. // // +------------+--------------------------------------------------+ // | | | // | VALUE | DESCRIPTION | // | | | // +------------+--------------------------------------------------+ // +------------+--------------------------------------------------+ // | 0x00000001 | Corresponds to _FORM_INFO_1 (section 2.2.2.5.1). | // +------------+--------------------------------------------------+ // | 0x00000002 | Corresponds to _FORM_INFO_2 (section 2.2.2.5.2). | // +------------+--------------------------------------------------+ Level uint32 `idl:"name:Level" json:"level"` // pForm: A pointer to the BUFFER, as specified in INFO Structures Query Parameters // (section 3.1.4.1.9). Form []byte `idl:"name:pForm;size_is:(cbBuf);pointer:unique" json:"form"` // cbBuf: Specified in INFO Structures Query Parameters. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
GetFormRequest structure represents the RpcGetForm operation request
func (*GetFormRequest) MarshalNDR ¶
func (*GetFormRequest) UnmarshalNDR ¶
type GetFormResponse ¶
type GetFormResponse struct { // pForm: A pointer to the BUFFER, as specified in INFO Structures Query Parameters // (section 3.1.4.1.9). Form []byte `idl:"name:pForm;size_is:(cbBuf);pointer:unique" json:"form"` // pcbNeeded: Specified in INFO Structures Query Parameters. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // Return: The RpcGetForm return value. Return uint32 `idl:"name:Return" json:"return"` }
GetFormResponse structure represents the RpcGetForm operation response
func (*GetFormResponse) MarshalNDR ¶
func (*GetFormResponse) UnmarshalNDR ¶
type GetJobAttributesRequest ¶
type GetJobAttributesRequest struct { Printer *Printer `idl:"name:hPrinter" json:"printer"` JobID uint32 `idl:"name:jobId" json:"job_id"` AttributeNameCount uint32 `idl:"name:attributeNameCount" json:"attribute_name_count"` AttributeNames []string `idl:"name:attributeNames;size_is:(attributeNameCount);string" json:"attribute_names"` }
GetJobAttributesRequest structure represents the RpcIppGetJobAttributes operation request
func (*GetJobAttributesRequest) MarshalNDR ¶
func (*GetJobAttributesRequest) UnmarshalNDR ¶
type GetJobAttributesResponse ¶
type GetJobAttributesResponse struct { ResponseBufferSize uint32 `idl:"name:ippResponseBufferSize;pointer:ref" json:"response_buffer_size"` ResponseBuffer []byte `idl:"name:ippResponseBuffer;size_is:(, ippResponseBufferSize);pointer:ref" json:"response_buffer"` // Return: The RpcIppGetJobAttributes return value. Return int32 `idl:"name:Return" json:"return"` }
GetJobAttributesResponse structure represents the RpcIppGetJobAttributes operation response
func (*GetJobAttributesResponse) MarshalNDR ¶
func (*GetJobAttributesResponse) UnmarshalNDR ¶
type GetJobNamedPropertyValueRequest ¶
type GetJobNamedPropertyValueRequest struct { // hPrinter: A PRINTER_HANDLE (section 2.2.1.1.4) to a printer object, job object, or // server object that was opened by RpcAddPrinter (section 3.1.4.2.3), RpcAddPrinterEx // (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), or RpcOpenPrinterEx (section // 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // JobId: The identifier of a print job. This value MUST NOT be zero. JobID uint32 `idl:"name:JobId" json:"job_id"` // pszName: A pointer to a string that specifies the Job Named Property to be queried. // This pointer MUST NOT be NULL. Name string `idl:"name:pszName;string" json:"name"` }
GetJobNamedPropertyValueRequest structure represents the RpcGetJobNamedPropertyValue operation request
func (*GetJobNamedPropertyValueRequest) MarshalNDR ¶
func (*GetJobNamedPropertyValueRequest) UnmarshalNDR ¶
type GetJobNamedPropertyValueResponse ¶
type GetJobNamedPropertyValueResponse struct { // pValue: A pointer to an RPC_PrintPropertyValue (section 2.2.1.14.1) structure that // on return from this call contains the value of the Job Named Property specified by // the pszName argument. Value *PrintPropertyValue `idl:"name:pValue" json:"value"` // Return: The RpcGetJobNamedPropertyValue return value. Return uint32 `idl:"name:Return" json:"return"` }
GetJobNamedPropertyValueResponse structure represents the RpcGetJobNamedPropertyValue operation response
func (*GetJobNamedPropertyValueResponse) MarshalNDR ¶
func (*GetJobNamedPropertyValueResponse) UnmarshalNDR ¶
type GetJobRequest ¶
type GetJobRequest struct { // hPrinter: A handle to a printer object, job object, or server object that was opened // by RpcAddPrinter (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter // (section 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // JobId: The identifier of the print job. This value MUST NOT be zero. JobID uint32 `idl:"name:JobId" json:"job_id"` // Level: The job information level. This value MUST be 0x00000001, 0x00000002, 0x00000003, // or 0x00000004. Level uint32 `idl:"name:Level" json:"level"` // pJob: A pointer to BUFFER as specified in INFO Structures Query Parameters (section // 3.1.4.1.9). Job []byte `idl:"name:pJob;size_is:(cbBuf);pointer:unique" json:"job"` // cbBuf: A parameter specified in section 3.1.4.1.9. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
GetJobRequest structure represents the RpcGetJob operation request
func (*GetJobRequest) MarshalNDR ¶
func (*GetJobRequest) UnmarshalNDR ¶
type GetJobResponse ¶
type GetJobResponse struct { // pJob: A pointer to BUFFER as specified in INFO Structures Query Parameters (section // 3.1.4.1.9). Job []byte `idl:"name:pJob;size_is:(cbBuf);pointer:unique" json:"job"` // pcbNeeded: A parameter specified in section 3.1.4.1.9. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // Return: The RpcGetJob return value. Return uint32 `idl:"name:Return" json:"return"` }
GetJobResponse structure represents the RpcGetJob operation response
func (*GetJobResponse) MarshalNDR ¶
func (*GetJobResponse) UnmarshalNDR ¶
type GetPrintProcessorDirectoryRequest ¶
type GetPrintProcessorDirectoryRequest struct { // pName: This parameter MUST adhere to the parameter specification in Print Server // Name Parameters, section 3.1.4.1.4. Name string `idl:"name:pName;string;pointer:unique" json:"name"` // pEnvironment: This parameter MUST adhere to the parameter specification in Environment // Name Parameters, section 3.1.4.1.3. Environment string `idl:"name:pEnvironment;string;pointer:unique" json:"environment"` // Level: The value of this parameter MUST be 0x00000001. Level uint32 `idl:"name:Level" json:"level"` // pPrintProcessorDirectory: This parameter MAY be NULL if cbBuf equals zero; otherwise, // it is a pointer to BUFFER as specified in String Query Parameters, section 3.1.4.1.7. PrintProcessorDirectory []byte `idl:"name:pPrintProcessorDirectory;size_is:(cbBuf);pointer:unique" json:"print_processor_directory"` // cbBuf: This parameter MUST adhere to the parameter specification in String Query // Parameters, section 3.1.4.1.7. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
GetPrintProcessorDirectoryRequest structure represents the RpcGetPrintProcessorDirectory operation request
func (*GetPrintProcessorDirectoryRequest) MarshalNDR ¶
func (*GetPrintProcessorDirectoryRequest) UnmarshalNDR ¶
type GetPrintProcessorDirectoryResponse ¶
type GetPrintProcessorDirectoryResponse struct { // pPrintProcessorDirectory: This parameter MAY be NULL if cbBuf equals zero; otherwise, // it is a pointer to BUFFER as specified in String Query Parameters, section 3.1.4.1.7. PrintProcessorDirectory []byte `idl:"name:pPrintProcessorDirectory;size_is:(cbBuf);pointer:unique" json:"print_processor_directory"` // pcbNeeded: This parameter MUST adhere to the parameter specification in String Query // Parameters, section 3.1.4.1.7. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // Return: The RpcGetPrintProcessorDirectory return value. Return uint32 `idl:"name:Return" json:"return"` }
GetPrintProcessorDirectoryResponse structure represents the RpcGetPrintProcessorDirectory operation response
func (*GetPrintProcessorDirectoryResponse) MarshalNDR ¶
func (*GetPrintProcessorDirectoryResponse) UnmarshalNDR ¶
type GetPrinterAttributesRequest ¶
type GetPrinterAttributesRequest struct { Printer *Printer `idl:"name:hPrinter" json:"printer"` AttributeNameCount uint32 `idl:"name:attributeNameCount" json:"attribute_name_count"` AttributeNames []string `idl:"name:attributeNames;size_is:(attributeNameCount);string" json:"attribute_names"` }
GetPrinterAttributesRequest structure represents the RpcIppGetPrinterAttributes operation request
func (*GetPrinterAttributesRequest) MarshalNDR ¶
func (*GetPrinterAttributesRequest) UnmarshalNDR ¶
type GetPrinterAttributesResponse ¶
type GetPrinterAttributesResponse struct { ResponseBufferSize uint32 `idl:"name:ippResponseBufferSize;pointer:ref" json:"response_buffer_size"` ResponseBuffer []byte `idl:"name:ippResponseBuffer;size_is:(, ippResponseBufferSize);pointer:ref" json:"response_buffer"` // Return: The RpcIppGetPrinterAttributes return value. Return int32 `idl:"name:Return" json:"return"` }
GetPrinterAttributesResponse structure represents the RpcIppGetPrinterAttributes operation response
func (*GetPrinterAttributesResponse) MarshalNDR ¶
func (*GetPrinterAttributesResponse) UnmarshalNDR ¶
type GetPrinterDataExRequest ¶
type GetPrinterDataExRequest struct { // hPrinter: A handle to a printer object or server object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pKeyName: A pointer to a string that specifies the key under which the value is to // be queried. A key name is an arbitrary string defined by the printer driver associated // with the printer object. For rules governing key names, see section 2.2.4.7. KeyName string `idl:"name:pKeyName;string" json:"key_name"` // pValueName: A pointer to a string that identifies the data to get. For rules governing // value names, see section 2.2.4.18. // // For print servers, the value name is one of the predefined strings listed in Server // Handle Key Values (section 2.2.3.10). ValueName string `idl:"name:pValueName;string" json:"value_name"` // nSize: A parameter specified in Dynamically Typed Query Parameters. Size uint32 `idl:"name:nSize" json:"size"` }
GetPrinterDataExRequest structure represents the RpcGetPrinterDataEx operation request
func (*GetPrinterDataExRequest) MarshalNDR ¶
func (*GetPrinterDataExRequest) UnmarshalNDR ¶
type GetPrinterDataExResponse ¶
type GetPrinterDataExResponse struct { // pType: A parameter specified in Dynamically Typed Query Parameters (section 3.1.4.1.2). Type uint32 `idl:"name:pType" json:"type"` // pData: A pointer to BUFFER, as specified in Dynamically Typed Query Parameters. This // parameter can be NULL if nSize equals zero Data []byte `idl:"name:pData;size_is:(nSize)" json:"data"` // pcbNeeded: A parameter specified in Dynamically Typed Query Parameters. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // Return: The RpcGetPrinterDataEx return value. Return uint32 `idl:"name:Return" json:"return"` }
GetPrinterDataExResponse structure represents the RpcGetPrinterDataEx operation response
func (*GetPrinterDataExResponse) MarshalNDR ¶
func (*GetPrinterDataExResponse) UnmarshalNDR ¶
type GetPrinterDataRequest ¶
type GetPrinterDataRequest struct { // hPrinter: A handle to a printer object or server object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pValueName: A pointer to a string that identifies the configuration data to get. // For rules governing value names, see section 2.2.4.18. // // For print servers, the value name is one of the predefined strings listed in Server // Handle Key Values (section 2.2.3.10). ValueName string `idl:"name:pValueName;string" json:"value_name"` // nSize: A parameter specified in Dynamically Typed Query Parameters. Size uint32 `idl:"name:nSize" json:"size"` }
GetPrinterDataRequest structure represents the RpcGetPrinterData operation request
func (*GetPrinterDataRequest) MarshalNDR ¶
func (*GetPrinterDataRequest) UnmarshalNDR ¶
type GetPrinterDataResponse ¶
type GetPrinterDataResponse struct { // pType: A parameter specified in Dynamically Typed Query Parameters (section 3.1.4.1.2). Type uint32 `idl:"name:pType" json:"type"` // pData: A pointer to BUFFER as specified in Dynamically Typed Query Parameters. Data []byte `idl:"name:pData;size_is:(nSize)" json:"data"` // pcbNeeded: A parameter specified in Dynamically Typed Query Parameters. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // Return: The RpcGetPrinterData return value. Return uint32 `idl:"name:Return" json:"return"` }
GetPrinterDataResponse structure represents the RpcGetPrinterData operation response
func (*GetPrinterDataResponse) MarshalNDR ¶
func (*GetPrinterDataResponse) UnmarshalNDR ¶
type GetPrinterDriver2Request ¶
type GetPrinterDriver2Request struct { // hPrinter: A handle to a printer object that was opened by RpcAddPrinter (section // 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), // or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pEnvironment: A parameter specified in Environment Name Parameters (section 3.1.4.1.3). Environment string `idl:"name:pEnvironment;string;pointer:unique" json:"environment"` // Level: The driver information level. // // +------------+------------------------------------------------------+ // | | | // | VALUE | DESCRIPTION | // | | | // +------------+------------------------------------------------------+ // +------------+------------------------------------------------------+ // | 0x00000001 | Corresponds to _DRIVER_INFO_1 (section 2.2.2.4.1). | // +------------+------------------------------------------------------+ // | 0x00000002 | Corresponds to _DRIVER_INFO_2 (section 2.2.2.4.2). | // +------------+------------------------------------------------------+ // | 0x00000003 | Corresponds to _DRIVER_INFO_3 (section 2.2.2.4.3). | // +------------+------------------------------------------------------+ // | 0x00000004 | Corresponds to _DRIVER_INFO_4 (section 2.2.2.4.4). | // +------------+------------------------------------------------------+ // | 0x00000005 | Corresponds to _DRIVER_INFO_5 (section 2.2.2.4.5). | // +------------+------------------------------------------------------+ // | 0x00000006 | Corresponds to _DRIVER_INFO_6 (section 2.2.2.4.6). | // +------------+------------------------------------------------------+ // | 0x00000008 | Corresponds to _DRIVER_INFO_8 (section 2.2.2.4.8). | // +------------+------------------------------------------------------+ // | 0x00000065 | Corresponds to _DRIVER_INFO_101 (section 2.2.2.4.9). | // +------------+------------------------------------------------------+ Level uint32 `idl:"name:Level" json:"level"` // pDriver: A pointer to the BUFFER, as specified in INFO Structures Query Parameters // (section 3.1.4.1.9). Driver []byte `idl:"name:pDriver;size_is:(cbBuf);pointer:unique" json:"driver"` // cbBuf: A parameter specified in INFO Structures Query Parameters. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` // dwClientMajorVersion: The implementation-specific major printer driver version of // the client operating system.<335> ClientMajorVersion uint32 `idl:"name:dwClientMajorVersion" json:"client_major_version"` // dwClientMinorVersion: The implementation-specific minor printer driver version of // the client operating system.<336> ClientMinorVersion uint32 `idl:"name:dwClientMinorVersion" json:"client_minor_version"` }
GetPrinterDriver2Request structure represents the RpcGetPrinterDriver2 operation request
func (*GetPrinterDriver2Request) MarshalNDR ¶
func (*GetPrinterDriver2Request) UnmarshalNDR ¶
type GetPrinterDriver2Response ¶
type GetPrinterDriver2Response struct { // pDriver: A pointer to the BUFFER, as specified in INFO Structures Query Parameters // (section 3.1.4.1.9). Driver []byte `idl:"name:pDriver;size_is:(cbBuf);pointer:unique" json:"driver"` // pcbNeeded: A parameter specified in INFO Structures Query Parameters. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // pdwServerMaxVersion: A pointer to a DWORD that receives the implementation-specific // major version that the operating system supports for that printer driver. ServerMaxVersion uint32 `idl:"name:pdwServerMaxVersion" json:"server_max_version"` // pdwServerMinVersion: A pointer to a DWORD that receives the implementation-specific // minimum version that the operating system supports for that printer driver.<337> ServerMinVersion uint32 `idl:"name:pdwServerMinVersion" json:"server_min_version"` // Return: The RpcGetPrinterDriver2 return value. Return uint32 `idl:"name:Return" json:"return"` }
GetPrinterDriver2Response structure represents the RpcGetPrinterDriver2 operation response
func (*GetPrinterDriver2Response) MarshalNDR ¶
func (*GetPrinterDriver2Response) UnmarshalNDR ¶
type GetPrinterDriverDirectoryRequest ¶
type GetPrinterDriverDirectoryRequest struct { // pName: Specified in Print Server Name Parameters (section 3.1.4.1.4). Name string `idl:"name:pName;string;pointer:unique" json:"name"` // pEnvironment: Specified in Environment Name Parameters (section 3.1.4.1.3). Environment string `idl:"name:pEnvironment;string;pointer:unique" json:"environment"` // Level: The value 0x00000001. Level uint32 `idl:"name:Level" json:"level"` // pDriverDirectory: An optional pointer to BUFFER, as specified in String Query Parameters // (section 3.1.4.1.7). If cbBuf is zero, this parameter SHOULD be NULL. DriverDirectory []byte `idl:"name:pDriverDirectory;size_is:(cbBuf);pointer:unique" json:"driver_directory"` // cbBuf: See String Query Parameters (section 3.1.4.1.7). BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
GetPrinterDriverDirectoryRequest structure represents the RpcGetPrinterDriverDirectory operation request
func (*GetPrinterDriverDirectoryRequest) MarshalNDR ¶
func (*GetPrinterDriverDirectoryRequest) UnmarshalNDR ¶
type GetPrinterDriverDirectoryResponse ¶
type GetPrinterDriverDirectoryResponse struct { // pDriverDirectory: An optional pointer to BUFFER, as specified in String Query Parameters // (section 3.1.4.1.7). If cbBuf is zero, this parameter SHOULD be NULL. DriverDirectory []byte `idl:"name:pDriverDirectory;size_is:(cbBuf);pointer:unique" json:"driver_directory"` // pcbNeeded: See String Query Parameters (section 3.1.4.1.7). NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // Return: The RpcGetPrinterDriverDirectory return value. Return uint32 `idl:"name:Return" json:"return"` }
GetPrinterDriverDirectoryResponse structure represents the RpcGetPrinterDriverDirectory operation response
func (*GetPrinterDriverDirectoryResponse) MarshalNDR ¶
func (*GetPrinterDriverDirectoryResponse) UnmarshalNDR ¶
type GetPrinterDriverPackagePathRequest ¶
type GetPrinterDriverPackagePathRequest struct { // pszServer: A STRING_HANDLE (section 2.2.1.1.7) for a server object. This parameter // MUST adhere to the specification in Print Server Name Parameters (section 3.1.4.1.4). Server string `idl:"name:pszServer;string;pointer:unique" json:"server"` // pszEnvironment: A pointer to a string that specifies the environment name for which // the driver package path MUST be returned. For rules governing environment names, // see section 2.2.4.4. Environment string `idl:"name:pszEnvironment;string" json:"environment"` // pszLanguage: An optional pointer to a string that specifies the language for which // the driver package path MUST<350> be returned. Language string `idl:"name:pszLanguage;string;pointer:unique" json:"language"` // pszPackageID: A pointer to a string that specifies the package name. The package // name MUST be obtained by calling RpcGetCorePrinterDrivers. PackageID string `idl:"name:pszPackageID;string" json:"package_id"` // pszDriverPackageCab: This parameter is a pointer to a buffer that receives a string // that specifies the path name of the driver package file.<351> For rules governing // path names, see section 2.2.4.9. pszDriverPackageCab MUST NOT be NULL unless cchDriverPackageCab // is zero. DriverPackageCab string `idl:"name:pszDriverPackageCab;size_is:(cchDriverPackageCab);pointer:unique" json:"driver_package_cab"` // cchDriverPackageCab: This parameter specifies the size, in characters, of the buffer // that is referenced by the pszDriverPackageCab parameter. The value of this parameter // MAY<352> be zero. DriverPackageCabLength uint32 `idl:"name:cchDriverPackageCab" json:"driver_package_cab_length"` }
GetPrinterDriverPackagePathRequest structure represents the RpcGetPrinterDriverPackagePath operation request
func (*GetPrinterDriverPackagePathRequest) MarshalNDR ¶
func (*GetPrinterDriverPackagePathRequest) UnmarshalNDR ¶
type GetPrinterDriverPackagePathResponse ¶
type GetPrinterDriverPackagePathResponse struct { // pszDriverPackageCab: This parameter is a pointer to a buffer that receives a string // that specifies the path name of the driver package file.<351> For rules governing // path names, see section 2.2.4.9. pszDriverPackageCab MUST NOT be NULL unless cchDriverPackageCab // is zero. DriverPackageCab string `idl:"name:pszDriverPackageCab;size_is:(cchDriverPackageCab);pointer:unique" json:"driver_package_cab"` // pcchRequiredSize: A pointer to a variable that MUST receive the required size of // the buffer that is pointed to by the pszDriverPackageCab parameter. RequiredLength uint32 `idl:"name:pcchRequiredSize" json:"required_length"` // Return: The RpcGetPrinterDriverPackagePath return value. Return int32 `idl:"name:Return" json:"return"` }
GetPrinterDriverPackagePathResponse structure represents the RpcGetPrinterDriverPackagePath operation response
func (*GetPrinterDriverPackagePathResponse) MarshalNDR ¶
func (*GetPrinterDriverPackagePathResponse) UnmarshalNDR ¶
type GetPrinterDriverRequest ¶
type GetPrinterDriverRequest struct { // hPrinter: A handle to a printer object that was opened by RpcAddPrinter (section // 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), // or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pEnvironment: A parameter specified in Environment Name Parameters (section 3.1.4.1.3). Environment string `idl:"name:pEnvironment;string;pointer:unique" json:"environment"` // Level: The driver information level. // // +------------+----------------------------------------------------+ // | | | // | VALUE | DESCRIPTION | // | | | // +------------+----------------------------------------------------+ // +------------+----------------------------------------------------+ // | 0x00000001 | Corresponds to _DRIVER_INFO_1 (section 2.2.2.4.1). | // +------------+----------------------------------------------------+ // | 0x00000002 | Corresponds to _DRIVER_INFO_2 (section 2.2.2.4.2). | // +------------+----------------------------------------------------+ // | 0x00000003 | Corresponds to _DRIVER_INFO_3 (section 2.2.2.4.3). | // +------------+----------------------------------------------------+ // | 0x00000004 | Corresponds to _DRIVER_INFO_4 (section 2.2.2.4.4). | // +------------+----------------------------------------------------+ // | 0x00000006 | Corresponds to _DRIVER_INFO_6 (section 2.2.2.4.6). | // +------------+----------------------------------------------------+ // | 0x00000008 | Corresponds to _DRIVER_INFO_8 (section 2.2.2.4.8). | // +------------+----------------------------------------------------+ Level uint32 `idl:"name:Level" json:"level"` // pDriver: An optional pointer to BUFFER, as specified in INFO Structures Query Parameters // (section 3.1.4.1.9). Driver []byte `idl:"name:pDriver;size_is:(cbBuf);pointer:unique" json:"driver"` // cbBuf: Specified in INFO Structures Query Parameters. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
GetPrinterDriverRequest structure represents the RpcGetPrinterDriver operation request
func (*GetPrinterDriverRequest) MarshalNDR ¶
func (*GetPrinterDriverRequest) UnmarshalNDR ¶
type GetPrinterDriverResponse ¶
type GetPrinterDriverResponse struct { // pDriver: An optional pointer to BUFFER, as specified in INFO Structures Query Parameters // (section 3.1.4.1.9). Driver []byte `idl:"name:pDriver;size_is:(cbBuf);pointer:unique" json:"driver"` // pcbNeeded: Specified in INFO Structures Query Parameters. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // Return: The RpcGetPrinterDriver return value. Return uint32 `idl:"name:Return" json:"return"` }
GetPrinterDriverResponse structure represents the RpcGetPrinterDriver operation response
func (*GetPrinterDriverResponse) MarshalNDR ¶
func (*GetPrinterDriverResponse) UnmarshalNDR ¶
type GetPrinterRequest ¶
type GetPrinterRequest struct { // hPrinter: A handle to a printer object that was opened by RpcAddPrinter (section // 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), // or RpcOpenPrinterEx (section 3.1.4.2.14). This value MAY be a handle to a print server // object.<277> Printer *Printer `idl:"name:hPrinter" json:"printer"` // Level: The level of printer information structure, as follows. // // +------------+-------------------------------------------------------------------------------+ // | | | // | VALUE | DESCRIPTION | // | | | // +------------+-------------------------------------------------------------------------------+ // +------------+-------------------------------------------------------------------------------+ // | 0x00000000 | Corresponds to _PRINTER_INFO_STRESS (section 2.2.2.9.1). | // +------------+-------------------------------------------------------------------------------+ // | 0x00000001 | Corresponds to _PRINTER_INFO_1 (section 2.2.2.9.2). | // +------------+-------------------------------------------------------------------------------+ // | 0x00000002 | Corresponds to _PRINTER_INFO_2 (section 2.2.2.9.3). | // +------------+-------------------------------------------------------------------------------+ // | 0x00000003 | Corresponds to _PRINTER_INFO_3 (section 2.2.2.9.4). | // +------------+-------------------------------------------------------------------------------+ // | 0x00000004 | Corresponds to _PRINTER_INFO_4 (section 2.2.2.9.5). | // +------------+-------------------------------------------------------------------------------+ // | 0x00000005 | Corresponds to _PRINTER_INFO_5 (section 2.2.2.9.6). | // +------------+-------------------------------------------------------------------------------+ // | 0x00000006 | Corresponds to _PRINTER_INFO_6 (section 2.2.2.9.7). | // +------------+-------------------------------------------------------------------------------+ // | 0x00000007 | Corresponds to _PRINTER_INFO_7 (section 2.2.2.9.8). | // +------------+-------------------------------------------------------------------------------+ // | 0x00000008 | Corresponds to _PRINTER_INFO_8 (section 2.2.2.9.9). | // +------------+-------------------------------------------------------------------------------+ // | 0x00000009 | Not valid remotely; the server MUST respond by returning ERROR_NOT_SUPPORTED. | // +------------+-------------------------------------------------------------------------------+ Level uint32 `idl:"name:Level" json:"level"` // pPrinter: A pointer to a BUFFER (INFO Structures Query Parameters (section 3.1.4.1.9)). PrinterBuffer []byte `idl:"name:pPrinter;size_is:(cbBuf);pointer:unique" json:"printer_buffer"` // cbBuf: A parameter specified in INFO Structures Query Parameters. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
GetPrinterRequest structure represents the RpcGetPrinter operation request
func (*GetPrinterRequest) MarshalNDR ¶
func (*GetPrinterRequest) UnmarshalNDR ¶
type GetPrinterResponse ¶
type GetPrinterResponse struct { // pPrinter: A pointer to a BUFFER (INFO Structures Query Parameters (section 3.1.4.1.9)). PrinterBuffer []byte `idl:"name:pPrinter;size_is:(cbBuf);pointer:unique" json:"printer_buffer"` // pcbNeeded: A parameter specified in INFO Structures Query Parameters. NeededLength uint32 `idl:"name:pcbNeeded" json:"needed_length"` // Return: The RpcGetPrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
GetPrinterResponse structure represents the RpcGetPrinter operation response
func (*GetPrinterResponse) MarshalNDR ¶
func (*GetPrinterResponse) UnmarshalNDR ¶
type JobContainer ¶
type JobContainer struct { // Level: Specifies the information level of the JobInfo data. The value of this member // MUST be in the range 0x00000001 to 0x00000004 inclusive. Level uint32 `idl:"name:Level" json:"level"` // JobInfo: Defines print job properties, using an information structure that corresponds // to the value of the Level member. JobInfo *JobContainer_JobInfo `idl:"name:JobInfo;switch_is:Level" json:"job_info"` }
JobContainer structure represents JOB_CONTAINER RPC structure.
The JOB_CONTAINER structure provides information about print jobs, using JOB_INFO structures. The JobInfo member specifies the structure that defines the print job properties.
func (*JobContainer) MarshalNDR ¶
func (*JobContainer) UnmarshalNDR ¶
type JobContainer_JobInfo ¶
type JobContainer_JobInfo struct { // Types that are assignable to Value // // *JobContainer_JobInfo_Level1 // *JobContainer_JobInfo_Level2 // *JobContainer_JobInfo_Level3 // *JobContainer_JobInfo_Level4 Value is_JobContainer_JobInfo `json:"value"` }
JobContainer_JobInfo structure represents JOB_CONTAINER union anonymous member.
The JOB_CONTAINER structure provides information about print jobs, using JOB_INFO structures. The JobInfo member specifies the structure that defines the print job properties.
func (*JobContainer_JobInfo) GetValue ¶
func (o *JobContainer_JobInfo) GetValue() any
func (*JobContainer_JobInfo) MarshalUnionNDR ¶
func (*JobContainer_JobInfo) NDRSwitchValue ¶
func (o *JobContainer_JobInfo) NDRSwitchValue(sw uint32) uint32
func (*JobContainer_JobInfo) UnmarshalUnionNDR ¶
type JobContainer_JobInfo_Level1 ¶
type JobContainer_JobInfo_Level1 struct { // Level1: If the Level member is 0x00000001, this member is a pointer to a JOB_INFO_1 // structure that provides print job information. For details, see section 2.2.1.7.1. Level1 *JobInfo1 `idl:"name:Level1" json:"level1"` }
JobContainer_JobInfo_Level1 structure represents JobContainer_JobInfo RPC union arm.
It has following labels: 1
func (*JobContainer_JobInfo_Level1) MarshalNDR ¶
func (*JobContainer_JobInfo_Level1) UnmarshalNDR ¶
type JobContainer_JobInfo_Level2 ¶
type JobContainer_JobInfo_Level2 struct { // Level2: If the Level member is 0x00000002, this member is a pointer to a JOB_INFO_2 // structure that provides print job information. For details, see section 2.2.1.7.2. Level2 *JobInfo2 `idl:"name:Level2" json:"level2"` }
JobContainer_JobInfo_Level2 structure represents JobContainer_JobInfo RPC union arm.
It has following labels: 2
func (*JobContainer_JobInfo_Level2) MarshalNDR ¶
func (*JobContainer_JobInfo_Level2) UnmarshalNDR ¶
type JobContainer_JobInfo_Level3 ¶
type JobContainer_JobInfo_Level3 struct { // Level3: If the Level member is 0x00000003, this member is a pointer to a JOB_INFO_3 // structure that provides print job information. For details, see section 2.2.1.7.3. Level3 *JobInfo3 `idl:"name:Level3" json:"level3"` }
JobContainer_JobInfo_Level3 structure represents JobContainer_JobInfo RPC union arm.
It has following labels: 3
func (*JobContainer_JobInfo_Level3) MarshalNDR ¶
func (*JobContainer_JobInfo_Level3) UnmarshalNDR ¶
type JobContainer_JobInfo_Level4 ¶
type JobContainer_JobInfo_Level4 struct { // Level4: If the Level member is 0x00000004, this member is a pointer to a JOB_INFO_4 // structure that provides print job information. For details, see section 2.2.1.7.4. Level4 *JobInfo4 `idl:"name:Level4" json:"level4"` }
JobContainer_JobInfo_Level4 structure represents JobContainer_JobInfo RPC union arm.
It has following labels: 4
func (*JobContainer_JobInfo_Level4) MarshalNDR ¶
func (*JobContainer_JobInfo_Level4) UnmarshalNDR ¶
type JobInfo1 ¶
type JobInfo1 struct { JobID uint32 `idl:"name:JobId" json:"job_id"` PrinterName string `idl:"name:pPrinterName;string" json:"printer_name"` MachineName string `idl:"name:pMachineName;string" json:"machine_name"` UserName string `idl:"name:pUserName;string" json:"user_name"` Document string `idl:"name:pDocument;string" json:"document"` DataType string `idl:"name:pDatatype;string" json:"data_type"` StatusString string `idl:"name:__pStatus;string" json:"status_string"` Status uint32 `idl:"name:Status" json:"status"` Priority uint32 `idl:"name:Priority" json:"priority"` Position uint32 `idl:"name:Position" json:"position"` TotalPages uint32 `idl:"name:TotalPages" json:"total_pages"` PagesPrinted uint32 `idl:"name:PagesPrinted" json:"pages_printed"` Submitted *dtyp.SystemTime `idl:"name:Submitted" json:"submitted"` }
JobInfo1 structure represents JOB_INFO_1 RPC structure.
The _JOB_INFO_1 structure specifies print job information. It is a custom-marshaled form of the _JOB_INFO_1 (section 2.2.1.7.1) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
The JOB_INFO_1 structure provides information about a print job.
All members not defined in this section are specified in sections 2.2.1.3.3 and 2.2.1.3.
func (*JobInfo1) MarshalNDR ¶
type JobInfo2 ¶
type JobInfo2 struct { JobID uint32 `idl:"name:JobId" json:"job_id"` PrinterName string `idl:"name:pPrinterName;string" json:"printer_name"` MachineName string `idl:"name:pMachineName;string" json:"machine_name"` UserName string `idl:"name:pUserName;string" json:"user_name"` Document string `idl:"name:pDocument;string" json:"document"` NotifyName string `idl:"name:pNotifyName;string" json:"notify_name"` DataType string `idl:"name:pDatatype;string" json:"data_type"` PrintProcessor string `idl:"name:pPrintProcessor;string" json:"print_processor"` Parameters string `idl:"name:pParameters;string" json:"parameters"` DriverName string `idl:"name:pDriverName;string" json:"driver_name"` DevMode uint64 `idl:"name:pDevMode" json:"dev_mode"` StatusString string `idl:"name:__pStatus;string" json:"status_string"` SecurityDescriptor uint64 `idl:"name:pSecurityDescriptor" json:"security_descriptor"` Status uint32 `idl:"name:Status" json:"status"` Priority uint32 `idl:"name:Priority" json:"priority"` Position uint32 `idl:"name:Position" json:"position"` StartTime uint32 `idl:"name:StartTime" json:"start_time"` UntilTime uint32 `idl:"name:UntilTime" json:"until_time"` TotalPages uint32 `idl:"name:TotalPages" json:"total_pages"` Size uint32 `idl:"name:Size" json:"size"` Submitted *dtyp.SystemTime `idl:"name:Submitted" json:"submitted"` Time uint32 `idl:"name:Time" json:"time"` PagesPrinted uint32 `idl:"name:PagesPrinted" json:"pages_printed"` }
JobInfo2 structure represents JOB_INFO_2 RPC structure.
The _JOB_INFO_2 structure specifies print job information. It is a custom-marshaled form of the _JOB_INFO_2 (section 2.2.1.7.2) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
The JOB_INFO_2 structure provides information about a print job.
All members not defined in this section are specified in sections 2.2.1.3.3 and 2.2.1.3.
func (*JobInfo2) MarshalNDR ¶
type JobInfo3 ¶
type JobInfo3 struct { JobID uint32 `idl:"name:JobId" json:"job_id"` // NextJobId: An identifier that specifies the print job in the queue following the // job identified by the JobId member. A value of zero indicates that there are no jobs // following the job identified by the JobId member. // // When used as input to RpcSetJob (section 3.1.4.3.1) to alter the order of print jobs // and link them together, JobId and NextJobId MUST be nonzero and SHOULD be obtained // through RpcEnumJobs (section 3.1.4.3.3) or RpcGetJob (section 3.1.4.3.2). // // All members not defined in this section are specified in sections 2.2.1.3.3 and 2.2.1.3. NextJobID uint32 `idl:"name:NextJobId" json:"next_job_id"` // contains filtered or unexported fields }
JobInfo3 structure represents JOB_INFO_3 RPC structure.
The JOB_INFO_3 structure provides information about a print job.<46>
The _JOB_INFO_3 structure specifies information about the order of print jobs, and it is used to alter the order of print jobs.<118> It is a custom-marshaled form of the _JOB_INFO_3 (section 2.2.1.7.3) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
func (*JobInfo3) MarshalNDR ¶
type JobInfo4 ¶
type JobInfo4 struct { JobID uint32 `idl:"name:JobId" json:"job_id"` PrinterName string `idl:"name:pPrinterName;string" json:"printer_name"` MachineName string `idl:"name:pMachineName;string" json:"machine_name"` UserName string `idl:"name:pUserName;string" json:"user_name"` Document string `idl:"name:pDocument;string" json:"document"` NotifyName string `idl:"name:pNotifyName;string" json:"notify_name"` DataType string `idl:"name:pDatatype;string" json:"data_type"` PrintProcessor string `idl:"name:pPrintProcessor;string" json:"print_processor"` Parameters string `idl:"name:pParameters;string" json:"parameters"` DriverName string `idl:"name:pDriverName;string" json:"driver_name"` DevMode uint64 `idl:"name:pDevMode" json:"dev_mode"` StatusString string `idl:"name:__pStatus;string" json:"status_string"` SecurityDescriptor uint64 `idl:"name:pSecurityDescriptor" json:"security_descriptor"` Status uint32 `idl:"name:Status" json:"status"` Priority uint32 `idl:"name:Priority" json:"priority"` Position uint32 `idl:"name:Position" json:"position"` StartTime uint32 `idl:"name:StartTime" json:"start_time"` UntilTime uint32 `idl:"name:UntilTime" json:"until_time"` TotalPages uint32 `idl:"name:TotalPages" json:"total_pages"` Size uint32 `idl:"name:Size" json:"size"` Submitted *dtyp.SystemTime `idl:"name:Submitted" json:"submitted"` Time uint32 `idl:"name:Time" json:"time"` PagesPrinted uint32 `idl:"name:PagesPrinted" json:"pages_printed"` // SizeHigh: This member specifies the high-order 32 bits of a 64-bit unsigned integer // that specifies the size of the job, in bytes. // // All members not defined in this section are specified in sections 2.2.1.3.3 and 2.2.1.3. SizeHigh int32 `idl:"name:SizeHigh" json:"size_high"` }
JobInfo4 structure represents JOB_INFO_4 RPC structure.
The JOB_INFO_4 structure provides information about a print job.<47>
The _JOB_INFO_4 structure specifies print job information.<119> It is a custom-marshaled form of the _JOB_INFO_4 (section 2.2.1.7.4) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
func (*JobInfo4) MarshalNDR ¶
type LogJobInfoForBranchOfficeRequest ¶
type LogJobInfoForBranchOfficeRequest struct { Printer *Printer `idl:"name:hPrinter" json:"printer"` BranchOfficeJobDataContainer *BranchOfficeJobDataContainer `idl:"name:pBranchOfficeJobDataContainer;pointer:ref" json:"branch_office_job_data_container"` }
LogJobInfoForBranchOfficeRequest structure represents the RpcLogJobInfoForBranchOffice operation request
func (*LogJobInfoForBranchOfficeRequest) MarshalNDR ¶
func (*LogJobInfoForBranchOfficeRequest) UnmarshalNDR ¶
type LogJobInfoForBranchOfficeResponse ¶
type LogJobInfoForBranchOfficeResponse struct { // Return: The RpcLogJobInfoForBranchOffice return value. Return uint32 `idl:"name:Return" json:"return"` }
LogJobInfoForBranchOfficeResponse structure represents the RpcLogJobInfoForBranchOffice operation response
func (*LogJobInfoForBranchOfficeResponse) MarshalNDR ¶
func (*LogJobInfoForBranchOfficeResponse) UnmarshalNDR ¶
type MonitorContainer ¶
type MonitorContainer struct { // Level: Specifies the information level of the MonitorInfo data. The value of this // member MUST be 0x00000001 or 0x00000002. Level uint32 `idl:"name:Level" json:"level"` // MonitorInfo: Defines port monitor properties, using an information structure that // corresponds to the value of the Level member. MonitorInfo *MonitorContainer_MonitorInfo `idl:"name:MonitorInfo;switch_is:Level" json:"monitor_info"` }
MonitorContainer structure represents MONITOR_CONTAINER RPC structure.
The MONITOR_CONTAINER structure provides information about port monitors, using MONITOR_INFO structures. The MonitorInfo member specifies the structure that defines the port monitor properties.
func (*MonitorContainer) MarshalNDR ¶
func (*MonitorContainer) UnmarshalNDR ¶
type MonitorContainer_MonitorInfo ¶
type MonitorContainer_MonitorInfo struct { // Types that are assignable to Value // // *MonitorContainer_MonitorInfo_MonitorInfo1 // *MonitorContainer_MonitorInfo_MonitorInfo2 Value is_MonitorContainer_MonitorInfo `json:"value"` }
MonitorContainer_MonitorInfo structure represents MONITOR_CONTAINER union anonymous member.
The MONITOR_CONTAINER structure provides information about port monitors, using MONITOR_INFO structures. The MonitorInfo member specifies the structure that defines the port monitor properties.
func (*MonitorContainer_MonitorInfo) GetValue ¶
func (o *MonitorContainer_MonitorInfo) GetValue() any
func (*MonitorContainer_MonitorInfo) MarshalUnionNDR ¶
func (*MonitorContainer_MonitorInfo) NDRSwitchValue ¶
func (o *MonitorContainer_MonitorInfo) NDRSwitchValue(sw uint32) uint32
func (*MonitorContainer_MonitorInfo) UnmarshalUnionNDR ¶
type MonitorContainer_MonitorInfo_MonitorInfo1 ¶
type MonitorContainer_MonitorInfo_MonitorInfo1 struct { // pMonitorInfo1: If the Level member is 0x00000001, this member is a pointer to a MONITOR_INFO_1 // structure that provides information about a port monitor. For details, see section // 2.2.1.8.1. MonitorInfo1 *MonitorInfo1 `idl:"name:pMonitorInfo1" json:"monitor_info1"` }
MonitorContainer_MonitorInfo_MonitorInfo1 structure represents MonitorContainer_MonitorInfo RPC union arm.
It has following labels: 1
func (*MonitorContainer_MonitorInfo_MonitorInfo1) MarshalNDR ¶
func (*MonitorContainer_MonitorInfo_MonitorInfo1) UnmarshalNDR ¶
type MonitorContainer_MonitorInfo_MonitorInfo2 ¶
type MonitorContainer_MonitorInfo_MonitorInfo2 struct { // pMonitorInfo2: If the Level member is 0x00000002, this member is a pointer to a MONITOR_INFO_2 // structure that provides information about a port monitor. For details, see section // 2.2.1.8.2. MonitorInfo2 *MonitorInfo2 `idl:"name:pMonitorInfo2" json:"monitor_info2"` }
MonitorContainer_MonitorInfo_MonitorInfo2 structure represents MonitorContainer_MonitorInfo RPC union arm.
It has following labels: 2
func (*MonitorContainer_MonitorInfo_MonitorInfo2) MarshalNDR ¶
func (*MonitorContainer_MonitorInfo_MonitorInfo2) UnmarshalNDR ¶
type MonitorInfo1 ¶
type MonitorInfo1 struct {
Name string `idl:"name:pName;string" json:"name"`
}
MonitorInfo1 structure represents MONITOR_INFO_1 RPC structure.
The _MONITOR_INFO_1 structure identifies an installed port monitor. It is a custom-marshaled form of the _MONITOR_INFO_1 (section 2.2.1.8.1) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
The MONITOR_INFO_1 structure provides information about a monitor.
All members not defined in this section are specified in sections 2.2.1.3.4 and 2.2.1.3.
func (*MonitorInfo1) MarshalNDR ¶
func (*MonitorInfo1) UnmarshalNDR ¶
type MonitorInfo2 ¶
type MonitorInfo2 struct { Name string `idl:"name:pName;string" json:"name"` // pEnvironment: A pointer to a string that specifies the environment that the monitor // supports. The environment specified MUST match the print server's operating system. // For rules governing environment names and Windows behaviors, see section 2.2.4.4. Environment string `idl:"name:pEnvironment;string" json:"environment"` // pDLLName: A pointer to a string that specifies the name of the port monitor executable // object. // // All members not defined in this section are specified in sections 2.2.1.3.4 and 2.2.1.3. DLLName string `idl:"name:pDLLName;string" json:"dll_name"` }
MonitorInfo2 structure represents MONITOR_INFO_2 RPC structure.
The _MONITOR_INFO_2 structure is used to identify a port monitor. It is a custom-marshaled form of the _MONITOR_INFO_2 (section 2.2.1.8.2) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
The MONITOR_INFO_2 structure provides information about a monitor.
func (*MonitorInfo2) MarshalNDR ¶
func (*MonitorInfo2) UnmarshalNDR ¶
type OSType ¶
type OSType uint16
OSType type represents OS_TYPE RPC enumeration.
The OS_TYPE enumeration specifies information about the operating system (OS) type for use with Server Handle Key Values (section 2.2.3.10).<184>
var ( // VER_NT_WORKSTATION: The OS is a Windows NT operating system workstation. OSTypeVerNTWorkstation OSType = 1 // VER_NT_DOMAIN_CONTROLLER: The OS is a Windows NT domain controller. OSTypeVerNTDomainController OSType = 2 // VER_NT_SERVER: The OS is a Windows NT server. A server that is also a domain controller // is reported as VER_NT_DOMAIN_CONTROLLER, not VER_NT_SERVER. OSTypeVerNTServer OSType = 3 )
type OpenPrinterExRequest ¶
type OpenPrinterExRequest struct { // pPrinterName: A STRING_HANDLE (section 2.2.1.1.7) for a printer connection, printer // object, server object, job object, port object, or port monitor object. For opening // a server object, this parameter MUST adhere to the specification in Print Server // Name Parameters (section 3.1.4.1.4); for opening all other objects, it MUST adhere // to the specification in Printer Name Parameters (section 3.1.4.1.5). PrinterName string `idl:"name:pPrinterName;string;pointer:unique" json:"printer_name"` // pDatatype: A pointer to a string that specifies the data type to be associated with // the printer handle. This parameter MUST adhere to the specification in Datatype Name // Parameters (section 3.1.4.1.1). DataType string `idl:"name:pDatatype;string;pointer:unique" json:"data_type"` // pDevModeContainer: A pointer to a DEVMODE_CONTAINER structure. This parameter MUST // adhere to the specification in DEVMODE_CONTAINER Parameters (section 3.1.4.1.8.1). DevModeContainer *DevModeContainer `idl:"name:pDevModeContainer" json:"dev_mode_container"` // AccessRequired: The access level that the client requires for interacting with the // object to which a handle is being opened. The value of this parameter is one of those // specified in Access Values (section 2.2.3.1). For rules governing access values, // see section 2.2.4.1. AccessRequired uint32 `idl:"name:AccessRequired" json:"access_required"` // pClientInfo: A pointer to a SPLCLIENT_CONTAINER (section 2.2.1.2.14) structure. This // parameter MUST adhere to the specification in SPLCLIENT_CONTAINER Parameters (section // 3.1.4.1.8.8). ClientInfo *ClientContainer `idl:"name:pClientInfo" json:"client_info"` }
OpenPrinterExRequest structure represents the RpcOpenPrinterEx operation request
func (*OpenPrinterExRequest) MarshalNDR ¶
func (*OpenPrinterExRequest) UnmarshalNDR ¶
type OpenPrinterExResponse ¶
type OpenPrinterExResponse struct { // pHandle: A pointer to a PRINTER_HANDLE (section 2.2.1.1.4) that MUST receive the // RPC context handle [C706] to the object identified by the pPrinterName parameter. Handle *Printer `idl:"name:pHandle" json:"handle"` // Return: The RpcOpenPrinterEx return value. Return uint32 `idl:"name:Return" json:"return"` }
OpenPrinterExResponse structure represents the RpcOpenPrinterEx operation response
func (*OpenPrinterExResponse) MarshalNDR ¶
func (*OpenPrinterExResponse) UnmarshalNDR ¶
type OpenPrinterRequest ¶
type OpenPrinterRequest struct { // pPrinterName: A STRING_HANDLE (section 2.2.1.1.7) for a printer connection, printer // object, server object, job object, port object, or port monitor object. For opening // a server object, this parameter MUST adhere to the specification in Print Server // Name Parameters (section 3.1.4.1.4); for opening all other objects, it MUST adhere // to the specification in Printer Name Parameters (section 3.1.4.1.5). PrinterName string `idl:"name:pPrinterName;string;pointer:unique" json:"printer_name"` // pDatatype: A pointer to a string that specifies the data type to be associated with // the printer handle. This parameter MUST adhere to the specification in Datatype Name // Parameters (section 3.1.4.1.1). DataType string `idl:"name:pDatatype;string;pointer:unique" json:"data_type"` // pDevModeContainer: A pointer to a DEVMODE_CONTAINER structure. This parameter MUST // adhere to the specification in DEVMODE_CONTAINER Parameters (section 3.1.4.1.8.1). DevModeContainer *DevModeContainer `idl:"name:pDevModeContainer" json:"dev_mode_container"` // AccessRequired: The access level that the client requires for interacting with the // object to which a handle is being opened. The value of this parameter is one of those // specified in Access Values (section 2.2.3.1) or 0. For rules governing access values, // see section 2.2.4.1. AccessRequired uint32 `idl:"name:AccessRequired" json:"access_required"` }
OpenPrinterRequest structure represents the RpcOpenPrinter operation request
func (*OpenPrinterRequest) MarshalNDR ¶
func (*OpenPrinterRequest) UnmarshalNDR ¶
type OpenPrinterResponse ¶
type OpenPrinterResponse struct { // pHandle: A pointer to a PRINTER_HANDLE (section 2.2.1.1.4) that MUST receive the // RPC context handle [C706] to the object identified by the pPrinterName parameter. Handle *Printer `idl:"name:pHandle" json:"handle"` // Return: The RpcOpenPrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
OpenPrinterResponse structure represents the RpcOpenPrinter operation response
func (*OpenPrinterResponse) MarshalNDR ¶
func (*OpenPrinterResponse) UnmarshalNDR ¶
type PlayGDIScriptOnPrinterICRequest ¶
type PlayGDIScriptOnPrinterICRequest struct { // hPrinterIC: A printer information context handle (section 2.2.1.1.2) that was returned // by RpcCreatePrinterIC (section 3.1.4.2.10). PrinterIC *GDI `idl:"name:hPrinterIC" json:"printer_ic"` // pIn: A pointer that SHOULD be set to NULL when sent and MUST be ignored on receipt. In []byte `idl:"name:pIn;size_is:(cIn)" json:"in"` // cIn: A value that SHOULD be set to zero when sent and MUST be ignored on receipt. InCount uint32 `idl:"name:cIn" json:"in_count"` // cOut: The size, in bytes, of the buffer pointed to by pOut. OutCount uint32 `idl:"name:cOut" json:"out_count"` // ul: A value that SHOULD be set to zero when sent and MUST be ignored on receipt. Ul uint32 `idl:"name:ul" json:"ul"` }
PlayGDIScriptOnPrinterICRequest structure represents the RpcPlayGdiScriptOnPrinterIC operation request
func (*PlayGDIScriptOnPrinterICRequest) MarshalNDR ¶
func (*PlayGDIScriptOnPrinterICRequest) UnmarshalNDR ¶
type PlayGDIScriptOnPrinterICResponse ¶
type PlayGDIScriptOnPrinterICResponse struct { // pOut: A pointer to a buffer, the size and contents of which are determined by the // value of the cOut parameter. Out []byte `idl:"name:pOut;size_is:(cOut)" json:"out"` // Return: The RpcPlayGdiScriptOnPrinterIC return value. Return uint32 `idl:"name:Return" json:"return"` }
PlayGDIScriptOnPrinterICResponse structure represents the RpcPlayGdiScriptOnPrinterIC operation response
func (*PlayGDIScriptOnPrinterICResponse) MarshalNDR ¶
func (*PlayGDIScriptOnPrinterICResponse) UnmarshalNDR ¶
type PortContainer ¶
type PortContainer struct { // Level: Specifies the information level of the PortInfo data. The value of this member // MUST be in the range 0x00000001 to 0x00000003 inclusive, or 0xFFFFFFFF. Level uint32 `idl:"name:Level" json:"level"` // PortInfo: Defines port properties, using an information structure that corresponds // to the value of the Level member. PortInfo *PortContainer_PortInfo `idl:"name:PortInfo;switch_is:(16777215 Level &)" json:"port_info"` }
PortContainer structure represents PORT_CONTAINER RPC structure.
The PORT_CONTAINER structure provides information about printer ports, using PORT_INFO structures.<4> The PortInfo member specifies the structure that defines the port properties.
func (*PortContainer) MarshalNDR ¶
func (*PortContainer) UnmarshalNDR ¶
type PortContainer_PortInfo ¶
type PortContainer_PortInfo struct { // Types that are assignable to Value // // *PortContainer_PortInfo_PortInfo1 // *PortContainer_PortInfo_PortInfo2 // *PortContainer_PortInfo_PortInfo3 // *PortContainer_PortInfo_PortInfo255 Value is_PortContainer_PortInfo `json:"value"` }
PortContainer_PortInfo structure represents PORT_CONTAINER union anonymous member.
The PORT_CONTAINER structure provides information about printer ports, using PORT_INFO structures.<4> The PortInfo member specifies the structure that defines the port properties.
func (*PortContainer_PortInfo) GetValue ¶
func (o *PortContainer_PortInfo) GetValue() any
func (*PortContainer_PortInfo) MarshalUnionNDR ¶
func (*PortContainer_PortInfo) NDRSwitchValue ¶
func (o *PortContainer_PortInfo) NDRSwitchValue(sw uint32) uint32
func (*PortContainer_PortInfo) UnmarshalUnionNDR ¶
type PortContainer_PortInfo_PortInfo1 ¶
type PortContainer_PortInfo_PortInfo1 struct { // pPortInfo1: If the Level member is 0x00000001, this member is a pointer to a PORT_INFO_1 // structure that provides information about the printer port. For details, see section // 2.2.1.9.1. PortInfo1 *PortInfo1 `idl:"name:pPortInfo1" json:"port_info1"` }
PortContainer_PortInfo_PortInfo1 structure represents PortContainer_PortInfo RPC union arm.
It has following labels: 1
func (*PortContainer_PortInfo_PortInfo1) MarshalNDR ¶
func (*PortContainer_PortInfo_PortInfo1) UnmarshalNDR ¶
type PortContainer_PortInfo_PortInfo2 ¶
type PortContainer_PortInfo_PortInfo2 struct { // pPortInfo2: If the Level member is 0x00000002, this member is a pointer to a PORT_INFO_2 // structure that provides information about the printer port. For details, see section // 2.2.1.9.2. PortInfo2 *PortInfo2 `idl:"name:pPortInfo2" json:"port_info2"` }
PortContainer_PortInfo_PortInfo2 structure represents PortContainer_PortInfo RPC union arm.
It has following labels: 2
func (*PortContainer_PortInfo_PortInfo2) MarshalNDR ¶
func (*PortContainer_PortInfo_PortInfo2) UnmarshalNDR ¶
type PortContainer_PortInfo_PortInfo255 ¶
type PortContainer_PortInfo_PortInfo255 struct { // pPortInfoFF: If the Level member is 0xFFFFFFFF, this member is a pointer to a PORT_INFO_FF // structure that provides information about the printer port. For details, see section // 2.2.1.9.4. PortInfo255 *PortInfo255 `idl:"name:pPortInfoFF" json:"port_info255"` }
PortContainer_PortInfo_PortInfo255 structure represents PortContainer_PortInfo RPC union arm.
It has following labels: 16777215
func (*PortContainer_PortInfo_PortInfo255) MarshalNDR ¶
func (*PortContainer_PortInfo_PortInfo255) UnmarshalNDR ¶
type PortContainer_PortInfo_PortInfo3 ¶
type PortContainer_PortInfo_PortInfo3 struct { // pPortInfo3: If the Level member is 0x00000003, this member is a pointer to a PORT_INFO_3 // structure that provides information about the printer port. For details, see section // 2.2.1.9.3. PortInfo3 *PortInfo3 `idl:"name:pPortInfo3" json:"port_info3"` }
PortContainer_PortInfo_PortInfo3 structure represents PortContainer_PortInfo RPC union arm.
It has following labels: 3
func (*PortContainer_PortInfo_PortInfo3) MarshalNDR ¶
func (*PortContainer_PortInfo_PortInfo3) UnmarshalNDR ¶
type PortInfo1 ¶
type PortInfo1 struct {
PortName string `idl:"name:pPortName;string" json:"port_name"`
}
PortInfo1 structure represents PORT_INFO_1 RPC structure.
The _PORT_INFO_1 structure specifies information about a printer port. It is a custom-marshaled form of the _PORT_INFO_1 (section 2.2.1.9.1) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
The PORT_INFO_1 structure provides information about a port.
All members not defined in this section are specified in sections 2.2.1.3.5 and 2.2.1.3.
func (*PortInfo1) MarshalNDR ¶
type PortInfo2 ¶
type PortInfo2 struct { PortName string `idl:"name:pPortName;string" json:"port_name"` // pMonitorName: A pointer to a string that specifies an installed port monitor. For // rules governing port monitor names, see section 2.2.4.8. MonitorName string `idl:"name:pMonitorName;string" json:"monitor_name"` // pDescription: An optional pointer to a string that specifies additional implementation-specific // information about the printer port.<48> Description string `idl:"name:pDescription;string" json:"description"` // fPortType: A bit field that specifies attributes of the printer port. These flags // can be combined to specify multiple attributes. // // +-----------------------------------+--------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +-----------------------------------+--------------------------------------------------+ // +-----------------------------------+--------------------------------------------------+ // | PORT_TYPE_WRITE 0x00000001 | The port can be written to. | // +-----------------------------------+--------------------------------------------------+ // | PORT_TYPE_READ 0x00000002 | The port can be read from. | // +-----------------------------------+--------------------------------------------------+ // | PORT_TYPE_REDIRECTED 0x00000004 | The port is a Terminal Services redirected port. | // +-----------------------------------+--------------------------------------------------+ // | PORT_TYPE_NET_ATTACHED 0x00000008 | The port is a network TCP/IP port. | // +-----------------------------------+--------------------------------------------------+ // // All members not defined in this section are specified in sections 2.2.1.3.5 and 2.2.1.3. PortType uint32 `idl:"name:fPortType" json:"port_type"` // contains filtered or unexported fields }
PortInfo2 structure represents PORT_INFO_2 RPC structure.
The PORT_INFO_2 structure provides information about a port.
The _PORT_INFO_2 structure specifies information about a printer port. It is a custom-marshaled form of the _PORT_INFO_2 (section 2.2.1.9.2) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
func (*PortInfo2) MarshalNDR ¶
type PortInfo255 ¶
type PortInfo255 struct { PortName string `idl:"name:pPortName;string" json:"port_name"` // cbMonitorData: A value that SHOULD be set to zero when sent and MUST be ignored on // receipt. MonitorDataLength uint32 `idl:"name:cbMonitorData" json:"monitor_data_length"` // pMonitorData: A pointer that SHOULD be set to NULL when sent and MUST be ignored // on receipt. // // All members not defined in this section are specified in sections 2.2.1.3.5 and 2.2.1.3. MonitorData uint8 `idl:"name:pMonitorData" json:"monitor_data"` }
PortInfo255 structure represents PORT_INFO_FF RPC structure.
The PORT_INFO_FF structure is used to communicate port information to a local port monitor.<50>
func (*PortInfo255) MarshalNDR ¶
func (*PortInfo255) UnmarshalNDR ¶
type PortInfo3 ¶
type PortInfo3 struct { // dwStatus: The new port status. This value MUST be one of the following. // // +------------------------------------------+-----------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +------------------------------------------+-----------------------------------------------------+ // +------------------------------------------+-----------------------------------------------------+ // | PORT_STATUS_CLEAR 0x00000000 | Clears the printer port status. | // +------------------------------------------+-----------------------------------------------------+ // | PORT_STATUS_OFFLINE 0x00000001 | The port’s printer is offline. | // +------------------------------------------+-----------------------------------------------------+ // | PORT_STATUS_PAPER_JAM 0x00000002 | The port’s printer has a paper jam. | // +------------------------------------------+-----------------------------------------------------+ // | PORT_STATUS_PAPER_OUT 0x00000003 | The port’s printer is out of paper. | // +------------------------------------------+-----------------------------------------------------+ // | PORT_STATUS_OUTPUT_BIN_FULL 0x00000004 | The port’s printer's output bin is full. | // +------------------------------------------+-----------------------------------------------------+ // | PORT_STATUS_PAPER_PROBLEM 0x00000005 | The port’s printer has a paper problem. | // +------------------------------------------+-----------------------------------------------------+ // | PORT_STATUS_NO_TONER 0x00000006 | The port’s printer is out of toner. | // +------------------------------------------+-----------------------------------------------------+ // | PORT_STATUS_DOOR_OPEN 0x00000007 | The door of the port’s printer is open. | // +------------------------------------------+-----------------------------------------------------+ // | PORT_STATUS_USER_INTERVENTION 0x00000008 | The port’s printer requires user intervention. | // +------------------------------------------+-----------------------------------------------------+ // | PORT_STATUS_OUT_OF_MEMORY 0x00000009 | The port’s printer is out of memory. | // +------------------------------------------+-----------------------------------------------------+ // | PORT_STATUS_TONER_LOW 0x0000000A | The port’s printer is low on toner. | // +------------------------------------------+-----------------------------------------------------+ // | PORT_STATUS_WARMING_UP 0x0000000B | The port’s printer is warming up. | // +------------------------------------------+-----------------------------------------------------+ // | PORT_STATUS_POWER_SAVE 0x0000000C | The port’s printer is in a power-conservation mode. | // +------------------------------------------+-----------------------------------------------------+ Status uint32 `idl:"name:dwStatus" json:"status"` // pszStatus: An optional pointer to a string that specifies a status description. StatusString string `idl:"name:pszStatus;string" json:"status_string"` // dwSeverity: The severity of the port status value. This value MUST be one of the // following. // // +-------------------------------------+-------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +-------------------------------------+-------------------------------------------+ // +-------------------------------------+-------------------------------------------+ // | PORT_STATUS_TYPE_ERROR 0x00000001 | The port status value indicates an error. | // +-------------------------------------+-------------------------------------------+ // | PORT_STATUS_TYPE_WARNING 0x00000002 | The port status value is a warning. | // +-------------------------------------+-------------------------------------------+ // | PORT_STATUS_TYPE_INFO 0x00000003 | The port status value is informational. | // +-------------------------------------+-------------------------------------------+ // // All members not defined in this section are specified in sections 2.2.1.3.5 and 2.2.1.3. Severity uint32 `idl:"name:dwSeverity" json:"severity"` }
PortInfo3 structure represents PORT_INFO_3 RPC structure.
The PORT_INFO_3 structure provides information about a port.<49>
func (*PortInfo3) MarshalNDR ¶
type PortVarContainer ¶
type PortVarContainer struct { // cbMonitorData: The size, in bytes, of the buffer that is pointed to by the pMonitorData // member. MonitorDataLength uint32 `idl:"name:cbMonitorData" json:"monitor_data_length"` // pMonitorData: An optional pointer to a block of data that is passed to the port monitor. MonitorData []byte `idl:"name:pMonitorData;size_is:(cbMonitorData);pointer:unique" json:"monitor_data"` }
PortVarContainer structure represents PORT_VAR_CONTAINER RPC structure.
The PORT_VAR_CONTAINER structure provides information for supported printer port monitors.<5>
func (*PortVarContainer) MarshalNDR ¶
func (*PortVarContainer) UnmarshalNDR ¶
type PrintNamedProperty ¶
type PrintNamedProperty struct { // propertyName: A pointer to a string containing the name of the property. PropertyName string `idl:"name:propertyName;string" json:"property_name"` // propertyValue: An RPC_PrintPropertyValue structure (section 2.2.1.14.1) containing // the value of the property. PropertyValue *PrintPropertyValue `idl:"name:propertyValue" json:"property_value"` }
PrintNamedProperty structure represents RPC_PrintNamedProperty RPC structure.
The RPC_PrintNamedProperty structure specifies a Job Named Property (section 3.1.1).<81>
func (*PrintNamedProperty) MarshalNDR ¶
func (*PrintNamedProperty) UnmarshalNDR ¶
type PrintPropertyType ¶
type PrintPropertyType uint16
PrintPropertyType type represents RPC_EPrintPropertyType RPC enumeration.
The RPC_EPrintPropertyType enumeration specifies the type of the value contained by a Job Named Property (section 3.1.1).<82>
var ( // kRpcPropertyTypeString: The property value is a string. PrintPropertyTypeString PrintPropertyType = 1 // kRpcPropertyTypeInt32: The property value is a signed 32-bit integer. PrintPropertyTypeInt32 PrintPropertyType = 2 // kRpcPropertyTypeInt64: The property value is a signed 64-bit integer. PrintPropertyTypeInt64 PrintPropertyType = 3 // kRpcPropertyTypeByte: The property value is a byte. PrintPropertyTypeByte PrintPropertyType = 4 // kRpcPropertyTypeBuffer: The property value consists of an array of bytes contained // in a buffer. PrintPropertyTypeBuffer PrintPropertyType = 5 )
func (PrintPropertyType) String ¶
func (o PrintPropertyType) String() string
type PrintPropertyValue ¶
type PrintPropertyValue struct { // ePropertyType: The type of the value. All enumeration values specified in section // 2.2.1.14.3 are valid. PropertyType PrintPropertyType `idl:"name:ePropertyType" json:"property_type"` Value *PrintPropertyValue_Value `idl:"name:value;switch_is:ePropertyType" json:"value"` }
PrintPropertyValue structure represents RPC_PrintPropertyValue RPC structure.
The RPC_PrintPropertyValue structure specifies the value of a Job Named Property (section 3.1.1).<80>
func (*PrintPropertyValue) MarshalNDR ¶
func (*PrintPropertyValue) UnmarshalNDR ¶
type PrintPropertyValue_PropertyBlob ¶
type PrintPropertyValue_PropertyBlob struct { // propertyBlob: An embedded structure that describes the buffer containing the property // value as an array of bytes. Valid only if ePropertyType is set to kRpcPropertyTypeBuffer. PropertyBlob *PrintPropertyValue_Value_PropertyBlob `idl:"name:propertyBlob" json:"property_blob"` }
PrintPropertyValue_PropertyBlob structure represents PrintPropertyValue_Value RPC union arm.
It has following labels: 5
func (*PrintPropertyValue_PropertyBlob) MarshalNDR ¶
func (*PrintPropertyValue_PropertyBlob) UnmarshalNDR ¶
type PrintPropertyValue_PropertyByte ¶
type PrintPropertyValue_PropertyByte struct { // propertyByte: The property value as a byte. Valid only if ePropertyType is set to // kRpcPropertyTypeByte. PropertyByte uint8 `idl:"name:propertyByte" json:"property_byte"` }
PrintPropertyValue_PropertyByte structure represents PrintPropertyValue_Value RPC union arm.
It has following labels: 4
func (*PrintPropertyValue_PropertyByte) MarshalNDR ¶
func (*PrintPropertyValue_PropertyByte) UnmarshalNDR ¶
type PrintPropertyValue_PropertyInt32 ¶
type PrintPropertyValue_PropertyInt32 struct { // propertyInt32: The property value as a signed 32-bit integer. Valid only if ePropertyType // is set to kRpcPropertyTypeInt32. PropertyInt32 int32 `idl:"name:propertyInt32" json:"property_int32"` }
PrintPropertyValue_PropertyInt32 structure represents PrintPropertyValue_Value RPC union arm.
It has following labels: 2
func (*PrintPropertyValue_PropertyInt32) MarshalNDR ¶
func (*PrintPropertyValue_PropertyInt32) UnmarshalNDR ¶
type PrintPropertyValue_PropertyInt64 ¶
type PrintPropertyValue_PropertyInt64 struct { // propertyInt64: The property value as a signed 64-bit integer. Valid only if ePropertyType // is set to kRpcPropertyTypeInt64. PropertyInt64 int64 `idl:"name:propertyInt64" json:"property_int64"` }
PrintPropertyValue_PropertyInt64 structure represents PrintPropertyValue_Value RPC union arm.
It has following labels: 3
func (*PrintPropertyValue_PropertyInt64) MarshalNDR ¶
func (*PrintPropertyValue_PropertyInt64) UnmarshalNDR ¶
type PrintPropertyValue_PropertyString ¶
type PrintPropertyValue_PropertyString struct { // propertyString: A pointer to a string containing the property value. Valid only if // ePropertyType is set to kRpcPropertyTypeString. PropertyString string `idl:"name:propertyString;string" json:"property_string"` }
PrintPropertyValue_PropertyString structure represents PrintPropertyValue_Value RPC union arm.
It has following labels: 1
func (*PrintPropertyValue_PropertyString) MarshalNDR ¶
func (*PrintPropertyValue_PropertyString) UnmarshalNDR ¶
type PrintPropertyValue_Value ¶
type PrintPropertyValue_Value struct { // Types that are assignable to Value // // *PrintPropertyValue_PropertyString // *PrintPropertyValue_PropertyInt32 // *PrintPropertyValue_PropertyInt64 // *PrintPropertyValue_PropertyByte // *PrintPropertyValue_PropertyBlob Value is_PrintPropertyValue_Value `json:"value"` }
PrintPropertyValue_Value structure represents RPC_PrintPropertyValue union anonymous member.
The RPC_PrintPropertyValue structure specifies the value of a Job Named Property (section 3.1.1).<80>
func (*PrintPropertyValue_Value) GetValue ¶
func (o *PrintPropertyValue_Value) GetValue() any
func (*PrintPropertyValue_Value) MarshalUnionNDR ¶
func (*PrintPropertyValue_Value) NDRSwitchValue ¶
func (o *PrintPropertyValue_Value) NDRSwitchValue(sw uint16) uint16
func (*PrintPropertyValue_Value) UnmarshalUnionNDR ¶
type PrintPropertyValue_Value_PropertyBlob ¶
type PrintPropertyValue_Value_PropertyBlob struct { // cbBuf: Member of the propertyBlob structure that specifies the length, in bytes, // of the property value contained in the pBuf buffer when ePropertyType is set to kRpcPropertyTypeBuffer. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` // pBuf: Member of the propertyBlob structure that contains a pointer to the buffer // containing the property value when ePropertyType is set to kRpcPropertyTypeBuffer. Buffer []byte `idl:"name:pBuf;size_is:(cbBuf)" json:"buffer"` }
PrintPropertyValue_Value_PropertyBlob structure represents RPC_PrintPropertyValue structure anonymous member.
The RPC_PrintPropertyValue structure specifies the value of a Job Named Property (section 3.1.1).<80>
func (*PrintPropertyValue_Value_PropertyBlob) MarshalNDR ¶
func (*PrintPropertyValue_Value_PropertyBlob) UnmarshalNDR ¶
type Printer ¶
type Printer dcetypes.ContextHandle
Printer structure represents PRINTER_HANDLE RPC structure.
func (*Printer) ContextHandle ¶
func (o *Printer) ContextHandle() *dcetypes.ContextHandle
type PrinterContainer ¶
type PrinterContainer struct { // Level: Specifies the information level of the PrinterInfo data. The value of this // member MUST be in the range 0x00000000 to 0x00000009 inclusive. Level uint32 `idl:"name:Level" json:"level"` // PrinterInfo: Provides printer information using a container structure that corresponds // to the value specified by the Level member. PrinterInfo *PrinterContainer_PrinterInfo `idl:"name:PrinterInfo;switch_is:Level" json:"printer_info"` }
PrinterContainer structure represents PRINTER_CONTAINER RPC structure.
The PRINTER_CONTAINER structure provides information about printer properties and state information, using PRINTER_INFO structures (section 2.2.1.10). The PrinterInfo member specifies the structure that defines the printer properties.
func (*PrinterContainer) MarshalNDR ¶
func (*PrinterContainer) UnmarshalNDR ¶
type PrinterContainer_PrinterInfo ¶
type PrinterContainer_PrinterInfo struct { // Types that are assignable to Value // // *PrinterContainer_PrinterInfo_PrinterInfoStress // *PrinterContainer_PrinterInfo_PrinterInfo1 // *PrinterContainer_PrinterInfo_PrinterInfo2 // *PrinterContainer_PrinterInfo_PrinterInfo3 // *PrinterContainer_PrinterInfo_PrinterInfo4 // *PrinterContainer_PrinterInfo_PrinterInfo5 // *PrinterContainer_PrinterInfo_PrinterInfo6 // *PrinterContainer_PrinterInfo_PrinterInfo7 // *PrinterContainer_PrinterInfo_PrinterInfo8 // *PrinterContainer_PrinterInfo_PrinterInfo9 Value is_PrinterContainer_PrinterInfo `json:"value"` }
PrinterContainer_PrinterInfo structure represents PRINTER_CONTAINER union anonymous member.
The PRINTER_CONTAINER structure provides information about printer properties and state information, using PRINTER_INFO structures (section 2.2.1.10). The PrinterInfo member specifies the structure that defines the printer properties.
func (*PrinterContainer_PrinterInfo) GetValue ¶
func (o *PrinterContainer_PrinterInfo) GetValue() any
func (*PrinterContainer_PrinterInfo) MarshalUnionNDR ¶
func (*PrinterContainer_PrinterInfo) NDRSwitchValue ¶
func (o *PrinterContainer_PrinterInfo) NDRSwitchValue(sw uint32) uint32
func (*PrinterContainer_PrinterInfo) UnmarshalUnionNDR ¶
type PrinterContainer_PrinterInfo_PrinterInfo1 ¶
type PrinterContainer_PrinterInfo_PrinterInfo1 struct { // pPrinterInfo1: If the Level member is 0x00000001, this member is a pointer to a PRINTER_INFO_1 // (section 2.2.1.10.2) structure, which provides printer information. PrinterInfo1 *PrinterInfo1 `idl:"name:pPrinterInfo1" json:"printer_info1"` }
PrinterContainer_PrinterInfo_PrinterInfo1 structure represents PrinterContainer_PrinterInfo RPC union arm.
It has following labels: 1
func (*PrinterContainer_PrinterInfo_PrinterInfo1) MarshalNDR ¶
func (*PrinterContainer_PrinterInfo_PrinterInfo1) UnmarshalNDR ¶
type PrinterContainer_PrinterInfo_PrinterInfo2 ¶
type PrinterContainer_PrinterInfo_PrinterInfo2 struct { // pPrinterInfo2:If the Level member is 0x00000002, this member is a pointer to a PRINTER_INFO_2 // (section 2.2.1.10.3) structure, which provides detailed printer information. PrinterInfo2 *PrinterInfo2 `idl:"name:pPrinterInfo2" json:"printer_info2"` }
PrinterContainer_PrinterInfo_PrinterInfo2 structure represents PrinterContainer_PrinterInfo RPC union arm.
It has following labels: 2
func (*PrinterContainer_PrinterInfo_PrinterInfo2) MarshalNDR ¶
func (*PrinterContainer_PrinterInfo_PrinterInfo2) UnmarshalNDR ¶
type PrinterContainer_PrinterInfo_PrinterInfo3 ¶
type PrinterContainer_PrinterInfo_PrinterInfo3 struct { // pPrinterInfo3: If the Level member is 0x00000003, this member is a pointer to a PRINTER_INFO_3 // (section 2.2.1.10.4) structure, which provides printer security information. PrinterInfo3 *PrinterInfo3 `idl:"name:pPrinterInfo3" json:"printer_info3"` }
PrinterContainer_PrinterInfo_PrinterInfo3 structure represents PrinterContainer_PrinterInfo RPC union arm.
It has following labels: 3
func (*PrinterContainer_PrinterInfo_PrinterInfo3) MarshalNDR ¶
func (*PrinterContainer_PrinterInfo_PrinterInfo3) UnmarshalNDR ¶
type PrinterContainer_PrinterInfo_PrinterInfo4 ¶
type PrinterContainer_PrinterInfo_PrinterInfo4 struct { // pPrinterInfo4: If the Level member is 0x00000004, this member is a pointer to a PRINTER_INFO_4 // (section 2.2.1.10.5) structure, which provides a subset of the printer information. PrinterInfo4 *PrinterInfo4 `idl:"name:pPrinterInfo4" json:"printer_info4"` }
PrinterContainer_PrinterInfo_PrinterInfo4 structure represents PrinterContainer_PrinterInfo RPC union arm.
It has following labels: 4
func (*PrinterContainer_PrinterInfo_PrinterInfo4) MarshalNDR ¶
func (*PrinterContainer_PrinterInfo_PrinterInfo4) UnmarshalNDR ¶
type PrinterContainer_PrinterInfo_PrinterInfo5 ¶
type PrinterContainer_PrinterInfo_PrinterInfo5 struct { // pPrinterInfo5: If the Level member is 0x00000005, this member is a pointer to a PRINTER_INFO_5 // (section 2.2.1.10.6) structure, which provides information about the printer attributes. PrinterInfo5 *PrinterInfo5 `idl:"name:pPrinterInfo5" json:"printer_info5"` }
PrinterContainer_PrinterInfo_PrinterInfo5 structure represents PrinterContainer_PrinterInfo RPC union arm.
It has following labels: 5
func (*PrinterContainer_PrinterInfo_PrinterInfo5) MarshalNDR ¶
func (*PrinterContainer_PrinterInfo_PrinterInfo5) UnmarshalNDR ¶
type PrinterContainer_PrinterInfo_PrinterInfo6 ¶
type PrinterContainer_PrinterInfo_PrinterInfo6 struct { // pPrinterInfo6: If the Level member is 0x00000006, this member is a pointer to a PRINTER_INFO_6 // (section 2.2.1.10.7) structure, which provides information about the status of the // printer. PrinterInfo6 *PrinterInfo6 `idl:"name:pPrinterInfo6" json:"printer_info6"` }
PrinterContainer_PrinterInfo_PrinterInfo6 structure represents PrinterContainer_PrinterInfo RPC union arm.
It has following labels: 6
func (*PrinterContainer_PrinterInfo_PrinterInfo6) MarshalNDR ¶
func (*PrinterContainer_PrinterInfo_PrinterInfo6) UnmarshalNDR ¶
type PrinterContainer_PrinterInfo_PrinterInfo7 ¶
type PrinterContainer_PrinterInfo_PrinterInfo7 struct { // pPrinterInfo7: If the Level member is 0x00000007, this member is a pointer to a PRINTER_INFO_7 // (section 2.2.1.10.8) structure, which provides directory service (DS) information. PrinterInfo7 *PrinterInfo7 `idl:"name:pPrinterInfo7" json:"printer_info7"` }
PrinterContainer_PrinterInfo_PrinterInfo7 structure represents PrinterContainer_PrinterInfo RPC union arm.
It has following labels: 7
func (*PrinterContainer_PrinterInfo_PrinterInfo7) MarshalNDR ¶
func (*PrinterContainer_PrinterInfo_PrinterInfo7) UnmarshalNDR ¶
type PrinterContainer_PrinterInfo_PrinterInfo8 ¶
type PrinterContainer_PrinterInfo_PrinterInfo8 struct { // pPrinterInfo8: If the Level member is 0x00000008, this member is a pointer to a PRINTER_INFO_8 // (section 2.2.1.10.9) structure, which provides information about the global printer // driver settings for a printer. PrinterInfo8 *PrinterInfo8 `idl:"name:pPrinterInfo8" json:"printer_info8"` }
PrinterContainer_PrinterInfo_PrinterInfo8 structure represents PrinterContainer_PrinterInfo RPC union arm.
It has following labels: 8
func (*PrinterContainer_PrinterInfo_PrinterInfo8) MarshalNDR ¶
func (*PrinterContainer_PrinterInfo_PrinterInfo8) UnmarshalNDR ¶
type PrinterContainer_PrinterInfo_PrinterInfo9 ¶
type PrinterContainer_PrinterInfo_PrinterInfo9 struct { // pPrinterInfo9: If the Level member is 0x00000009, this member is a pointer to a PRINTER_INFO_9 // (section 2.2.1.10.10) structure. The PRINTER_INFO_9 structure is not used remotely, // but it is included in this structure to yield a compatible IDL file. The print server // MUST respond with ERROR_NOT_SUPPORTED if it receives a PRINTER_CONTAINER structure // with a Level value equal to 0x00000009. PrinterInfo9 *PrinterInfo9 `idl:"name:pPrinterInfo9" json:"printer_info9"` }
PrinterContainer_PrinterInfo_PrinterInfo9 structure represents PrinterContainer_PrinterInfo RPC union arm.
It has following labels: 9
func (*PrinterContainer_PrinterInfo_PrinterInfo9) MarshalNDR ¶
func (*PrinterContainer_PrinterInfo_PrinterInfo9) UnmarshalNDR ¶
type PrinterContainer_PrinterInfo_PrinterInfoStress ¶
type PrinterContainer_PrinterInfo_PrinterInfoStress struct { // pPrinterInfoStress: If the Level member is 0x00000000, this member is a pointer to // a PRINTER_INFO_STRESS structure (section 2.2.1.10.1), which provides diagnostic printer // information. PrinterInfoStress *PrinterInfoStress `idl:"name:pPrinterInfoStress" json:"printer_info_stress"` }
PrinterContainer_PrinterInfo_PrinterInfoStress structure represents PrinterContainer_PrinterInfo RPC union arm.
It has following labels: 0
func (*PrinterContainer_PrinterInfo_PrinterInfoStress) MarshalNDR ¶
func (*PrinterContainer_PrinterInfo_PrinterInfoStress) UnmarshalNDR ¶
type PrinterInfo1 ¶
type PrinterInfo1 struct { // Flags: The value of this member MUST be the result of a bitwise OR of zero or more // of the Printer Enumeration Flags (section 2.2.3.7). Flags uint32 `idl:"name:Flags" json:"flags"` Description string `idl:"name:pDescription;string" json:"description"` // pName: This member is synonymous with pPrinterName (section 3.1.4.1.5). // // All members not defined in this section are specified in sections 2.2.1.3.6 and 2.2.1.3. Name string `idl:"name:pName;string" json:"name"` Comment string `idl:"name:pComment;string" json:"comment"` }
PrinterInfo1 structure represents PRINTER_INFO_1 RPC structure.
The PRINTER_INFO_1 structure provides information about a printer.
The _PRINTER_INFO_1 structure specifies printer information. It is a custom-marshaled form of the _PRINTER_INFO_1 (section 2.2.1.10.2) structure. See _PRINTER_INFO_1 for the definition of Flags.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
func (*PrinterInfo1) MarshalNDR ¶
func (*PrinterInfo1) UnmarshalNDR ¶
type PrinterInfo2 ¶
type PrinterInfo2 struct { ServerName string `idl:"name:pServerName;string" json:"server_name"` PrinterName string `idl:"name:pPrinterName;string" json:"printer_name"` // pShareName: An optional pointer to a string that specifies the share name for the // printer. This string MUST be ignored unless the Attributes member contains the PRINTER_ATTRIBUTE_SHARED // flag. For rules governing path names, see section 2.2.4.9. PortName string `idl:"name:pPortName;string" json:"port_name"` // pDriverName: This member is a pointer to a string that specifies the name of the // printer driver. For rules governing printer driver names, see section 2.2.4.3. DriverName string `idl:"name:pDriverName;string" json:"driver_name"` Comment string `idl:"name:pComment;string" json:"comment"` // pLocation: An optional pointer to a string that specifies the location of the printer. Location string `idl:"name:pLocation;string" json:"location"` DevMode uint64 `idl:"name:pDevMode" json:"dev_mode"` // pSepFile: An optional pointer to a string that specifies the name of a file whose // contents are used to create a separator page. This page is used to separate print // jobs sent to the printer. For rules governing path names, see section 2.2.4.9. SepFile string `idl:"name:pSepFile;string" json:"sep_file"` // pPrintProcessor: An optional pointer to a string that specifies the name of the print // processor used by the printer. For rules governing print processor names, see section // 2.2.4.11. PrintProcessor string `idl:"name:pPrintProcessor;string" json:"print_processor"` // pDatatype: An optional pointer to a string that specifies the default data format // used to record print jobs on the printer. For rules governing data type names, see // section 2.2.4.2. DataType string `idl:"name:pDatatype;string" json:"data_type"` // pParameters: An optional pointer to a string that specifies the default print processor // parameters. Parameters string `idl:"name:pParameters;string" json:"parameters"` SecurityDescriptor uint64 `idl:"name:pSecurityDescriptor" json:"security_descriptor"` Attributes uint32 `idl:"name:Attributes" json:"attributes"` // Priority: The value of this member specifies a priority value that the spooler uses // to route each print job. The value of this member MUST be from 0 through 99, inclusive. Priority uint32 `idl:"name:Priority" json:"priority"` // DefaultPriority: The value of this member specifies the default priority value assigned // to each print job. The value of this member MUST be from 0 through 99, inclusive. DefaultPriority uint32 `idl:"name:DefaultPriority" json:"default_priority"` // StartTime: The value of this member specifies the earliest time that a job can be // printed. The time is expressed as the number of minutes after 12:00 AM GMT within // a 24-hour boundary. StartTime uint32 `idl:"name:StartTime" json:"start_time"` // UntilTime: The value of this member specifies the latest time that a job can be printed. // The time is expressed as the number of minutes after 12:00 AM GMT within a 24-hour // boundary. UntilTime uint32 `idl:"name:UntilTime" json:"until_time"` Status uint32 `idl:"name:Status" json:"status"` // cJobs: The value of this member specifies the number of print jobs that have been // queued for the printer. JobsCount uint32 `idl:"name:cJobs" json:"jobs_count"` // AveragePPM: The value of this member specifies the average pages per minute that // have been printed on the printer. // // All members not defined in this section are specified in sections 2.2.1.3.6 and 2.2.1.3. AveragePpm uint32 `idl:"name:AveragePPM" json:"average_ppm"` }
PrinterInfo2 structure represents PRINTER_INFO_2 RPC structure.
The _PRINTER_INFO_2 structure specifies printer information. It is a custom-marshaled form of the _PRINTER_INFO_2 (section 2.2.1.10.3) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
The PRINTER_INFO_2 structure provides information about a printer.
func (*PrinterInfo2) MarshalNDR ¶
func (*PrinterInfo2) UnmarshalNDR ¶
type PrinterInfo3 ¶
type PrinterInfo3 struct {
SecurityDescriptor uint64 `idl:"name:pSecurityDescriptor" json:"security_descriptor"`
}
PrinterInfo3 structure represents PRINTER_INFO_3 RPC structure.
The PRINTER_INFO_3 structure provides information about a printer.
All members not defined in this section are specified in sections 2.2.1.3.6 and 2.2.1.3.
The _PRINTER_INFO_3 structure specifies printer information. It is a custom-marshaled form of the _PRINTER_INFO_3 (section 2.2.1.10.4) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
func (*PrinterInfo3) MarshalNDR ¶
func (*PrinterInfo3) UnmarshalNDR ¶
type PrinterInfo4 ¶
type PrinterInfo4 struct { PrinterName string `idl:"name:pPrinterName;string" json:"printer_name"` ServerName string `idl:"name:pServerName;string" json:"server_name"` Attributes uint32 `idl:"name:Attributes" json:"attributes"` }
PrinterInfo4 structure represents PRINTER_INFO_4 RPC structure.
The PRINTER_INFO_4 structure provides information about a printer.<59>
All members not defined in this section are specified in sections 2.2.1.3.6 and 2.2.1.3.
The _PRINTER_INFO_4 structure specifies printer information.<127> It is a custom-marshaled form of the _PRINTER_INFO_4 (section 2.2.1.10.5) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
func (*PrinterInfo4) MarshalNDR ¶
func (*PrinterInfo4) UnmarshalNDR ¶
type PrinterInfo5 ¶
type PrinterInfo5 struct { PrinterName string `idl:"name:pPrinterName;string" json:"printer_name"` PortName string `idl:"name:pPortName;string" json:"port_name"` Attributes uint32 `idl:"name:Attributes" json:"attributes"` // DeviceNotSelectedTimeout: The maximum number of milliseconds between select attempts. // The DeviceNotSelectedTimeout value controls communication between the print server // and a print device. It does not have any effect on communication between the print // client and the print server. DeviceNotSelectedTimeout uint32 `idl:"name:DeviceNotSelectedTimeout" json:"device_not_selected_timeout"` // TransmissionRetryTimeout: The maximum number of milliseconds between retransmission // attempts. The TransmissionRetryTimeout value controls communication between the print // server and a print device. It does not have any effect on communication between the // print client and the print server. // // All members not defined in this section are specified in sections 2.2.1.3.6 and 2.2.1.3. TransmissionRetryTimeout uint32 `idl:"name:TransmissionRetryTimeout" json:"transmission_retry_timeout"` }
PrinterInfo5 structure represents PRINTER_INFO_5 RPC structure.
The _PRINTER_INFO_5 structure specifies printer information.<128> It is a custom-marshaled form of the _PRINTER_INFO_5 (section 2.2.1.10.6) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
The PRINTER_INFO_5 structure provides information about a printer.<60>
func (*PrinterInfo5) MarshalNDR ¶
func (*PrinterInfo5) UnmarshalNDR ¶
type PrinterInfo6 ¶
type PrinterInfo6 struct { // dwStatus: The printer status. It MUST be the result of a bitwise OR of zero or more // of the printer status values defined in section 2.2.3.12. // // All members not defined in this section are specified in sections 2.2.1.3.6 and 2.2.1.3. Status uint32 `idl:"name:dwStatus" json:"status"` }
PrinterInfo6 structure represents PRINTER_INFO_6 RPC structure.
The PRINTER_INFO_6 structure provides information about a printer.<61>
The _PRINTER_INFO_6 structure specifies printer information.<129> It is a custom-marshaled form of the _PRINTER_INFO_6 (section 2.2.1.10.7) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
func (*PrinterInfo6) MarshalNDR ¶
func (*PrinterInfo6) UnmarshalNDR ¶
type PrinterInfo7 ¶
type PrinterInfo7 struct { // pszObjectGUID: A pointer to a curly braced GUID string that specifies the GUID used // by the DS to identify this printer, if it is used in a response to RpcGetPrinter // (section 3.1.4.2.6). The string MUST conform to the curly braced GUID string format // ([MS-DTYP] section 2.3.4.3). ObjectGUID string `idl:"name:pszObjectGUID;string" json:"object_guid"` // dwAction: An action for the printer to perform if it used by the client in a call // to RpcSetPrinter. // // The value of this member represents a DS-specific publishing state by the server // if it is used in a response to RpcGetPrinter. // // The value of this member MUST be a constant from the following table: // // +------------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +------------------------------+----------------------------------------------------------------------------------+ // +------------------------------+----------------------------------------------------------------------------------+ // | DSPRINT_PUBLISH 0x00000001 | RpcSetPrinter: The server MUST publish the printer's data in the DS (section | // | | 2.3.3.1). RpcGetPrinter: The server MUST set this value to indicate the printer | // | | is published in the DS. | // +------------------------------+----------------------------------------------------------------------------------+ // | DSPRINT_UPDATE 0x00000002 | RpcSetPrinter: The server MUST update the printer's published data in the DS | // | | (section 2.3.3.2). RpcGetPrinter: This value MUST NOT be returned by the server. | // +------------------------------+----------------------------------------------------------------------------------+ // | DSPRINT_UNPUBLISH 0x00000004 | RpcSetPrinter: The server MUST remove the printer's published data from the DS | // | | (section 2.3.3.2). RpcGetPrinter: The server MUST set this value to indicate the | // | | printer is not published. | // +------------------------------+----------------------------------------------------------------------------------+ // | DSPRINT_REPUBLISH 0x00000008 | RpcSetPrinter: The server MUST unpublish (section 2.3.3.2) and publish again | // | | (section 2.3.3.1) the DS data for the printer. Republishing also MUST change | // | | the GUID of the published printer. RpcGetPrinter: The server MUST NOT set this | // | | value. | // +------------------------------+----------------------------------------------------------------------------------+ // | DSPRINT_PENDING 0x80000000 | RpcSetPrinter: This value MUST NOT be used by the client. RpcGetPrinter: | // | | The server MUST return this value, if a previous publish or unpublish action | // | | initiated by RpcSetPrinter is still in progress. | // +------------------------------+----------------------------------------------------------------------------------+ // // All members not defined in this section are specified in sections 2.2.1.3.6 and 2.2.1.3. Action uint32 `idl:"name:dwAction" json:"action"` }
PrinterInfo7 structure represents PRINTER_INFO_7 RPC structure.
The _PRINTER_INFO_7 structure specifies printer information.<130> It is a custom-marshaled form of the _PRINTER_INFO_7 (section 2.2.1.10.8) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
The PRINTER_INFO_7 structure provides directory service (DS) information about a printer.<62>
func (*PrinterInfo7) MarshalNDR ¶
func (*PrinterInfo7) UnmarshalNDR ¶
type PrinterInfo8 ¶
type PrinterInfo8 struct {
DevMode uint64 `idl:"name:pDevMode" json:"dev_mode"`
}
PrinterInfo8 structure represents PRINTER_INFO_8 RPC structure.
The _PRINTER_INFO_8 structure specifies printer information.<131> It is a custom-marshaled form of the _PRINTER_INFO_8 (section 2.2.1.10.9) structure.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
The PRINTER_INFO_8 structure provides information about a printer.<63>
This structure is used for the global default settings of a printer.
All members not defined in this section are specified in sections 2.2.1.3.6 and 2.2.1.3.
func (*PrinterInfo8) MarshalNDR ¶
func (*PrinterInfo8) UnmarshalNDR ¶
type PrinterInfo9 ¶
type PrinterInfo9 struct {
DevMode uint64 `idl:"name:pDevMode" json:"dev_mode"`
}
PrinterInfo9 structure represents PRINTER_INFO_9 RPC structure.
The PRINTER_INFO_9 structure is not used remotely.<64>
func (*PrinterInfo9) MarshalNDR ¶
func (*PrinterInfo9) UnmarshalNDR ¶
type PrinterInfoStress ¶
type PrinterInfoStress struct { PrinterName string `idl:"name:pPrinterName;string" json:"printer_name"` ServerName string `idl:"name:pServerName;string" json:"server_name"` // cJobs: The number of jobs that are currently in the print queue. JobsCount uint32 `idl:"name:cJobs" json:"jobs_count"` // cTotalJobs: The total number of jobs that have been spooled since the print server // was started. TotalJobsCount uint32 `idl:"name:cTotalJobs" json:"total_jobs_count"` // cTotalBytes: The low-order 32 bits of an unsigned 64-bit value that specifies the // total number of bytes that have been printed since system startup. The high-order // 32 bits are specified by the dwHighPartTotalBytes member. TotalBytesCount uint32 `idl:"name:cTotalBytes" json:"total_bytes_count"` // stUpTime: The time the printer data structure was created, in SYSTEMTIME format ([MS-DTYP] // section 2.3.13). UpTime *dtyp.SystemTime `idl:"name:stUpTime" json:"up_time"` // MaxcRef: The historic maximum value of the cRef member. MaxcReference uint32 `idl:"name:MaxcRef" json:"maxc_reference"` // cTotalPagesPrinted: The total number of pages printed. TotalPagesPrintedCount uint32 `idl:"name:cTotalPagesPrinted" json:"total_pages_printed_count"` // dwGetVersion: An implementation-specific value that specifies the version of the // operating system.<52> GetVersion uint32 `idl:"name:dwGetVersion" json:"get_version"` // fFreeBuild: An implementation-specific value that MUST be ignored on receipt.<53> FreeBuild uint32 `idl:"name:fFreeBuild" json:"free_build"` // cSpooling: The number of actively spooling jobs. SpoolingCount uint32 `idl:"name:cSpooling" json:"spooling_count"` // cMaxSpooling: The historic maximum number of actively spooling jobs. MaxSpoolingCount uint32 `idl:"name:cMaxSpooling" json:"max_spooling_count"` // cRef: The reference count for opened printer objects. ReferenceCount uint32 `idl:"name:cRef" json:"reference_count"` // cErrorOutOfPaper: The total number of out-of-paper errors. ErrorOutOfPaperCount uint32 `idl:"name:cErrorOutOfPaper" json:"error_out_of_paper_count"` // cErrorNotReady: The total number of not-ready errors. ErrorNotReadyCount uint32 `idl:"name:cErrorNotReady" json:"error_not_ready_count"` // cJobError: The total number of job errors. JobErrorCount uint32 `idl:"name:cJobError" json:"job_error_count"` // dwNumberOfProcessors: The number of processors in the computer on which the print // server is running. NumberOfProcessors uint32 `idl:"name:dwNumberOfProcessors" json:"number_of_processors"` // dwProcessorType: An implementation-specific value that identifies the type of processor // in the computer.<54> ProcessorType uint32 `idl:"name:dwProcessorType" json:"processor_type"` // dwHighPartTotalBytes: The high-order 32 bits of an unsigned 64-bit value that specifies // the total number of bytes that have been printed since system startup. The low-order // 32 bits are specified by the cTotalBytes member. HighPartTotalBytes uint32 `idl:"name:dwHighPartTotalBytes" json:"high_part_total_bytes"` // cChangeID: A unique number that identifies the last change. ChangeIDCount uint32 `idl:"name:cChangeID" json:"change_id_count"` // dwLastError: An implementation-specific error code for the last error that occurred // with this printer.<55> LastError uint32 `idl:"name:dwLastError" json:"last_error"` // Status: The current printer status (section 2.2.3.12). Status uint32 `idl:"name:Status" json:"status"` // cEnumerateNetworkPrinters: The number of times the network printers in the "List // of Known Printers" have been requested. EnumerateNetworkPrintersCount uint32 `idl:"name:cEnumerateNetworkPrinters" json:"enumerate_network_printers_count"` // cAddNetPrinters: The number of network printers added, per server. AddNetPrintersCount uint32 `idl:"name:cAddNetPrinters" json:"add_net_printers_count"` // wProcessorArchitecture: An implementation-specific value that identifies the system's // processor architecture. This value SHOULD be ignored on receipt.<56> ProcessorArchitecture uint16 `idl:"name:wProcessorArchitecture" json:"processor_architecture"` // wProcessorLevel: An implementation-specific value that identifies the system's architecture-dependent // processor level. This value SHOULD be ignored on receipt.<57> ProcessorLevel uint16 `idl:"name:wProcessorLevel" json:"processor_level"` // cRefIC: The number of open information context handles. // // All members not defined in this section are specified in sections 2.2.1.3.6 and 2.2.1.3. ReferenceICCount uint32 `idl:"name:cRefIC" json:"reference_ic_count"` // contains filtered or unexported fields }
PrinterInfoStress structure represents PRINTER_INFO_STRESS RPC structure.
The PRINTER_INFO_STRESS structure provides diagnostic printer information used for print system remote protocol stress analysis.<51>
The _PRINTER_INFO_STRESS structure specifies printer diagnostic information.<120> It is a custom-marshaled form of the _PRINTER_INFO_STRESS (section 2.2.1.10.1) structure. This form of the _PRINTER_INFO_STRESS structure corresponds to an information Level value of 0x00000000.
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 2 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 3 | 1 | | | | | | | | | | | | 0 | | | | | | | | | | 0 | | | | | | | | | | 0 | | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Fixed_Portion (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | Variable_Data (variable) | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ | ... | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
func (*PrinterInfoStress) MarshalNDR ¶
func (*PrinterInfoStress) UnmarshalNDR ¶
type ReadPrinterRequest ¶
type ReadPrinterRequest struct { // hPrinter: A handle to a job object or port object that was opened by RpcOpenPrinter // (section 3.1.4.2.2) or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // cbBuf: The size, in bytes, of data to be read into the buffer that is pointed to // by the pBuf parameter. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
ReadPrinterRequest structure represents the RpcReadPrinter operation request
func (*ReadPrinterRequest) MarshalNDR ¶
func (*ReadPrinterRequest) UnmarshalNDR ¶
type ReadPrinterResponse ¶
type ReadPrinterResponse struct { // pBuf: A pointer to a buffer that receives the printer data. If the hPrinter parameter // is the handle to a port object, this method returns the data that is returned by // the port monitor. Buffer []byte `idl:"name:pBuf;size_is:(cbBuf)" json:"buffer"` // pcNoBytesRead: A pointer to a variable that receives the number of bytes of data // copied into the array to which pBuf points. NoBytesReadCount uint32 `idl:"name:pcNoBytesRead" json:"no_bytes_read_count"` // Return: The RpcReadPrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
ReadPrinterResponse structure represents the RpcReadPrinter operation response
func (*ReadPrinterResponse) MarshalNDR ¶
func (*ReadPrinterResponse) UnmarshalNDR ¶
type Rectangle ¶
type Rectangle struct { // left: The x-coordinate of the upper-left corner of the rectangle relative to the // left edge of the form. This value MUST be an integer greater than or equal to 0 and // it MUST be smaller than or equal to the 'right'. Left int32 `idl:"name:left" json:"left"` // top: The y-coordinate of the upper-left corner of the rectangle relative to the top // edge of the form. This value MUST be an integer greater than or equal to 0 and it // MUST be smaller than or equal to the 'bottom'. Top int32 `idl:"name:top" json:"top"` // right: The x-coordinate of the lower-right corner of the rectangle relative to the // left edge of the form. This value MUST be greater than or equal to 'left'. Right int32 `idl:"name:right" json:"right"` // bottom: The y-coordinate of the lower-right corner of the rectangle relative to the // top edge of the form. This value MUST be greater than or equal to 'top'. Bottom int32 `idl:"name:bottom" json:"bottom"` }
Rectangle structure represents RECTL RPC structure.
The RECTL structure defines a rectangle on a form, with two (x,y) coordinates in 1/1000 millimeter units.
func (*Rectangle) MarshalNDR ¶
type RegeneratePrintDeviceCapabilitiesRequest ¶
type RegeneratePrintDeviceCapabilitiesRequest struct {
Printer *Printer `idl:"name:hPrinter" json:"printer"`
}
RegeneratePrintDeviceCapabilitiesRequest structure represents the RpcRegeneratePrintDeviceCapabilities operation request
func (*RegeneratePrintDeviceCapabilitiesRequest) MarshalNDR ¶
func (*RegeneratePrintDeviceCapabilitiesRequest) UnmarshalNDR ¶
type RegeneratePrintDeviceCapabilitiesResponse ¶
type RegeneratePrintDeviceCapabilitiesResponse struct { // Return: The RpcRegeneratePrintDeviceCapabilities return value. Return uint32 `idl:"name:Return" json:"return"` }
RegeneratePrintDeviceCapabilitiesResponse structure represents the RpcRegeneratePrintDeviceCapabilities operation response
func (*RegeneratePrintDeviceCapabilitiesResponse) MarshalNDR ¶
func (*RegeneratePrintDeviceCapabilitiesResponse) UnmarshalNDR ¶
type RemoteFindFirstPrinterChangeNotificationExRequest ¶
type RemoteFindFirstPrinterChangeNotificationExRequest struct { // hPrinter: A handle to a printer or server object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // fdwFlags: Flags that specify the conditions that are required for a change notification // object to enter a signaled state. A change notification MUST occur when one or more // of the specified conditions are met. Flags uint32 `idl:"name:fdwFlags" json:"flags"` // fdwOptions: The category of printers for which change notifications are returned. // This parameter MUST be one of the supported values specified in Printer Notification // Values (section 2.2.3.8). Options uint32 `idl:"name:fdwOptions" json:"options"` // pszLocalMachine: A pointer to a string that represents the name of the client computer. // The rules governing server names are specified in section 2.2.4.16. LocalMachine string `idl:"name:pszLocalMachine;string;pointer:unique" json:"local_machine"` // dwPrinterLocal: An implementation-specific unique value that MUST be sufficient for // the client to determine whether a call to RpcReplyOpenPrinter (section 3.2.4.1.1) // by the server is associated with the hPrinter parameter in this call.<382> PrinterLocal uint32 `idl:"name:dwPrinterLocal" json:"printer_local"` NotifyOptions *V2NotifyOptions `idl:"name:pNotifyOptions;pointer:unique" json:"notify_options"` }
RemoteFindFirstPrinterChangeNotificationExRequest structure represents the RpcRemoteFindFirstPrinterChangeNotificationEx operation request
func (*RemoteFindFirstPrinterChangeNotificationExRequest) MarshalNDR ¶
func (*RemoteFindFirstPrinterChangeNotificationExRequest) UnmarshalNDR ¶
type RemoteFindFirstPrinterChangeNotificationExResponse ¶
type RemoteFindFirstPrinterChangeNotificationExResponse struct { // Return: The RpcRemoteFindFirstPrinterChangeNotificationEx return value. Return uint32 `idl:"name:Return" json:"return"` }
RemoteFindFirstPrinterChangeNotificationExResponse structure represents the RpcRemoteFindFirstPrinterChangeNotificationEx operation response
func (*RemoteFindFirstPrinterChangeNotificationExResponse) MarshalNDR ¶
func (*RemoteFindFirstPrinterChangeNotificationExResponse) UnmarshalNDR ¶
type RemoteFindFirstPrinterChangeNotificationRequest ¶
type RemoteFindFirstPrinterChangeNotificationRequest struct { // hPrinter: A handle to a printer or server object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // fdwFlags: Flags that specify the conditions that are required for a change notification // object to enter a signaled state. A change notification MUST occur when one or more // of the specified conditions are met. Flags uint32 `idl:"name:fdwFlags" json:"flags"` // fdwOptions: The category of printers for which change notifications are returned. // This parameter MUST be one of the supported values specified in Printer Notification // Values (section 2.2.3.8). Options uint32 `idl:"name:fdwOptions" json:"options"` // pszLocalMachine: A pointer to a string that represents the name of the client computer. // The rules governing server names are specified in section 2.2.4.16. LocalMachine string `idl:"name:pszLocalMachine;string;pointer:unique" json:"local_machine"` // dwPrinterLocal: An implementation-specific unique value that MUST be sufficient for // the client to determine whether a call to RpcReplyOpenPrinter (section 3.2.4.1.1) // by the server is associated with the hPrinter parameter in this call.<381> PrinterLocal uint32 `idl:"name:dwPrinterLocal" json:"printer_local"` // cbBuffer: A value that SHOULD be set to zero when sent and MUST be ignored on receipt. BufferLength uint32 `idl:"name:cbBuffer" json:"buffer_length"` // pBuffer: A pointer that MUST be set to NULL when sent and MUST be ignored on receipt. Buffer []byte `idl:"name:pBuffer;size_is:(cbBuffer);pointer:unique" json:"buffer"` }
RemoteFindFirstPrinterChangeNotificationRequest structure represents the RpcRemoteFindFirstPrinterChangeNotification operation request
func (*RemoteFindFirstPrinterChangeNotificationRequest) MarshalNDR ¶
func (*RemoteFindFirstPrinterChangeNotificationRequest) UnmarshalNDR ¶
type RemoteFindFirstPrinterChangeNotificationResponse ¶
type RemoteFindFirstPrinterChangeNotificationResponse struct { // pBuffer: A pointer that MUST be set to NULL when sent and MUST be ignored on receipt. Buffer []byte `idl:"name:pBuffer;size_is:(cbBuffer);pointer:unique" json:"buffer"` // Return: The RpcRemoteFindFirstPrinterChangeNotification return value. Return uint32 `idl:"name:Return" json:"return"` }
RemoteFindFirstPrinterChangeNotificationResponse structure represents the RpcRemoteFindFirstPrinterChangeNotification operation response
func (*RemoteFindFirstPrinterChangeNotificationResponse) MarshalNDR ¶
func (*RemoteFindFirstPrinterChangeNotificationResponse) UnmarshalNDR ¶
type ReplyClosePrinterRequest ¶
type ReplyClosePrinterRequest struct { // phNotify: A pointer to the notification context handle to close that was opened by // RpcReplyOpenPrinter (section 3.2.4.1.1). Notify *Printer `idl:"name:phNotify" json:"notify"` }
ReplyClosePrinterRequest structure represents the RpcReplyClosePrinter operation request
func (*ReplyClosePrinterRequest) MarshalNDR ¶
func (*ReplyClosePrinterRequest) UnmarshalNDR ¶
type ReplyClosePrinterResponse ¶
type ReplyClosePrinterResponse struct { // phNotify: A pointer to the notification context handle to close that was opened by // RpcReplyOpenPrinter (section 3.2.4.1.1). Notify *Printer `idl:"name:phNotify" json:"notify"` // Return: The RpcReplyClosePrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
ReplyClosePrinterResponse structure represents the RpcReplyClosePrinter operation response
func (*ReplyClosePrinterResponse) MarshalNDR ¶
func (*ReplyClosePrinterResponse) UnmarshalNDR ¶
type ReplyOpenPrinterRequest ¶
type ReplyOpenPrinterRequest struct { // pMachine: A string that specifies the print client computer name. It is synonymous // with pName, as specified in Print Server Name Parameters (section 3.1.4.1.4). Machine string `idl:"name:pMachine;string" json:"machine"` // dwPrinterRemote: A value that is supplied to the server by the dwPrinterLocal parameter // of a corresponding call to RpcRemoteFindFirstPrinterChangeNotification (section 3.1.4.10.3) // or RpcRemoteFindFirstPrinterChangeNotificationEx (section 3.1.4.10.4). This value // MUST NOT be zero. PrinterRemote uint32 `idl:"name:dwPrinterRemote" json:"printer_remote"` // dwType: A value that MUST be 0x00000001. Type uint32 `idl:"name:dwType" json:"type"` // cbBuffer: A value that SHOULD be set to zero when sent and MUST be ignored on receipt. BufferLength uint32 `idl:"name:cbBuffer" json:"buffer_length"` // pBuffer: A pointer that SHOULD be set to NULL when sent and MUST be ignored on receipt. Buffer []byte `idl:"name:pBuffer;size_is:(cbBuffer);pointer:unique" json:"buffer"` }
ReplyOpenPrinterRequest structure represents the RpcReplyOpenPrinter operation request
func (*ReplyOpenPrinterRequest) MarshalNDR ¶
func (*ReplyOpenPrinterRequest) UnmarshalNDR ¶
type ReplyOpenPrinterResponse ¶
type ReplyOpenPrinterResponse struct { // phPrinterNotify: A pointer to a remote printer RPC context handle that is used by // a print server to send notifications to a print client. RPC context handles are specified // in [C706]. PrinterNotify *Printer `idl:"name:phPrinterNotify" json:"printer_notify"` // Return: The RpcReplyOpenPrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
ReplyOpenPrinterResponse structure represents the RpcReplyOpenPrinter operation response
func (*ReplyOpenPrinterResponse) MarshalNDR ¶
func (*ReplyOpenPrinterResponse) UnmarshalNDR ¶
type ResetPrinterRequest ¶
type ResetPrinterRequest struct { // hPrinter: A handle to a printer object that was opened by RpcAddPrinter (section // 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), // or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pDatatype: A parameter specified in Datatype Name Parameters (section 3.1.4.1.1). DataType string `idl:"name:pDatatype;string;pointer:unique" json:"data_type"` // pDevModeContainer: A parameter specified in DEVMODE_CONTAINER Parameters. DevModeContainer *DevModeContainer `idl:"name:pDevModeContainer" json:"dev_mode_container"` }
ResetPrinterRequest structure represents the RpcResetPrinter operation request
func (*ResetPrinterRequest) MarshalNDR ¶
func (*ResetPrinterRequest) UnmarshalNDR ¶
type ResetPrinterResponse ¶
type ResetPrinterResponse struct { // Return: The RpcResetPrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
ResetPrinterResponse structure represents the RpcResetPrinter operation response
func (*ResetPrinterResponse) MarshalNDR ¶
func (*ResetPrinterResponse) UnmarshalNDR ¶
type RouterRefreshPrinterChangeNotificationRequest ¶
type RouterRefreshPrinterChangeNotificationRequest struct { // hPrinter: A handle to a printer object or server object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // dwColor: An implementation-specific value that MAY be used by print clients to get // an indication of the order of notifications.<384> Color uint32 `idl:"name:dwColor" json:"color"` Out *V2NotifyOptions `idl:"name:out;pointer:unique" json:"out"` }
RouterRefreshPrinterChangeNotificationRequest structure represents the RpcRouterRefreshPrinterChangeNotification operation request
func (*RouterRefreshPrinterChangeNotificationRequest) MarshalNDR ¶
func (*RouterRefreshPrinterChangeNotificationRequest) UnmarshalNDR ¶
type RouterRefreshPrinterChangeNotificationResponse ¶
type RouterRefreshPrinterChangeNotificationResponse struct { // Return: The RpcRouterRefreshPrinterChangeNotification return value. Return uint32 `idl:"name:Return" json:"return"` }
RouterRefreshPrinterChangeNotificationResponse structure represents the RpcRouterRefreshPrinterChangeNotification operation response
func (*RouterRefreshPrinterChangeNotificationResponse) MarshalNDR ¶
func (*RouterRefreshPrinterChangeNotificationResponse) UnmarshalNDR ¶
type RouterReplyPrinterExRequest ¶
type RouterReplyPrinterExRequest struct { // hNotify: A notification RPC context handle that was opened by RpcReplyOpenPrinter // (section 3.2.4.1.1). Notify *Printer `idl:"name:hNotify" json:"notify"` // dwColor: The value that was most recently specified by the client in the dwColor // parameter of a call to RpcRouterRefreshPrinterChangeNotification (section 3.1.4.10.5). Color uint32 `idl:"name:dwColor" json:"color"` // fdwFlags: A value that contains Printer Change Flags (section 2.2.3.6), which indicate // changes in printer configuration values. Flags uint32 `idl:"name:fdwFlags" json:"flags"` // dwReplyType: A value that MUST be zero. ReplyType uint32 `idl:"name:dwReplyType" json:"reply_type"` // Reply: A pointer to an RPC_V2_UREPLY_PRINTER union, which contains a pointer to an // RPC_V2_NOTIFY_INFO structure, which contains available notification data that matched // the set of notifications that the client previously requested. Reply *V2ReplyPrinter `idl:"name:Reply;switch_is:dwReplyType" json:"reply"` }
RouterReplyPrinterExRequest structure represents the RpcRouterReplyPrinterEx operation request
func (*RouterReplyPrinterExRequest) MarshalNDR ¶
func (*RouterReplyPrinterExRequest) UnmarshalNDR ¶
type RouterReplyPrinterExResponse ¶
type RouterReplyPrinterExResponse struct { // pdwResult: A pointer to a value that contains Change Notification Flags (section // 2.2.3.2), which indicate how the client processed the notification. Result uint32 `idl:"name:pdwResult" json:"result"` // Return: The RpcRouterReplyPrinterEx return value. Return uint32 `idl:"name:Return" json:"return"` }
RouterReplyPrinterExResponse structure represents the RpcRouterReplyPrinterEx operation response
func (*RouterReplyPrinterExResponse) MarshalNDR ¶
func (*RouterReplyPrinterExResponse) UnmarshalNDR ¶
type RouterReplyPrinterRequest ¶
type RouterReplyPrinterRequest struct { // hNotify: A notification handle that was opened by the server using RpcReplyOpenPrinter // (section 3.2.4.1.1). Notify *Printer `idl:"name:hNotify" json:"notify"` // fdwFlags: A value that contains Printer Change Flags (section 2.2.3.6), which indicate // changes in printer configuration values. Flags uint32 `idl:"name:fdwFlags" json:"flags"` // cbBuffer: A value that SHOULD be set to zero when sent and MUST be ignored on receipt. BufferLength uint32 `idl:"name:cbBuffer" json:"buffer_length"` // pBuffer: A pointer that SHOULD be set to NULL when sent and MUST be ignored on receipt. Buffer []byte `idl:"name:pBuffer;size_is:(cbBuffer);pointer:unique" json:"buffer"` }
RouterReplyPrinterRequest structure represents the RpcRouterReplyPrinter operation request
func (*RouterReplyPrinterRequest) MarshalNDR ¶
func (*RouterReplyPrinterRequest) UnmarshalNDR ¶
type RouterReplyPrinterResponse ¶
type RouterReplyPrinterResponse struct { // Return: The RpcRouterReplyPrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
RouterReplyPrinterResponse structure represents the RpcRouterReplyPrinter operation response
func (*RouterReplyPrinterResponse) MarshalNDR ¶
func (*RouterReplyPrinterResponse) UnmarshalNDR ¶
type ScheduleJobRequest ¶
type ScheduleJobRequest struct { // hPrinter: A handle to a printer object that was opened using RpcAddPrinter, RpcAddPrinterEx, // RpcOpenPrinter, or RpcOpenPrinterEx. Printer *Printer `idl:"name:hPrinter" json:"printer"` // JobId: The identifier of the print job. JobID uint32 `idl:"name:JobId" json:"job_id"` }
ScheduleJobRequest structure represents the RpcScheduleJob operation request
func (*ScheduleJobRequest) MarshalNDR ¶
func (*ScheduleJobRequest) UnmarshalNDR ¶
type ScheduleJobResponse ¶
type ScheduleJobResponse struct { // Return: The RpcScheduleJob return value. Return uint32 `idl:"name:Return" json:"return"` }
ScheduleJobResponse structure represents the RpcScheduleJob operation response
func (*ScheduleJobResponse) MarshalNDR ¶
func (*ScheduleJobResponse) UnmarshalNDR ¶
type SecurityContainer ¶
type SecurityContainer struct { // cbBuf: The size, in bytes, of the buffer that is pointed to by the pSecurity member. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` // pSecurity: An optional pointer to a self-relative SECURITY_DESCRIPTOR structure. Security []byte `idl:"name:pSecurity;size_is:(cbBuf);pointer:unique" json:"security"` }
SecurityContainer structure represents SECURITY_CONTAINER RPC structure.
The SECURITY_CONTAINER structure specifies a SECURITY_DESCRIPTOR structure ([MS-DTYP] section 2.4.6), which contains security information.
func (*SecurityContainer) MarshalNDR ¶
func (*SecurityContainer) UnmarshalNDR ¶
type SendRecvBIDIDataRequest ¶
type SendRecvBIDIDataRequest struct { // hPrinter: A handle to a printer object or port object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pAction: A pointer to a string that specifies an action to take. The following actions // SHOULD be supported.<318>, <319> Port monitors MAY support additional, implementation-specific // action strings. // // +-------------------------------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +-------------------------------------------------+----------------------------------------------------------------------------------+ // +-------------------------------------------------+----------------------------------------------------------------------------------+ // | BIDI_ACTION_ENUM_SCHEMA "EnumSchema" | The method MUST enumerate the supported schemas. The pReqData parameter MUST be | // | | ignored. The method MUST store one or more values that correspond to supported | // | | schema entries in the buffer that is pointed to by the ppRespData parameter. | // +-------------------------------------------------+----------------------------------------------------------------------------------+ // | BIDI_ACTION_GET "Get" | The method MUST return the specific value item requested. The pReqData parameter | // | | specifies a single value entry in the schema. The method MUST store the value of | // | | that entry in the buffer that is pointed to by the ppRespData parameter. | // +-------------------------------------------------+----------------------------------------------------------------------------------+ // | BIDI_ACTION_SET "Set" | The method MUST store the supplied data in a single value item in the schema. | // | | The pReqData parameter specifies a single value entry for the schema and the new | // | | value to be stored there. This action MUST NOT change the contents of the buffer | // | | that is pointed to by the ppRespData parameter. | // +-------------------------------------------------+----------------------------------------------------------------------------------+ // | BIDI_ACTION_GET_ALL "GetAll" | The method MUST return one or more value items that are reachable from the | // | | requested schema item. The pReqData parameter specifies an entry in the schema, | // | | which is either a value item or an inner schema entry. The action MUST store | // | | one or more value entries, and their associated values, in the buffer that is | // | | pointed to by the ppRespData parameter. | // +-------------------------------------------------+----------------------------------------------------------------------------------+ // | BIDI_ACTION_GET_WITH_ARGUMENT "GetWithArgument" | The method MUST return one or more value items that are reachable from the | // | | requested schema item. The pReqData parameter specifies an entry in the schema, | // | | which is either a value item or an inner schema entry, and a data value to | // | | be used when processing the request. The action MUST store one or more value | // | | entries, and their associated values, in the buffer that is pointed to by the | // | | ppRespData parameter. | // +-------------------------------------------------+----------------------------------------------------------------------------------+ Action string `idl:"name:pAction;string;pointer:unique" json:"action"` // pReqData: A pointer to an RPC_BIDI_REQUEST_CONTAINER (section 2.2.1.2.10) structure // that contains the requested binary data. RequestData *BIDIRequestContainer `idl:"name:pReqData" json:"request_data"` }
SendRecvBIDIDataRequest structure represents the RpcSendRecvBidiData operation request
func (*SendRecvBIDIDataRequest) MarshalNDR ¶
func (*SendRecvBIDIDataRequest) UnmarshalNDR ¶
type SendRecvBIDIDataResponse ¶
type SendRecvBIDIDataResponse struct { // ppRespData: A pointer to a variable that receives a pointer to a RPC_BIDI_RESPONSE_CONTAINER // (section 2.2.1.2.11) structure that contains the response binary data. ResponseData *BIDIResponseContainer `idl:"name:ppRespData" json:"response_data"` // Return: The RpcSendRecvBidiData return value. Return uint32 `idl:"name:Return" json:"return"` }
SendRecvBIDIDataResponse structure represents the RpcSendRecvBidiData operation response
func (*SendRecvBIDIDataResponse) MarshalNDR ¶
func (*SendRecvBIDIDataResponse) UnmarshalNDR ¶
type SetFormRequest ¶
type SetFormRequest struct { // hPrinter: A handle to a printer object or server object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pFormName: A pointer to a string that specifies the form name on which the form information // is set. For rules governing form names, see section 2.2.4.5. FormName string `idl:"name:pFormName;string" json:"form_name"` // pFormInfoContainer: A parameter specified in FORM_CONTAINER Parameters, section 3.1.4.1.8.4. FormInfoContainer *FormContainer `idl:"name:pFormInfoContainer" json:"form_info_container"` }
SetFormRequest structure represents the RpcSetForm operation request
func (*SetFormRequest) MarshalNDR ¶
func (*SetFormRequest) UnmarshalNDR ¶
type SetFormResponse ¶
type SetFormResponse struct { // Return: The RpcSetForm return value. Return uint32 `idl:"name:Return" json:"return"` }
SetFormResponse structure represents the RpcSetForm operation response
func (*SetFormResponse) MarshalNDR ¶
func (*SetFormResponse) UnmarshalNDR ¶
type SetJobAttributesRequest ¶
type SetJobAttributesRequest struct { Printer *Printer `idl:"name:hPrinter" json:"printer"` JobID uint32 `idl:"name:jobId" json:"job_id"` JobAttributeGroupBufferSize uint32 `idl:"name:jobAttributeGroupBufferSize" json:"job_attribute_group_buffer_size"` JobAttributeGroupBuffer []byte `idl:"name:jobAttributeGroupBuffer;size_is:(jobAttributeGroupBufferSize)" json:"job_attribute_group_buffer"` }
SetJobAttributesRequest structure represents the RpcIppSetJobAttributes operation request
func (*SetJobAttributesRequest) MarshalNDR ¶
func (*SetJobAttributesRequest) UnmarshalNDR ¶
type SetJobAttributesResponse ¶
type SetJobAttributesResponse struct { ResponseBufferSize uint32 `idl:"name:ippResponseBufferSize;pointer:ref" json:"response_buffer_size"` ResponseBuffer []byte `idl:"name:ippResponseBuffer;size_is:(, ippResponseBufferSize);pointer:ref" json:"response_buffer"` // Return: The RpcIppSetJobAttributes return value. Return int32 `idl:"name:Return" json:"return"` }
SetJobAttributesResponse structure represents the RpcIppSetJobAttributes operation response
func (*SetJobAttributesResponse) MarshalNDR ¶
func (*SetJobAttributesResponse) UnmarshalNDR ¶
type SetJobNamedPropertyRequest ¶
type SetJobNamedPropertyRequest struct { // hPrinter: A PRINTER_HANDLE (section 2.2.1.1.4) to a printer object, job object, or // server object that was opened by RpcAddPrinter (section 3.1.4.2.3), RpcAddPrinterEx // (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), or RpcOpenPrinterEx (section // 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // JobId: The identifier of a print job. This value MUST NOT be zero. JobID uint32 `idl:"name:JobId" json:"job_id"` // pProperty: A pointer to an RPC_PrintNamedProperty (section 2.2.1.14.2) structure // specifies the property to be created if it does not exist for the print job specified // by the JobId parameter, or update an existing property with a new value. This pointer // MUST NOT be NULL. Property *PrintNamedProperty `idl:"name:pProperty" json:"property"` }
SetJobNamedPropertyRequest structure represents the RpcSetJobNamedProperty operation request
func (*SetJobNamedPropertyRequest) MarshalNDR ¶
func (*SetJobNamedPropertyRequest) UnmarshalNDR ¶
type SetJobNamedPropertyResponse ¶
type SetJobNamedPropertyResponse struct { // Return: The RpcSetJobNamedProperty return value. Return uint32 `idl:"name:Return" json:"return"` }
SetJobNamedPropertyResponse structure represents the RpcSetJobNamedProperty operation response
func (*SetJobNamedPropertyResponse) MarshalNDR ¶
func (*SetJobNamedPropertyResponse) UnmarshalNDR ¶
type SetJobRequest ¶
type SetJobRequest struct { // hPrinter: A PRINTER_HANDLE (section 2.2.1.1.4) to a printer object, job object, or // server object that was opened by RpcAddPrinter (section 3.1.4.2.3), RpcAddPrinterEx // (section 3.1.4.2.15), RpcOpenPrinter (section 3.1.4.2.2), or RpcOpenPrinterEx (section // 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // JobId: The identifier of the print job. This value MUST NOT be zero. JobID uint32 `idl:"name:JobId" json:"job_id"` // pJobContainer: An optional pointer to a JOB_CONTAINER (section 2.2.1.2.5) that specifies // the parameters to set on the job object. JobContainer *JobContainer `idl:"name:pJobContainer;pointer:unique" json:"job_container"` // Command: A Job Control Value (section 2.2.4.6) that specifies an action. This value // MUST be one of the following job control actions: // // +------------------------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +------------------------------------------+----------------------------------------------------------------------------------+ // +------------------------------------------+----------------------------------------------------------------------------------+ // | 0x00000000 | Perform no additional action. | // +------------------------------------------+----------------------------------------------------------------------------------+ // | JOB_CONTROL_PAUSE 0x00000001 | Pause the print job. | // +------------------------------------------+----------------------------------------------------------------------------------+ // | JOB_CONTROL_RESUME 0x00000002 | Resume a paused print job. | // +------------------------------------------+----------------------------------------------------------------------------------+ // | JOB_CONTROL_CANCEL 0x00000003 | Delete a print job.<321> | // +------------------------------------------+----------------------------------------------------------------------------------+ // | JOB_CONTROL_RESTART 0x00000004 | Restart a print job. | // +------------------------------------------+----------------------------------------------------------------------------------+ // | JOB_CONTROL_DELETE 0x00000005 | Delete a print job.<322> | // +------------------------------------------+----------------------------------------------------------------------------------+ // | JOB_CONTROL_SENT_TO_PRINTER 0x00000006 | Used by port monitors to signal that a print job has been sent to the printer. | // | | This value SHOULD NOT be used remotely. | // +------------------------------------------+----------------------------------------------------------------------------------+ // | JOB_CONTROL_LAST_PAGE_EJECTED 0x00000007 | Used by language monitors to signal that the last page of a print job has been | // | | ejected from the printer. This value SHOULD NOT be used remotely. | // +------------------------------------------+----------------------------------------------------------------------------------+ // | JOB_CONTROL_RETAIN 0x00000008 | Keep the print job in the print queue after it prints. | // +------------------------------------------+----------------------------------------------------------------------------------+ // | JOB_CONTROL_RELEASE 0x00000009 | Release the print job, undoing the effect of a JOB_CONTROL_RETAIN action. | // +------------------------------------------+----------------------------------------------------------------------------------+ Command uint32 `idl:"name:Command" json:"command"` }
SetJobRequest structure represents the RpcSetJob operation request
func (*SetJobRequest) MarshalNDR ¶
func (*SetJobRequest) UnmarshalNDR ¶
type SetJobResponse ¶
type SetJobResponse struct { // Return: The RpcSetJob return value. Return uint32 `idl:"name:Return" json:"return"` }
SetJobResponse structure represents the RpcSetJob operation response
func (*SetJobResponse) MarshalNDR ¶
func (*SetJobResponse) UnmarshalNDR ¶
type SetPortRequest ¶
type SetPortRequest struct { // pName: A parameter that adheres to the specification in Print Server Name Parameters // (section 3.1.4.1.4). Name string `idl:"name:pName;string;pointer:unique" json:"name"` // pPortName: A pointer to a string that specifies the name of the printer port. For // rules governing port names, see section 2.2.4.10. PortName string `idl:"name:pPortName;string;pointer:unique" json:"port_name"` // pPortContainer: A parameter that adheres to the specification in PORT_CONTAINER Parameters // (section 3.1.4.1.8.5). The level as specified in the Level member of the PORT_CONTAINER // structure MUST be 0x00000003. PortContainer *PortContainer `idl:"name:pPortContainer" json:"port_container"` }
SetPortRequest structure represents the RpcSetPort operation request
func (*SetPortRequest) MarshalNDR ¶
func (*SetPortRequest) UnmarshalNDR ¶
type SetPortResponse ¶
type SetPortResponse struct { // Return: The RpcSetPort return value. Return uint32 `idl:"name:Return" json:"return"` }
SetPortResponse structure represents the RpcSetPort operation response
func (*SetPortResponse) MarshalNDR ¶
func (*SetPortResponse) UnmarshalNDR ¶
type SetPrinterAttributesRequest ¶
type SetPrinterAttributesRequest struct { Printer *Printer `idl:"name:hPrinter" json:"printer"` JobAttributeGroupBufferSize uint32 `idl:"name:jobAttributeGroupBufferSize" json:"job_attribute_group_buffer_size"` JobAttributeGroupBuffer []byte `idl:"name:jobAttributeGroupBuffer;size_is:(jobAttributeGroupBufferSize)" json:"job_attribute_group_buffer"` }
SetPrinterAttributesRequest structure represents the RpcIppSetPrinterAttributes operation request
func (*SetPrinterAttributesRequest) MarshalNDR ¶
func (*SetPrinterAttributesRequest) UnmarshalNDR ¶
type SetPrinterAttributesResponse ¶
type SetPrinterAttributesResponse struct { ResponseBufferSize uint32 `idl:"name:ippResponseBufferSize;pointer:ref" json:"response_buffer_size"` ResponseBuffer []byte `idl:"name:ippResponseBuffer;size_is:(, ippResponseBufferSize);pointer:ref" json:"response_buffer"` // Return: The RpcIppSetPrinterAttributes return value. Return int32 `idl:"name:Return" json:"return"` }
SetPrinterAttributesResponse structure represents the RpcIppSetPrinterAttributes operation response
func (*SetPrinterAttributesResponse) MarshalNDR ¶
func (*SetPrinterAttributesResponse) UnmarshalNDR ¶
type SetPrinterDataExRequest ¶
type SetPrinterDataExRequest struct { // hPrinter: A handle to a printer object or server object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pKeyName: A pointer to a string that specifies the key under which the value is to // be set. A key name is an arbitrary string defined by the printer driver associated // with the printer object. For rules governing key names, see section 2.2.4.7. KeyName string `idl:"name:pKeyName;string" json:"key_name"` // pValueName: A pointer to a string that identifies the data to set. For rules governing // value names, see section 2.2.4.18. // // For print servers, a value name is one of the predefined strings listed in Server // Handle Key Values (section 2.2.3.10). ValueName string `idl:"name:pValueName;string" json:"value_name"` // Type: A code that indicates the type of data that is pointed to by the pData parameter. // The value SHOULD be one of the possible type codes defined by type values in section // 2.2.3.9. For rules governing registry type values, see section 2.2.4.15. Type uint32 `idl:"name:Type" json:"type"` // pData: A pointer to an array of bytes that contain the printer configuration data. // The type of the data in the buffer is specified by the Type parameter. Data []byte `idl:"name:pData;size_is:(cbData)" json:"data"` // cbData: The size, in bytes, of the pData array. This value SHOULD NOT be zero. DataLength uint32 `idl:"name:cbData" json:"data_length"` }
SetPrinterDataExRequest structure represents the RpcSetPrinterDataEx operation request
func (*SetPrinterDataExRequest) MarshalNDR ¶
func (*SetPrinterDataExRequest) UnmarshalNDR ¶
type SetPrinterDataExResponse ¶
type SetPrinterDataExResponse struct { // Return: The RpcSetPrinterDataEx return value. Return uint32 `idl:"name:Return" json:"return"` }
SetPrinterDataExResponse structure represents the RpcSetPrinterDataEx operation response
func (*SetPrinterDataExResponse) MarshalNDR ¶
func (*SetPrinterDataExResponse) UnmarshalNDR ¶
type SetPrinterDataRequest ¶
type SetPrinterDataRequest struct { // hPrinter: A handle to a printer object or server object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pValueName: A pointer to a string that identifies the configuration data to set. // For rules governing value names, see section 2.2.4.18. // // For print servers, the value name is one of the predefined strings listed in Server // Handle Key Values (section 2.2.3.10). ValueName string `idl:"name:pValueName;string" json:"value_name"` // Type: The type value for data pointed to by the pData parameter. This value SHOULD // be one of the type codes defined in section 2.2.3.9. For rules governing registry // type values, see section 2.2.4.15. Type uint32 `idl:"name:Type" json:"type"` // pData: A pointer to an array of bytes that contain the printer configuration data. // The type of the data in the buffer is specified by the Type parameter. Data []byte `idl:"name:pData;size_is:(cbData)" json:"data"` // cbData: The size, in bytes, of the pData array. This value SHOULD NOT be zero. DataLength uint32 `idl:"name:cbData" json:"data_length"` }
SetPrinterDataRequest structure represents the RpcSetPrinterData operation request
func (*SetPrinterDataRequest) MarshalNDR ¶
func (*SetPrinterDataRequest) UnmarshalNDR ¶
type SetPrinterDataResponse ¶
type SetPrinterDataResponse struct { // Return: The RpcSetPrinterData return value. Return uint32 `idl:"name:Return" json:"return"` }
SetPrinterDataResponse structure represents the RpcSetPrinterData operation response
func (*SetPrinterDataResponse) MarshalNDR ¶
func (*SetPrinterDataResponse) UnmarshalNDR ¶
type SetPrinterRequest ¶
type SetPrinterRequest struct { // hPrinter: A handle to a printer object or server object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pPrinterContainer: A parameter specified in PRINTER_CONTAINER Parameters (section // 3.1.4.1.8.6). If the Command is 0, the Level member of the PRINTER_CONTAINER MUST // be 0x00000000 or a number from 0x00000002 to 0x00000007. If the Command parameter // is 1, 2, or 3, the Level member of the PRINTER_CONTAINER MUST be 0x00000000. PrinterContainer *PrinterContainer `idl:"name:pPrinterContainer" json:"printer_container"` // pDevModeContainer: A parameter specified in DEVMODE_CONTAINER Parameters (section // 3.1.4.1.8.1). DevModeContainer *DevModeContainer `idl:"name:pDevModeContainer" json:"dev_mode_container"` // pSecurityContainer: A parameter specified in SECURITY_CONTAINER Parameters (section // 3.1.4.1.8.7). SecurityContainer *SecurityContainer `idl:"name:pSecurityContainer" json:"security_container"` // Command: A value that specifies an action to perform. If this value is non-zero, // it is one of the printer control values in the following table, and the Level member // of the PRINTER_CONTAINER (section 2.2.1.2.9) structure that is pointed to by the // pPrinterContainer parameter MUST be 0x00000000. // // +-----------------------------------+-------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +-----------------------------------+-------------------------------------------------------+ // +-----------------------------------+-------------------------------------------------------+ // | PRINTER_CONTROL_PAUSE 0x00000001 | Pauses the printer object. | // +-----------------------------------+-------------------------------------------------------+ // | PRINTER_CONTROL_RESUME 0x00000002 | Resumes a paused printer object. | // +-----------------------------------+-------------------------------------------------------+ // | PRINTER_CONTROL_PURGE 0x00000003 | Deletes all print jobs queued for the printer object. | // +-----------------------------------+-------------------------------------------------------+ Command uint32 `idl:"name:Command" json:"command"` }
SetPrinterRequest structure represents the RpcSetPrinter operation request
func (*SetPrinterRequest) MarshalNDR ¶
func (*SetPrinterRequest) UnmarshalNDR ¶
type SetPrinterResponse ¶
type SetPrinterResponse struct { // Return: The RpcSetPrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
SetPrinterResponse structure represents the RpcSetPrinter operation response
func (*SetPrinterResponse) MarshalNDR ¶
func (*SetPrinterResponse) UnmarshalNDR ¶
type Size ¶
type Size struct { // cx: The width, and it MUST be an integer greater than or equal to 0. X int32 `idl:"name:cx" json:"x"` // cy: The height, and it MUST be an integer greater than or equal to 0. Y int32 `idl:"name:cy" json:"y"` }
Size structure represents SIZE RPC structure.
The SIZE structure defines the area of a form, with a width and height in thousandth-of-a-millimeter units.
type StartDocPrinterRequest ¶
type StartDocPrinterRequest struct { // hPrinter: A handle to a printer object or port object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). The printer handle MUST NOT // be in use for printing another document at the time of this call. Printer *Printer `idl:"name:hPrinter" json:"printer"` // pDocInfoContainer: A parameter specified in DOC_INFO_CONTAINER Parameters (section // 3.1.4.1.8.2). DocInfoContainer *DocInfoContainer `idl:"name:pDocInfoContainer" json:"doc_info_container"` }
StartDocPrinterRequest structure represents the RpcStartDocPrinter operation request
func (*StartDocPrinterRequest) MarshalNDR ¶
func (*StartDocPrinterRequest) UnmarshalNDR ¶
type StartDocPrinterResponse ¶
type StartDocPrinterResponse struct { // pJobId: A pointer to a variable that receives a nonzero print job identifier. The // job MUST be created with an identifier that is unique for this printer. JobID uint32 `idl:"name:pJobId" json:"job_id"` // Return: The RpcStartDocPrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
StartDocPrinterResponse structure represents the RpcStartDocPrinter operation response
func (*StartDocPrinterResponse) MarshalNDR ¶
func (*StartDocPrinterResponse) UnmarshalNDR ¶
type StartPagePrinterRequest ¶
type StartPagePrinterRequest struct { // hPrinter: A handle to a printer object or port object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` }
StartPagePrinterRequest structure represents the RpcStartPagePrinter operation request
func (*StartPagePrinterRequest) MarshalNDR ¶
func (*StartPagePrinterRequest) UnmarshalNDR ¶
type StartPagePrinterResponse ¶
type StartPagePrinterResponse struct { // Return: The RpcStartPagePrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
StartPagePrinterResponse structure represents the RpcStartPagePrinter operation response
func (*StartPagePrinterResponse) MarshalNDR ¶
func (*StartPagePrinterResponse) UnmarshalNDR ¶
type StringContainer ¶
type StringContainer struct { // cbBuf: This member specifies the size, in bytes, of the buffer that is pointed to // by the pszString member. The value of this number MUST be an even number. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` // pszString: A pointer to a string. The string that is referenced by this member MUST // NOT be empty. String string `idl:"name:pszString;size_is:((cbBuf/2));pointer:unique" json:"string"` }
StringContainer structure represents STRING_CONTAINER RPC structure.
The STRING_CONTAINER structure contains a string.<10>
func (*StringContainer) MarshalNDR ¶
func (*StringContainer) UnmarshalNDR ¶
type SystemTimeContainer ¶
type SystemTimeContainer struct { // cbBuf: The size, in bytes, of the buffer that is pointed to by the pSystemTime member. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` // pSystemTime: A pointer to a SYSTEMTIME structure. SystemTime *dtyp.SystemTime `idl:"name:pSystemTime" json:"system_time"` }
SystemTimeContainer structure represents SYSTEMTIME_CONTAINER RPC structure.
The SYSTEMTIME_CONTAINER structure is a container for a SYSTEMTIME structure ([MS-DTYP] section 2.3.13) that specifies a date and time using individual members for the month, day, year, weekday, hour, minute, second, and millisecond.<11>
func (*SystemTimeContainer) MarshalNDR ¶
func (*SystemTimeContainer) UnmarshalNDR ¶
type V2NotifyInfo ¶
type V2NotifyInfo struct { // Version: The version of the structure. The value of this member MUST be 0x00000002. Version uint32 `idl:"name:Version" json:"version"` // Flags: A bit field that specifies the state of the notification structure. // // +------------------------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +------------------------------------------+----------------------------------------------------------------------------------+ // +------------------------------------------+----------------------------------------------------------------------------------+ // | PRINTER_NOTIFY_INFO_DISCARDED 0x00000001 | An overflow or error has occurred, and notifications have been lost. The print | // | | server MUST NOT send additional notifications until the client has made a call | // | | to RpcRouterRefreshPrinterChangeNotification (section 3.1.4.10.5). | // +------------------------------------------+----------------------------------------------------------------------------------+ Flags uint32 `idl:"name:Flags" json:"flags"` // Count: The number of RPC_V2_NOTIFY_INFO_DATA structures (section 2.2.1.13.4) in the // aData array. Count uint32 `idl:"name:Count" json:"count"` // aData: An array of RPC_V2_NOTIFY_INFO_DATA structures, each of which identifies a // single print job or printer information member and specifies the current data for // that member. Data []*V2NotifyInfoData `idl:"name:aData;size_is:(Count);pointer:unique" json:"data"` }
V2NotifyInfo structure represents RPC_V2_NOTIFY_INFO RPC structure.
The RPC_V2_NOTIFY_INFO structure specifies printer or print job notification information.<76>
func (*V2NotifyInfo) MarshalNDR ¶
func (*V2NotifyInfo) NDRSizeInfo ¶
func (o *V2NotifyInfo) NDRSizeInfo() []uint64
func (*V2NotifyInfo) UnmarshalNDR ¶
type V2NotifyInfoData ¶
type V2NotifyInfoData struct { // Type: The type of notification information that is contained in this structure. This // MUST be one of the following values: // // +----------------------------+-------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +----------------------------+-------------------------------+ // +----------------------------+-------------------------------+ // | PRINTER_NOTIFY_TYPE 0x0000 | Printer-related notifications | // +----------------------------+-------------------------------+ // | JOB_NOTIFY_TYPE 0x0001 | Job-related notifications | // +----------------------------+-------------------------------+ Type uint16 `idl:"name:Type" json:"type"` // Field: The member that changed using the printer notification values and job notification // values in sections 2.2.3.8 and 2.2.3.3. Field uint16 `idl:"name:Field" json:"field"` NotifyInfoDataType uint32 `idl:"name:NotifyInfoDataType" json:"notify_info_data_type"` // Id: The job identifier if the Type member specifies JOB_NOTIFY_TYPE; otherwise, this // value MUST be ignored. ID uint32 `idl:"name:Id" json:"id"` // Data: The data determined by the values of the Type and Reserved members of this // structure. The data is in an RPC_V2_NOTIFY_INFO_DATA_DATA structure using the data // type specified by the value of the Reserved member. Data *V2NotifyInfoDataData `idl:"name:Data;switch_is:(NotifyInfoDataType 65535 &)" json:"data"` }
V2NotifyInfoData structure represents RPC_V2_NOTIFY_INFO_DATA RPC structure.
The RPC_V2_NOTIFY_INFO_DATA structure specifies printer or print job notification information data.<77>
func (*V2NotifyInfoData) MarshalNDR ¶
func (*V2NotifyInfoData) UnmarshalNDR ¶
type V2NotifyInfoDataData ¶
type V2NotifyInfoDataData struct { // Types that are assignable to Value // // *V2NotifyInfoDataData_String // *V2NotifyInfoDataData_Data // *V2NotifyInfoDataData_SystemTime // *V2NotifyInfoDataData_DevMode // *V2NotifyInfoDataData_SecurityDescriptor Value is_V2NotifyInfoDataData `json:"value"` }
V2NotifyInfoDataData structure represents RPC_V2_NOTIFY_INFO_DATA_DATA RPC union.
func (*V2NotifyInfoDataData) GetValue ¶
func (o *V2NotifyInfoDataData) GetValue() any
func (*V2NotifyInfoDataData) MarshalUnionNDR ¶
func (*V2NotifyInfoDataData) NDRSwitchValue ¶
func (o *V2NotifyInfoDataData) NDRSwitchValue(sw uint32) uint32
func (*V2NotifyInfoDataData) UnmarshalUnionNDR ¶
type V2NotifyInfoDataData_Data ¶
type V2NotifyInfoDataData_Data struct {
Data []uint32 `idl:"name:dwData" json:"data"`
}
V2NotifyInfoDataData_Data structure represents RPC_V2_NOTIFY_INFO_DATA_DATA RPC union arm.
It has following labels: 1
func (*V2NotifyInfoDataData_Data) MarshalNDR ¶
func (*V2NotifyInfoDataData_Data) UnmarshalNDR ¶
type V2NotifyInfoDataData_DevMode ¶
type V2NotifyInfoDataData_DevMode struct {
DevMode *DevModeContainer `idl:"name:DevMode" json:"dev_mode"`
}
V2NotifyInfoDataData_DevMode structure represents RPC_V2_NOTIFY_INFO_DATA_DATA RPC union arm.
It has following labels: 3
func (*V2NotifyInfoDataData_DevMode) MarshalNDR ¶
func (*V2NotifyInfoDataData_DevMode) UnmarshalNDR ¶
type V2NotifyInfoDataData_SecurityDescriptor ¶
type V2NotifyInfoDataData_SecurityDescriptor struct {
SecurityDescriptor *SecurityContainer `idl:"name:SecurityDescriptor" json:"security_descriptor"`
}
V2NotifyInfoDataData_SecurityDescriptor structure represents RPC_V2_NOTIFY_INFO_DATA_DATA RPC union arm.
It has following labels: 5
func (*V2NotifyInfoDataData_SecurityDescriptor) MarshalNDR ¶
func (*V2NotifyInfoDataData_SecurityDescriptor) UnmarshalNDR ¶
type V2NotifyInfoDataData_String ¶
type V2NotifyInfoDataData_String struct {
String *StringContainer `idl:"name:String" json:"string"`
}
V2NotifyInfoDataData_String structure represents RPC_V2_NOTIFY_INFO_DATA_DATA RPC union arm.
It has following labels: 2
func (*V2NotifyInfoDataData_String) MarshalNDR ¶
func (*V2NotifyInfoDataData_String) UnmarshalNDR ¶
type V2NotifyInfoDataData_SystemTime ¶
type V2NotifyInfoDataData_SystemTime struct {
SystemTime *SystemTimeContainer `idl:"name:SystemTime" json:"system_time"`
}
V2NotifyInfoDataData_SystemTime structure represents RPC_V2_NOTIFY_INFO_DATA_DATA RPC union arm.
It has following labels: 4
func (*V2NotifyInfoDataData_SystemTime) MarshalNDR ¶
func (*V2NotifyInfoDataData_SystemTime) UnmarshalNDR ¶
type V2NotifyOptions ¶
type V2NotifyOptions struct { // Version: The version of the structure. The value of this member MUST be 0x00000002. Version uint32 `idl:"name:Version" json:"version"` // Count: The number of RPC_V2_NOTIFY_OPTIONS_TYPE structures (section 2.2.1.13.2) in // the array pointed to by the pTypes member. Count uint32 `idl:"name:Count" json:"count"` // pTypes: A pointer to an array of RPC_V2_NOTIFY_OPTIONS_TYPE structures, each of which // identifies a set of print job or printer information members to be monitored by a // printer change notification object. Types []*V2NotifyOptionsType `idl:"name:pTypes;size_is:(Count);pointer:unique" json:"types"` // contains filtered or unexported fields }
V2NotifyOptions structure represents RPC_V2_NOTIFY_OPTIONS RPC structure.
The RPC_V2_NOTIFY_OPTIONS structure specifies options for a change notification object that monitors a printer or print server for any changes in state.<73>
func (*V2NotifyOptions) MarshalNDR ¶
func (*V2NotifyOptions) UnmarshalNDR ¶
type V2NotifyOptionsType ¶
type V2NotifyOptionsType struct { // Type: The value of this member specifies the type of notification to watch for. The // value of this member MUST be one of the constant values from the following table. // // +----------------------------+----------------------------------------------------------------------------------+ // | | | // | NAME/VALUE | DESCRIPTION | // | | | // +----------------------------+----------------------------------------------------------------------------------+ // +----------------------------+----------------------------------------------------------------------------------+ // | PRINTER_NOTIFY_TYPE 0x0000 | Indicates that the members specified in the array that is pointed to by the | // | | pFields member are printer notification constants. | // +----------------------------+----------------------------------------------------------------------------------+ // | JOB_NOTIFY_TYPE 0x0001 | Indicates that the members specified in the array that is pointed to by the | // | | pFields member are job notification constants. | // +----------------------------+----------------------------------------------------------------------------------+ // | SERVER_NOTIFY_TYPE 0x0002 | Indicates that the members specified in the array that is pointed to by the | // | | pFields member are server notification constants.<75> | // +----------------------------+----------------------------------------------------------------------------------+ Type uint16 `idl:"name:Type" json:"type"` // Count: The number of elements in the pFields array. Count uint32 `idl:"name:Count" json:"count"` // pFields: A pointer to an array that MUST identify the job or printer information // members to be monitored. The array MUST consist entirely of elements that are either // job notification values (section 2.2.3.3) or printer notification values (section // 2.2.3.8), depending on the value of the Type member. The two types of notification // values MUST NOT be mixed within a given instance of the array. Fields []uint16 `idl:"name:pFields;size_is:(Count);pointer:unique" json:"fields"` // contains filtered or unexported fields }
V2NotifyOptionsType structure represents RPC_V2_NOTIFY_OPTIONS_TYPE RPC structure.
The RPC_V2_NOTIFY_OPTIONS_TYPE structure specifies the set of printer or job information members to be monitored by a printer change notification object.<74>
func (*V2NotifyOptionsType) MarshalNDR ¶
func (*V2NotifyOptionsType) UnmarshalNDR ¶
type V2ReplyPrinter ¶
type V2ReplyPrinter struct { // Types that are assignable to Value // // *V2ReplyPrinter_Info Value is_V2ReplyPrinter `json:"value"` }
V2ReplyPrinter structure represents RPC_V2_UREPLY_PRINTER RPC union.
The RPC_V2_UREPLY_PRINTER union defines printer notification responses.<79>
func (*V2ReplyPrinter) GetValue ¶
func (o *V2ReplyPrinter) GetValue() any
func (*V2ReplyPrinter) MarshalUnionNDR ¶
func (*V2ReplyPrinter) NDRSwitchValue ¶
func (o *V2ReplyPrinter) NDRSwitchValue(sw uint32) uint32
func (*V2ReplyPrinter) UnmarshalUnionNDR ¶
type V2ReplyPrinter_Info ¶
type V2ReplyPrinter_Info struct { // pInfo: A pointer to an RPC_V2_NOTIFY_INFO structure, which MUST contain notification // information. Info *V2NotifyInfo `idl:"name:pInfo" json:"info"` }
V2ReplyPrinter_Info structure represents RPC_V2_UREPLY_PRINTER RPC union arm.
It has following labels: 0
func (*V2ReplyPrinter_Info) MarshalNDR ¶
func (*V2ReplyPrinter_Info) UnmarshalNDR ¶
type WaitForPrinterChangeRequest ¶
type WaitForPrinterChangeRequest struct { // hPrinter: A handle to a printer object or server object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // Flags: The change notifications to wait for. The value of this parameter is a bitwise // OR of one or more printer change values, defined in sections 2.2.3.6.1 and 2.2.3.6.2. // For rules governing printer change values, see section 2.2.4.13. Flags uint32 `idl:"name:Flags" json:"flags"` }
WaitForPrinterChangeRequest structure represents the RpcWaitForPrinterChange operation request
func (*WaitForPrinterChangeRequest) MarshalNDR ¶
func (*WaitForPrinterChangeRequest) UnmarshalNDR ¶
type WaitForPrinterChangeResponse ¶
type WaitForPrinterChangeResponse struct { FlagsOut uint32 `idl:"name:pFlagsOut" json:"flags_out"` // Return: The RpcWaitForPrinterChange return value. Return uint32 `idl:"name:Return" json:"return"` }
WaitForPrinterChangeResponse structure represents the RpcWaitForPrinterChange operation response
func (*WaitForPrinterChangeResponse) MarshalNDR ¶
func (*WaitForPrinterChangeResponse) UnmarshalNDR ¶
type WinspoolClient ¶
type WinspoolClient interface { // RpcEnumPrinters enumerates available printers, print servers, domains, or print providers. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion and SHOULD<264> return a nonzero Windows error code ([MS-ERREF] section // 2.2) to indicate failure. EnumPrinters(context.Context, *EnumPrintersRequest, ...dcerpc.CallOption) (*EnumPrintersResponse, error) // RpcOpenPrinter retrieves a handle for a printer, port, port monitor, print job, or // print server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. OpenPrinter(context.Context, *OpenPrinterRequest, ...dcerpc.CallOption) (*OpenPrinterResponse, error) // RpcSetJob pauses, resumes, cancels, or restarts a print job. It also sets print job // parameters, such as the job priority and the document name. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SetJob(context.Context, *SetJobRequest, ...dcerpc.CallOption) (*SetJobResponse, error) // RpcGetJob retrieves information about a specified print job. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetJob(context.Context, *GetJobRequest, ...dcerpc.CallOption) (*GetJobResponse, error) // RpcEnumJobs retrieves information about a specified set of print jobs for a specified // printer or port. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumJobs(context.Context, *EnumJobsRequest, ...dcerpc.CallOption) (*EnumJobsResponse, error) // RpcAddPrinter adds a printer to the list of supported printers for a specified server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddPrinter(context.Context, *AddPrinterRequest, ...dcerpc.CallOption) (*AddPrinterResponse, error) // RpcDeletePrinter is a method that deletes the specified printer object. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrinter(context.Context, *DeletePrinterRequest, ...dcerpc.CallOption) (*DeletePrinterResponse, error) // RpcSetPrinter sets the data or state of a specified printer by pausing or resuming // printing or by clearing all print jobs. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SetPrinter(context.Context, *SetPrinterRequest, ...dcerpc.CallOption) (*SetPrinterResponse, error) // RpcGetPrinter retrieves information about a specified printer. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetPrinter(context.Context, *GetPrinterRequest, ...dcerpc.CallOption) (*GetPrinterResponse, error) // RpcAddPrinterDriver installs a printer driver on the print server and links the configuration, // data, and printer driver files. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddPrinterDriver(context.Context, *AddPrinterDriverRequest, ...dcerpc.CallOption) (*AddPrinterDriverResponse, error) // RpcEnumPrinterDrivers enumerates the printer drivers installed on a specified print // server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPrinterDrivers(context.Context, *EnumPrinterDriversRequest, ...dcerpc.CallOption) (*EnumPrinterDriversResponse, error) // RpcGetPrinterDriver retrieves printer driver data for the specified printer. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetPrinterDriver(context.Context, *GetPrinterDriverRequest, ...dcerpc.CallOption) (*GetPrinterDriverResponse, error) // RpcGetPrinterDriverDirectory retrieves the path of the printer driver directory. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetPrinterDriverDirectory(context.Context, *GetPrinterDriverDirectoryRequest, ...dcerpc.CallOption) (*GetPrinterDriverDirectoryResponse, error) // RpcDeletePrinterDriver removes the specified printer driver from the list of supported // drivers for a server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrinterDriver(context.Context, *DeletePrinterDriverRequest, ...dcerpc.CallOption) (*DeletePrinterDriverResponse, error) // RpcAddPrintProcessor installs a print processor on the specified server and adds // its name to an internal list of supported print processors. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddPrintProcessor(context.Context, *AddPrintProcessorRequest, ...dcerpc.CallOption) (*AddPrintProcessorResponse, error) // RpcEnumPrintProcessors enumerates the print processors installed on a specified server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPrintProcessors(context.Context, *EnumPrintProcessorsRequest, ...dcerpc.CallOption) (*EnumPrintProcessorsResponse, error) // RpcGetPrintProcessorDirectory retrieves the path for the print processor on the specified // server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetPrintProcessorDirectory(context.Context, *GetPrintProcessorDirectoryRequest, ...dcerpc.CallOption) (*GetPrintProcessorDirectoryResponse, error) // RpcStartDocPrinter notifies the print server that a document is being spooled for // printing. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. StartDocPrinter(context.Context, *StartDocPrinterRequest, ...dcerpc.CallOption) (*StartDocPrinterResponse, error) // RpcStartPagePrinter notifies the spooler that a page is about to be printed on the // specified printer. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. StartPagePrinter(context.Context, *StartPagePrinterRequest, ...dcerpc.CallOption) (*StartPagePrinterResponse, error) // RpcWritePrinter sends data to the print server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. WritePrinter(context.Context, *WritePrinterRequest, ...dcerpc.CallOption) (*WritePrinterResponse, error) // RpcEndPagePrinter notifies the print server that the application is at the end of // a page in a print job. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EndPagePrinter(context.Context, *EndPagePrinterRequest, ...dcerpc.CallOption) (*EndPagePrinterResponse, error) // RpcAbortPrinter aborts the currently spooling print document. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AbortPrinter(context.Context, *AbortPrinterRequest, ...dcerpc.CallOption) (*AbortPrinterResponse, error) // RpcReadPrinter retrieves data from the specified job or port. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. ReadPrinter(context.Context, *ReadPrinterRequest, ...dcerpc.CallOption) (*ReadPrinterResponse, error) // RpcEndDocPrinter notifies the print server that the application is at the end of // the current print job. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EndDocPrinter(context.Context, *EndDocPrinterRequest, ...dcerpc.CallOption) (*EndDocPrinterResponse, error) // RpcAddJob does not perform any function but returns a nonzero Windows error code // to indicate failure. // // Return Values: This method MUST return a nonzero Windows error code to indicate failure // [MS-ERREF]. AddJob(context.Context, *AddJobRequest, ...dcerpc.CallOption) (*AddJobResponse, error) // RpcScheduleJob does not perform any function, but returns a nonzero Windows error // code to indicate failure. // // Return Values: This method MUST return a nonzero Windows error code to indicate failure // [MS-ERREF]. ScheduleJob(context.Context, *ScheduleJobRequest, ...dcerpc.CallOption) (*ScheduleJobResponse, error) // RpcGetPrinterData retrieves printer configuration data for a printer or print server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetPrinterData(context.Context, *GetPrinterDataRequest, ...dcerpc.CallOption) (*GetPrinterDataResponse, error) // RpcSetPrinterData sets the configuration data for a printer or print server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SetPrinterData(context.Context, *SetPrinterDataRequest, ...dcerpc.CallOption) (*SetPrinterDataResponse, error) // RpcWaitForPrinterChange retrieves information about the most recent change notification // that is associated with a printer or print server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. WaitForPrinterChange(context.Context, *WaitForPrinterChangeRequest, ...dcerpc.CallOption) (*WaitForPrinterChangeResponse, error) // RpcClosePrinter closes a handle to a printer object, server object, job object, or // port object. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. ClosePrinter(context.Context, *ClosePrinterRequest, ...dcerpc.CallOption) (*ClosePrinterResponse, error) // RpcAddForm adds a form name to the list of supported forms. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddForm(context.Context, *AddFormRequest, ...dcerpc.CallOption) (*AddFormResponse, error) // RpcDeleteForm removes a form name from the list of supported forms. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeleteForm(context.Context, *DeleteFormRequest, ...dcerpc.CallOption) (*DeleteFormResponse, error) // RpcGetForm retrieves information about a specified form. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetForm(context.Context, *GetFormRequest, ...dcerpc.CallOption) (*GetFormResponse, error) // RpcSetForm replaces the form information for the specified form. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SetForm(context.Context, *SetFormRequest, ...dcerpc.CallOption) (*SetFormResponse, error) // The RpcEnumForms method enumerates the forms that the specified printer supports. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumForms(context.Context, *EnumFormsRequest, ...dcerpc.CallOption) (*EnumFormsResponse, error) // RpcEnumPorts enumerates the ports that are available for printing on a specified // server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPorts(context.Context, *EnumPortsRequest, ...dcerpc.CallOption) (*EnumPortsResponse, error) // The RpcEnumMonitors method retrieves information about the port monitors installed // on the specified server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumMonitors(context.Context, *EnumMonitorsRequest, ...dcerpc.CallOption) (*EnumMonitorsResponse, error) // Removes a port.<357> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePort(context.Context, *DeletePortRequest, ...dcerpc.CallOption) (*DeletePortResponse, error) // RpcCreatePrinterIC is called by the Graphics Device Interface (GDI) to create an // information context for a specified printer. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. CreatePrinterIC(context.Context, *CreatePrinterICRequest, ...dcerpc.CallOption) (*CreatePrinterICResponse, error) // RpcPlayGdiScriptOnPrinterIC returns font information for a printer connection. UNIVERSAL_FONT_ID // (section 2.2.2.12) structures are used to identify the fonts. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. PlayGDIScriptOnPrinterIC(context.Context, *PlayGDIScriptOnPrinterICRequest, ...dcerpc.CallOption) (*PlayGDIScriptOnPrinterICResponse, error) // RpcDeletePrinterIC deletes a printer information context. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrinterIC(context.Context, *DeletePrinterICRequest, ...dcerpc.CallOption) (*DeletePrinterICResponse, error) // RpcAddMonitor installs a local port monitor and links the configuration, data, and // monitor files. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddMonitor(context.Context, *AddMonitorRequest, ...dcerpc.CallOption) (*AddMonitorResponse, error) // RpcDeleteMonitor removes a port monitor. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeleteMonitor(context.Context, *DeleteMonitorRequest, ...dcerpc.CallOption) (*DeleteMonitorResponse, error) // RpcDeletePrintProcessor removes a print processor. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrintProcessor(context.Context, *DeletePrintProcessorRequest, ...dcerpc.CallOption) (*DeletePrintProcessorResponse, error) // RpcEnumPrintProcessorDatatypes enumerates the data types that a specified print processor // supports. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPrintProcessorDataTypes(context.Context, *EnumPrintProcessorDataTypesRequest, ...dcerpc.CallOption) (*EnumPrintProcessorDataTypesResponse, error) // RpcResetPrinter resets the data type and device mode (For more information, see [DEVMODE]) // values to use for printing documents submitted by the RpcStartDocPrinter (section // 3.1.4.9.1) method. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. ResetPrinter(context.Context, *ResetPrinterRequest, ...dcerpc.CallOption) (*ResetPrinterResponse, error) // RpcGetPrinterDriver2 retrieves printer driver data for the specified printer.<334> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetPrinterDriver2(context.Context, *GetPrinterDriver2Request, ...dcerpc.CallOption) (*GetPrinterDriver2Response, error) // The RpcFindClosePrinterChangeNotification method closes a change notification object // created by RpcRemoteFindFirstPrinterChangeNotification (section 3.1.4.10.3) or RpcRemoteFindFirstPrinterChangeNotificationEx // (section 3.1.4.10.4).<380> The printer or print server associated with the change // notification object is no longer monitored by that object. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. FindClosePrinterChangeNotification(context.Context, *FindClosePrinterChangeNotificationRequest, ...dcerpc.CallOption) (*FindClosePrinterChangeNotificationResponse, error) // RpcReplyOpenPrinter establishes a context handle from a print server to a print client.<412> // The server uses the RPC context handle returned by this method to send notification // data to the client machine. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. ReplyOpenPrinter(context.Context, *ReplyOpenPrinterRequest, ...dcerpc.CallOption) (*ReplyOpenPrinterResponse, error) // RpcRouterReplyPrinter handles a notification from a print server.<414> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. RouterReplyPrinter(context.Context, *RouterReplyPrinterRequest, ...dcerpc.CallOption) (*RouterReplyPrinterResponse, error) // RpcReplyClosePrinter closes the notification channel between a print server and a // print client.<415> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. ReplyClosePrinter(context.Context, *ReplyClosePrinterRequest, ...dcerpc.CallOption) (*ReplyClosePrinterResponse, error) // RpcAddPortEx adds a port name to the list of supported ports.<359> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddPortEx(context.Context, *AddPortExRequest, ...dcerpc.CallOption) (*AddPortExResponse, error) // RpcRemoteFindFirstPrinterChangeNotification creates a remote change notification // object that monitors changes to printer objects and sends change notifications to // a print client using either RpcRouterReplyPrinter (section 3.2.4.1.2) or RpcRouterReplyPrinterEx // (section 3.2.4.1.4). // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. RemoteFindFirstPrinterChangeNotification(context.Context, *RemoteFindFirstPrinterChangeNotificationRequest, ...dcerpc.CallOption) (*RemoteFindFirstPrinterChangeNotificationResponse, error) // RpcRemoteFindFirstPrinterChangeNotificationEx creates a remote change notification // object that monitors changes to printer objects and sends change notifications to // a print client using either RpcRouterReplyPrinter (section 3.2.4.1.2) or RpcRouterReplyPrinterEx // (section 3.2.4.1.4). // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. RemoteFindFirstPrinterChangeNotificationEx(context.Context, *RemoteFindFirstPrinterChangeNotificationExRequest, ...dcerpc.CallOption) (*RemoteFindFirstPrinterChangeNotificationExResponse, error) // RpcRouterReplyPrinterEx handles a notification from a print server.<416> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. RouterReplyPrinterEx(context.Context, *RouterReplyPrinterExRequest, ...dcerpc.CallOption) (*RouterReplyPrinterExResponse, error) // RpcRouterRefreshPrinterChangeNotification returns change notification information.<383> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. RouterRefreshPrinterChangeNotification(context.Context, *RouterRefreshPrinterChangeNotificationRequest, ...dcerpc.CallOption) (*RouterRefreshPrinterChangeNotificationResponse, error) // RpcOpenPrinterEx retrieves a handle for a printer, port, port monitor, print job, // or print server.<287> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. OpenPrinterEx(context.Context, *OpenPrinterExRequest, ...dcerpc.CallOption) (*OpenPrinterExResponse, error) // RpcAddPrinterEx installs a printer on the print server.<288> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddPrinterEx(context.Context, *AddPrinterExRequest, ...dcerpc.CallOption) (*AddPrinterExResponse, error) // RpcSetPort sets the status associated with a printer port.<361> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SetPort(context.Context, *SetPortRequest, ...dcerpc.CallOption) (*SetPortResponse, error) // RpcEnumPrinterData enumerates configuration data for a specified printer.<292> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPrinterData(context.Context, *EnumPrinterDataRequest, ...dcerpc.CallOption) (*EnumPrinterDataResponse, error) // RpcDeletePrinterData deletes specified configuration data for a printer.<294> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrinterData(context.Context, *DeletePrinterDataRequest, ...dcerpc.CallOption) (*DeletePrinterDataResponse, error) // RpcSetPrinterDataEx sets the configuration data for a printer or print server.<298> // This method is similar to RpcSetPrinterData (section 3.1.4.2.8) but additionally // allows the caller to specify the registry key under which to store the data. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SetPrinterDataEx(context.Context, *SetPrinterDataExRequest, ...dcerpc.CallOption) (*SetPrinterDataExResponse, error) // RpcGetPrinterDataEx retrieves configuration data for the specified printer or print // server.<301> This method is similar to RpcGetPrinterData (section 3.1.4.2.7), but // it also allows the caller to specify the registry key from which to retrieve the // data. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetPrinterDataEx(context.Context, *GetPrinterDataExRequest, ...dcerpc.CallOption) (*GetPrinterDataExResponse, error) // RpcEnumPrinterDataEx enumerates all value names and data for a specified printer // and key.<304> This method is similar to RpcEnumPrinterData (section 3.1.4.2.16) but // also allows the caller to specify the registry key from which to enumerate the data, // and allows retrieving several values in a single call. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPrinterDataEx(context.Context, *EnumPrinterDataExRequest, ...dcerpc.CallOption) (*EnumPrinterDataExResponse, error) // RpcEnumPrinterKey enumerates the subkeys of a specified key for a specified printer.<305> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPrinterKey(context.Context, *EnumPrinterKeyRequest, ...dcerpc.CallOption) (*EnumPrinterKeyResponse, error) // RpcDeletePrinterDataEx deletes a specified value from a printer's configuration data, // which consists of a set of named and typed values stored in a hierarchy of registry // keys.<306> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrinterDataEx(context.Context, *DeletePrinterDataExRequest, ...dcerpc.CallOption) (*DeletePrinterDataExResponse, error) // RpcDeletePrinterKey deletes a specified key and all of its subkeys for a specified // printer.<309> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrinterKey(context.Context, *DeletePrinterKeyRequest, ...dcerpc.CallOption) (*DeletePrinterKeyResponse, error) // RpcDeletePrinterDriverEx removes the specified printer driver from the list of supported // drivers for a server and deletes the files associated with it.<339> This method can // also be used to delete specific versions of a driver. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrinterDriverEx(context.Context, *DeletePrinterDriverExRequest, ...dcerpc.CallOption) (*DeletePrinterDriverExResponse, error) // RpcAddPerMachineConnection adds a remote printer name to the list of supported printer // connections for every user who locally logs onto the computer running the print server.<311> // // This method is used for remote administration of client computers running the print // system. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddPerMachineConnection(context.Context, *AddPerMachineConnectionRequest, ...dcerpc.CallOption) (*AddPerMachineConnectionResponse, error) // RpcDeletePerMachineConnection deletes information about a printer connection.<314> // // This method is used for remote administration of client computers running the print // system. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePerMachineConnection(context.Context, *DeletePerMachineConnectionRequest, ...dcerpc.CallOption) (*DeletePerMachineConnectionResponse, error) // Enumerates each of the connections and copies PRINTER_INFO_4 (section 2.2.1.10.5) // structures for all the per-machine connections into the buffer pPrinterEnum.<316> // // This method is used for remote administration of client computers running the print // system. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPerMachineConnections(context.Context, *EnumPerMachineConnectionsRequest, ...dcerpc.CallOption) (*EnumPerMachineConnectionsResponse, error) // RpcXcvData provides an extensible mechanism by which a client can control ports on // the server and exchange port specific commands and data with the server.<363> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate that the // print server successfully called the port monitor's XcvData method, or a nonzero // Windows error code to indicate failure [MS-ERREF]. XcvData(context.Context, *XcvDataRequest, ...dcerpc.CallOption) (*XcvDataResponse, error) // RpcAddPrinterDriverEx installs a printer driver on the print server.<342> This method // performs a function similar to RpcAddPrinterDriver (section 3.1.4.4.1) and is also // used to specify options that permit printer driver upgrade, printer driver downgrade, // copying of newer files only, and copying of all files regardless of their time stamps. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddPrinterDriverEx(context.Context, *AddPrinterDriverExRequest, ...dcerpc.CallOption) (*AddPrinterDriverExResponse, error) // RpcFlushPrinter is used by printer drivers to send a buffer of bytes to a specified // port to cleanly abort a print job.<378> It also allows delaying the I/O line to the // printer. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. FlushPrinter(context.Context, *FlushPrinterRequest, ...dcerpc.CallOption) (*FlushPrinterResponse, error) // The RpcSendRecvBidiData method sends and receives bidirectional data. This method // is used to communicate with port monitors that support such data.<317> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SendRecvBIDIData(context.Context, *SendRecvBIDIDataRequest, ...dcerpc.CallOption) (*SendRecvBIDIDataResponse, error) // RpcGetCorePrinterDrivers gets the GUIDs, versions, and publish dates of the specified // core printer drivers, and the paths to their packages.<347> // // Return Values: This method MUST return zero or an HRESULT success value ([MS-ERREF] // section 2.1) to indicate successful completion or an HRESULT error value to indicate // failure. // // Exceptions Thrown: This method MUST NOT throw any exceptions other than those that // are thrown by the underlying RPC protocol [MS-RPCE]. GetCorePrinterDrivers(context.Context, *GetCorePrinterDriversRequest, ...dcerpc.CallOption) (*GetCorePrinterDriversResponse, error) // RpcGetPrinterDriverPackagePath gets the path to the specified printer driver package.<349> // // Return Values: This method MUST return zero or an HRESULT success value ([MS-ERREF] // section 2.1) to indicate successful completion or an HRESULT error value to indicate // failure. // // Exceptions Thrown: This method MUST NOT throw any exceptions other than those that // are thrown by the underlying RPC protocol [MS-RPCE]. GetPrinterDriverPackagePath(context.Context, *GetPrinterDriverPackagePathRequest, ...dcerpc.CallOption) (*GetPrinterDriverPackagePathResponse, error) // RpcGetJobNamedPropertyValue retrieves the current value of the specified Job Named // Property (section 3.1.1).<397> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetJobNamedPropertyValue(context.Context, *GetJobNamedPropertyValueRequest, ...dcerpc.CallOption) (*GetJobNamedPropertyValueResponse, error) // RpcSetJobNamedProperty creates a new Job Named Property (section 3.1.1), or changes // the value of an existing Job Named Property for the specified print job.<398> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SetJobNamedProperty(context.Context, *SetJobNamedPropertyRequest, ...dcerpc.CallOption) (*SetJobNamedPropertyResponse, error) // RpcDeleteJobNamedProperty deletes an existing Job Named Property (section 3.1.1) // for the specified print job.<399> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeleteJobNamedProperty(context.Context, *DeleteJobNamedPropertyRequest, ...dcerpc.CallOption) (*DeleteJobNamedPropertyResponse, error) // RpcEnumJobNamedProperties enumerates the Job Named Properties (section 3.1.1) for // the specified print job.<400> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumJobNamedProperties(context.Context, *EnumJobNamedPropertiesRequest, ...dcerpc.CallOption) (*EnumJobNamedPropertiesResponse, error) // RpcLogJobInfoForBranchOffice operation. LogJobInfoForBranchOffice(context.Context, *LogJobInfoForBranchOfficeRequest, ...dcerpc.CallOption) (*LogJobInfoForBranchOfficeResponse, error) // RpcRegeneratePrintDeviceCapabilities operation. RegeneratePrintDeviceCapabilities(context.Context, *RegeneratePrintDeviceCapabilitiesRequest, ...dcerpc.CallOption) (*RegeneratePrintDeviceCapabilitiesResponse, error) // RpcIppCreateJobOnPrinter operation. CreateJobOnPrinter(context.Context, *CreateJobOnPrinterRequest, ...dcerpc.CallOption) (*CreateJobOnPrinterResponse, error) // RpcIppGetJobAttributes operation. GetJobAttributes(context.Context, *GetJobAttributesRequest, ...dcerpc.CallOption) (*GetJobAttributesResponse, error) // RpcIppSetJobAttributes operation. SetJobAttributes(context.Context, *SetJobAttributesRequest, ...dcerpc.CallOption) (*SetJobAttributesResponse, error) // RpcIppGetPrinterAttributes operation. GetPrinterAttributes(context.Context, *GetPrinterAttributesRequest, ...dcerpc.CallOption) (*GetPrinterAttributesResponse, error) // RpcIppSetPrinterAttributes operation. SetPrinterAttributes(context.Context, *SetPrinterAttributesRequest, ...dcerpc.CallOption) (*SetPrinterAttributesResponse, error) // AlterContext alters the client context. AlterContext(context.Context, ...dcerpc.Option) error // Conn returns the client connection (unsafe) Conn() dcerpc.Conn }
winspool interface.
func NewWinspoolClient ¶
type WinspoolServer ¶
type WinspoolServer interface { // RpcEnumPrinters enumerates available printers, print servers, domains, or print providers. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion and SHOULD<264> return a nonzero Windows error code ([MS-ERREF] section // 2.2) to indicate failure. EnumPrinters(context.Context, *EnumPrintersRequest) (*EnumPrintersResponse, error) // RpcOpenPrinter retrieves a handle for a printer, port, port monitor, print job, or // print server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. OpenPrinter(context.Context, *OpenPrinterRequest) (*OpenPrinterResponse, error) // RpcSetJob pauses, resumes, cancels, or restarts a print job. It also sets print job // parameters, such as the job priority and the document name. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SetJob(context.Context, *SetJobRequest) (*SetJobResponse, error) // RpcGetJob retrieves information about a specified print job. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetJob(context.Context, *GetJobRequest) (*GetJobResponse, error) // RpcEnumJobs retrieves information about a specified set of print jobs for a specified // printer or port. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumJobs(context.Context, *EnumJobsRequest) (*EnumJobsResponse, error) // RpcAddPrinter adds a printer to the list of supported printers for a specified server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddPrinter(context.Context, *AddPrinterRequest) (*AddPrinterResponse, error) // RpcDeletePrinter is a method that deletes the specified printer object. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrinter(context.Context, *DeletePrinterRequest) (*DeletePrinterResponse, error) // RpcSetPrinter sets the data or state of a specified printer by pausing or resuming // printing or by clearing all print jobs. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SetPrinter(context.Context, *SetPrinterRequest) (*SetPrinterResponse, error) // RpcGetPrinter retrieves information about a specified printer. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetPrinter(context.Context, *GetPrinterRequest) (*GetPrinterResponse, error) // RpcAddPrinterDriver installs a printer driver on the print server and links the configuration, // data, and printer driver files. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddPrinterDriver(context.Context, *AddPrinterDriverRequest) (*AddPrinterDriverResponse, error) // RpcEnumPrinterDrivers enumerates the printer drivers installed on a specified print // server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPrinterDrivers(context.Context, *EnumPrinterDriversRequest) (*EnumPrinterDriversResponse, error) // RpcGetPrinterDriver retrieves printer driver data for the specified printer. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetPrinterDriver(context.Context, *GetPrinterDriverRequest) (*GetPrinterDriverResponse, error) // RpcGetPrinterDriverDirectory retrieves the path of the printer driver directory. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetPrinterDriverDirectory(context.Context, *GetPrinterDriverDirectoryRequest) (*GetPrinterDriverDirectoryResponse, error) // RpcDeletePrinterDriver removes the specified printer driver from the list of supported // drivers for a server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrinterDriver(context.Context, *DeletePrinterDriverRequest) (*DeletePrinterDriverResponse, error) // RpcAddPrintProcessor installs a print processor on the specified server and adds // its name to an internal list of supported print processors. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddPrintProcessor(context.Context, *AddPrintProcessorRequest) (*AddPrintProcessorResponse, error) // RpcEnumPrintProcessors enumerates the print processors installed on a specified server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPrintProcessors(context.Context, *EnumPrintProcessorsRequest) (*EnumPrintProcessorsResponse, error) // RpcGetPrintProcessorDirectory retrieves the path for the print processor on the specified // server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetPrintProcessorDirectory(context.Context, *GetPrintProcessorDirectoryRequest) (*GetPrintProcessorDirectoryResponse, error) // RpcStartDocPrinter notifies the print server that a document is being spooled for // printing. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. StartDocPrinter(context.Context, *StartDocPrinterRequest) (*StartDocPrinterResponse, error) // RpcStartPagePrinter notifies the spooler that a page is about to be printed on the // specified printer. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. StartPagePrinter(context.Context, *StartPagePrinterRequest) (*StartPagePrinterResponse, error) // RpcWritePrinter sends data to the print server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. WritePrinter(context.Context, *WritePrinterRequest) (*WritePrinterResponse, error) // RpcEndPagePrinter notifies the print server that the application is at the end of // a page in a print job. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EndPagePrinter(context.Context, *EndPagePrinterRequest) (*EndPagePrinterResponse, error) // RpcAbortPrinter aborts the currently spooling print document. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AbortPrinter(context.Context, *AbortPrinterRequest) (*AbortPrinterResponse, error) // RpcReadPrinter retrieves data from the specified job or port. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. ReadPrinter(context.Context, *ReadPrinterRequest) (*ReadPrinterResponse, error) // RpcEndDocPrinter notifies the print server that the application is at the end of // the current print job. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EndDocPrinter(context.Context, *EndDocPrinterRequest) (*EndDocPrinterResponse, error) // RpcAddJob does not perform any function but returns a nonzero Windows error code // to indicate failure. // // Return Values: This method MUST return a nonzero Windows error code to indicate failure // [MS-ERREF]. AddJob(context.Context, *AddJobRequest) (*AddJobResponse, error) // RpcScheduleJob does not perform any function, but returns a nonzero Windows error // code to indicate failure. // // Return Values: This method MUST return a nonzero Windows error code to indicate failure // [MS-ERREF]. ScheduleJob(context.Context, *ScheduleJobRequest) (*ScheduleJobResponse, error) // RpcGetPrinterData retrieves printer configuration data for a printer or print server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetPrinterData(context.Context, *GetPrinterDataRequest) (*GetPrinterDataResponse, error) // RpcSetPrinterData sets the configuration data for a printer or print server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SetPrinterData(context.Context, *SetPrinterDataRequest) (*SetPrinterDataResponse, error) // RpcWaitForPrinterChange retrieves information about the most recent change notification // that is associated with a printer or print server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. WaitForPrinterChange(context.Context, *WaitForPrinterChangeRequest) (*WaitForPrinterChangeResponse, error) // RpcClosePrinter closes a handle to a printer object, server object, job object, or // port object. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. ClosePrinter(context.Context, *ClosePrinterRequest) (*ClosePrinterResponse, error) // RpcAddForm adds a form name to the list of supported forms. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddForm(context.Context, *AddFormRequest) (*AddFormResponse, error) // RpcDeleteForm removes a form name from the list of supported forms. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeleteForm(context.Context, *DeleteFormRequest) (*DeleteFormResponse, error) // RpcGetForm retrieves information about a specified form. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetForm(context.Context, *GetFormRequest) (*GetFormResponse, error) // RpcSetForm replaces the form information for the specified form. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SetForm(context.Context, *SetFormRequest) (*SetFormResponse, error) // The RpcEnumForms method enumerates the forms that the specified printer supports. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumForms(context.Context, *EnumFormsRequest) (*EnumFormsResponse, error) // RpcEnumPorts enumerates the ports that are available for printing on a specified // server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPorts(context.Context, *EnumPortsRequest) (*EnumPortsResponse, error) // The RpcEnumMonitors method retrieves information about the port monitors installed // on the specified server. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumMonitors(context.Context, *EnumMonitorsRequest) (*EnumMonitorsResponse, error) // Removes a port.<357> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePort(context.Context, *DeletePortRequest) (*DeletePortResponse, error) // RpcCreatePrinterIC is called by the Graphics Device Interface (GDI) to create an // information context for a specified printer. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. CreatePrinterIC(context.Context, *CreatePrinterICRequest) (*CreatePrinterICResponse, error) // RpcPlayGdiScriptOnPrinterIC returns font information for a printer connection. UNIVERSAL_FONT_ID // (section 2.2.2.12) structures are used to identify the fonts. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. PlayGDIScriptOnPrinterIC(context.Context, *PlayGDIScriptOnPrinterICRequest) (*PlayGDIScriptOnPrinterICResponse, error) // RpcDeletePrinterIC deletes a printer information context. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrinterIC(context.Context, *DeletePrinterICRequest) (*DeletePrinterICResponse, error) // RpcAddMonitor installs a local port monitor and links the configuration, data, and // monitor files. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddMonitor(context.Context, *AddMonitorRequest) (*AddMonitorResponse, error) // RpcDeleteMonitor removes a port monitor. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeleteMonitor(context.Context, *DeleteMonitorRequest) (*DeleteMonitorResponse, error) // RpcDeletePrintProcessor removes a print processor. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrintProcessor(context.Context, *DeletePrintProcessorRequest) (*DeletePrintProcessorResponse, error) // RpcEnumPrintProcessorDatatypes enumerates the data types that a specified print processor // supports. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPrintProcessorDataTypes(context.Context, *EnumPrintProcessorDataTypesRequest) (*EnumPrintProcessorDataTypesResponse, error) // RpcResetPrinter resets the data type and device mode (For more information, see [DEVMODE]) // values to use for printing documents submitted by the RpcStartDocPrinter (section // 3.1.4.9.1) method. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. ResetPrinter(context.Context, *ResetPrinterRequest) (*ResetPrinterResponse, error) // RpcGetPrinterDriver2 retrieves printer driver data for the specified printer.<334> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetPrinterDriver2(context.Context, *GetPrinterDriver2Request) (*GetPrinterDriver2Response, error) // The RpcFindClosePrinterChangeNotification method closes a change notification object // created by RpcRemoteFindFirstPrinterChangeNotification (section 3.1.4.10.3) or RpcRemoteFindFirstPrinterChangeNotificationEx // (section 3.1.4.10.4).<380> The printer or print server associated with the change // notification object is no longer monitored by that object. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. FindClosePrinterChangeNotification(context.Context, *FindClosePrinterChangeNotificationRequest) (*FindClosePrinterChangeNotificationResponse, error) // RpcReplyOpenPrinter establishes a context handle from a print server to a print client.<412> // The server uses the RPC context handle returned by this method to send notification // data to the client machine. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. ReplyOpenPrinter(context.Context, *ReplyOpenPrinterRequest) (*ReplyOpenPrinterResponse, error) // RpcRouterReplyPrinter handles a notification from a print server.<414> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. RouterReplyPrinter(context.Context, *RouterReplyPrinterRequest) (*RouterReplyPrinterResponse, error) // RpcReplyClosePrinter closes the notification channel between a print server and a // print client.<415> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. ReplyClosePrinter(context.Context, *ReplyClosePrinterRequest) (*ReplyClosePrinterResponse, error) // RpcAddPortEx adds a port name to the list of supported ports.<359> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddPortEx(context.Context, *AddPortExRequest) (*AddPortExResponse, error) // RpcRemoteFindFirstPrinterChangeNotification creates a remote change notification // object that monitors changes to printer objects and sends change notifications to // a print client using either RpcRouterReplyPrinter (section 3.2.4.1.2) or RpcRouterReplyPrinterEx // (section 3.2.4.1.4). // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. RemoteFindFirstPrinterChangeNotification(context.Context, *RemoteFindFirstPrinterChangeNotificationRequest) (*RemoteFindFirstPrinterChangeNotificationResponse, error) // RpcRemoteFindFirstPrinterChangeNotificationEx creates a remote change notification // object that monitors changes to printer objects and sends change notifications to // a print client using either RpcRouterReplyPrinter (section 3.2.4.1.2) or RpcRouterReplyPrinterEx // (section 3.2.4.1.4). // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. RemoteFindFirstPrinterChangeNotificationEx(context.Context, *RemoteFindFirstPrinterChangeNotificationExRequest) (*RemoteFindFirstPrinterChangeNotificationExResponse, error) // RpcRouterReplyPrinterEx handles a notification from a print server.<416> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. RouterReplyPrinterEx(context.Context, *RouterReplyPrinterExRequest) (*RouterReplyPrinterExResponse, error) // RpcRouterRefreshPrinterChangeNotification returns change notification information.<383> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. RouterRefreshPrinterChangeNotification(context.Context, *RouterRefreshPrinterChangeNotificationRequest) (*RouterRefreshPrinterChangeNotificationResponse, error) // RpcOpenPrinterEx retrieves a handle for a printer, port, port monitor, print job, // or print server.<287> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. OpenPrinterEx(context.Context, *OpenPrinterExRequest) (*OpenPrinterExResponse, error) // RpcAddPrinterEx installs a printer on the print server.<288> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddPrinterEx(context.Context, *AddPrinterExRequest) (*AddPrinterExResponse, error) // RpcSetPort sets the status associated with a printer port.<361> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SetPort(context.Context, *SetPortRequest) (*SetPortResponse, error) // RpcEnumPrinterData enumerates configuration data for a specified printer.<292> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPrinterData(context.Context, *EnumPrinterDataRequest) (*EnumPrinterDataResponse, error) // RpcDeletePrinterData deletes specified configuration data for a printer.<294> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrinterData(context.Context, *DeletePrinterDataRequest) (*DeletePrinterDataResponse, error) // RpcSetPrinterDataEx sets the configuration data for a printer or print server.<298> // This method is similar to RpcSetPrinterData (section 3.1.4.2.8) but additionally // allows the caller to specify the registry key under which to store the data. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SetPrinterDataEx(context.Context, *SetPrinterDataExRequest) (*SetPrinterDataExResponse, error) // RpcGetPrinterDataEx retrieves configuration data for the specified printer or print // server.<301> This method is similar to RpcGetPrinterData (section 3.1.4.2.7), but // it also allows the caller to specify the registry key from which to retrieve the // data. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetPrinterDataEx(context.Context, *GetPrinterDataExRequest) (*GetPrinterDataExResponse, error) // RpcEnumPrinterDataEx enumerates all value names and data for a specified printer // and key.<304> This method is similar to RpcEnumPrinterData (section 3.1.4.2.16) but // also allows the caller to specify the registry key from which to enumerate the data, // and allows retrieving several values in a single call. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPrinterDataEx(context.Context, *EnumPrinterDataExRequest) (*EnumPrinterDataExResponse, error) // RpcEnumPrinterKey enumerates the subkeys of a specified key for a specified printer.<305> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPrinterKey(context.Context, *EnumPrinterKeyRequest) (*EnumPrinterKeyResponse, error) // RpcDeletePrinterDataEx deletes a specified value from a printer's configuration data, // which consists of a set of named and typed values stored in a hierarchy of registry // keys.<306> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrinterDataEx(context.Context, *DeletePrinterDataExRequest) (*DeletePrinterDataExResponse, error) // RpcDeletePrinterKey deletes a specified key and all of its subkeys for a specified // printer.<309> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrinterKey(context.Context, *DeletePrinterKeyRequest) (*DeletePrinterKeyResponse, error) // RpcDeletePrinterDriverEx removes the specified printer driver from the list of supported // drivers for a server and deletes the files associated with it.<339> This method can // also be used to delete specific versions of a driver. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePrinterDriverEx(context.Context, *DeletePrinterDriverExRequest) (*DeletePrinterDriverExResponse, error) // RpcAddPerMachineConnection adds a remote printer name to the list of supported printer // connections for every user who locally logs onto the computer running the print server.<311> // // This method is used for remote administration of client computers running the print // system. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddPerMachineConnection(context.Context, *AddPerMachineConnectionRequest) (*AddPerMachineConnectionResponse, error) // RpcDeletePerMachineConnection deletes information about a printer connection.<314> // // This method is used for remote administration of client computers running the print // system. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeletePerMachineConnection(context.Context, *DeletePerMachineConnectionRequest) (*DeletePerMachineConnectionResponse, error) // Enumerates each of the connections and copies PRINTER_INFO_4 (section 2.2.1.10.5) // structures for all the per-machine connections into the buffer pPrinterEnum.<316> // // This method is used for remote administration of client computers running the print // system. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumPerMachineConnections(context.Context, *EnumPerMachineConnectionsRequest) (*EnumPerMachineConnectionsResponse, error) // RpcXcvData provides an extensible mechanism by which a client can control ports on // the server and exchange port specific commands and data with the server.<363> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate that the // print server successfully called the port monitor's XcvData method, or a nonzero // Windows error code to indicate failure [MS-ERREF]. XcvData(context.Context, *XcvDataRequest) (*XcvDataResponse, error) // RpcAddPrinterDriverEx installs a printer driver on the print server.<342> This method // performs a function similar to RpcAddPrinterDriver (section 3.1.4.4.1) and is also // used to specify options that permit printer driver upgrade, printer driver downgrade, // copying of newer files only, and copying of all files regardless of their time stamps. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. AddPrinterDriverEx(context.Context, *AddPrinterDriverExRequest) (*AddPrinterDriverExResponse, error) // RpcFlushPrinter is used by printer drivers to send a buffer of bytes to a specified // port to cleanly abort a print job.<378> It also allows delaying the I/O line to the // printer. // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. FlushPrinter(context.Context, *FlushPrinterRequest) (*FlushPrinterResponse, error) // The RpcSendRecvBidiData method sends and receives bidirectional data. This method // is used to communicate with port monitors that support such data.<317> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SendRecvBIDIData(context.Context, *SendRecvBIDIDataRequest) (*SendRecvBIDIDataResponse, error) // RpcGetCorePrinterDrivers gets the GUIDs, versions, and publish dates of the specified // core printer drivers, and the paths to their packages.<347> // // Return Values: This method MUST return zero or an HRESULT success value ([MS-ERREF] // section 2.1) to indicate successful completion or an HRESULT error value to indicate // failure. // // Exceptions Thrown: This method MUST NOT throw any exceptions other than those that // are thrown by the underlying RPC protocol [MS-RPCE]. GetCorePrinterDrivers(context.Context, *GetCorePrinterDriversRequest) (*GetCorePrinterDriversResponse, error) // RpcGetPrinterDriverPackagePath gets the path to the specified printer driver package.<349> // // Return Values: This method MUST return zero or an HRESULT success value ([MS-ERREF] // section 2.1) to indicate successful completion or an HRESULT error value to indicate // failure. // // Exceptions Thrown: This method MUST NOT throw any exceptions other than those that // are thrown by the underlying RPC protocol [MS-RPCE]. GetPrinterDriverPackagePath(context.Context, *GetPrinterDriverPackagePathRequest) (*GetPrinterDriverPackagePathResponse, error) // RpcGetJobNamedPropertyValue retrieves the current value of the specified Job Named // Property (section 3.1.1).<397> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. GetJobNamedPropertyValue(context.Context, *GetJobNamedPropertyValueRequest) (*GetJobNamedPropertyValueResponse, error) // RpcSetJobNamedProperty creates a new Job Named Property (section 3.1.1), or changes // the value of an existing Job Named Property for the specified print job.<398> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. SetJobNamedProperty(context.Context, *SetJobNamedPropertyRequest) (*SetJobNamedPropertyResponse, error) // RpcDeleteJobNamedProperty deletes an existing Job Named Property (section 3.1.1) // for the specified print job.<399> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. DeleteJobNamedProperty(context.Context, *DeleteJobNamedPropertyRequest) (*DeleteJobNamedPropertyResponse, error) // RpcEnumJobNamedProperties enumerates the Job Named Properties (section 3.1.1) for // the specified print job.<400> // // Return Values: This method MUST return zero (ERROR_SUCCESS) to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. EnumJobNamedProperties(context.Context, *EnumJobNamedPropertiesRequest) (*EnumJobNamedPropertiesResponse, error) // RpcLogJobInfoForBranchOffice operation. LogJobInfoForBranchOffice(context.Context, *LogJobInfoForBranchOfficeRequest) (*LogJobInfoForBranchOfficeResponse, error) // RpcRegeneratePrintDeviceCapabilities operation. RegeneratePrintDeviceCapabilities(context.Context, *RegeneratePrintDeviceCapabilitiesRequest) (*RegeneratePrintDeviceCapabilitiesResponse, error) // RpcIppCreateJobOnPrinter operation. CreateJobOnPrinter(context.Context, *CreateJobOnPrinterRequest) (*CreateJobOnPrinterResponse, error) // RpcIppGetJobAttributes operation. GetJobAttributes(context.Context, *GetJobAttributesRequest) (*GetJobAttributesResponse, error) // RpcIppSetJobAttributes operation. SetJobAttributes(context.Context, *SetJobAttributesRequest) (*SetJobAttributesResponse, error) // RpcIppGetPrinterAttributes operation. GetPrinterAttributes(context.Context, *GetPrinterAttributesRequest) (*GetPrinterAttributesResponse, error) // RpcIppSetPrinterAttributes operation. SetPrinterAttributes(context.Context, *SetPrinterAttributesRequest) (*SetPrinterAttributesResponse, error) }
winspool server interface.
type WritePrinterRequest ¶
type WritePrinterRequest struct { // hPrinter: A handle to a printer object or port object that was opened by RpcAddPrinter // (section 3.1.4.2.3), RpcAddPrinterEx (section 3.1.4.2.15), RpcOpenPrinter (section // 3.1.4.2.2), or RpcOpenPrinterEx (section 3.1.4.2.14). Printer *Printer `idl:"name:hPrinter" json:"printer"` // pBuf: A pointer to a buffer that contains the data to be written. This parameter // can be NULL if the value of the cbBuf parameter is zero. Buffer []byte `idl:"name:pBuf;size_is:(cbBuf)" json:"buffer"` // cbBuf: The number of bytes of data to be written. BufferLength uint32 `idl:"name:cbBuf" json:"buffer_length"` }
WritePrinterRequest structure represents the RpcWritePrinter operation request
func (*WritePrinterRequest) MarshalNDR ¶
func (*WritePrinterRequest) UnmarshalNDR ¶
type WritePrinterResponse ¶
type WritePrinterResponse struct { // pcWritten: A pointer to a value that receives the number of bytes of data that were // written. WrittenCount uint32 `idl:"name:pcWritten" json:"written_count"` // Return: The RpcWritePrinter return value. Return uint32 `idl:"name:Return" json:"return"` }
WritePrinterResponse structure represents the RpcWritePrinter operation response
func (*WritePrinterResponse) MarshalNDR ¶
func (*WritePrinterResponse) UnmarshalNDR ¶
type XcvDataRequest ¶
type XcvDataRequest struct { // hXcv: A handle to a port or port monitor object that was opened by RpcOpenPrinter // (section 3.1.4.2.2) or RpcOpenPrinterEx (section 3.1.4.2.14). Xcv *Printer `idl:"name:hXcv" json:"xcv"` // pszDataName: A pointer to a string representing the name of the requested data or // action. The following table shows the actions that SHOULD be supported. Other port // monitor–specific action strings MAY be supported.<364> // // +--------------+----------------------------------------------------------------------------------+ // | | | // | VALUE | DESCRIPTION | // | | | // +--------------+----------------------------------------------------------------------------------+ // +--------------+----------------------------------------------------------------------------------+ // | "AddPort" | Add an instance of a specific port type controlled by the port monitor. | // +--------------+----------------------------------------------------------------------------------+ // | "DeletePort" | Delete an instance of a specific port type controlled by the port monitor. | // +--------------+----------------------------------------------------------------------------------+ // | "MonitorUI" | The action returns the name of the associated port monitor client-side | // | | executable configuration module in the buffer that is referenced by the | // | | pOutputData parameter. | // +--------------+----------------------------------------------------------------------------------+ DataName string `idl:"name:pszDataName;string" json:"data_name"` // pInputData: A pointer to a buffer that contains input data. This parameter can be // NULL if cbInputData equals zero. InputData []byte `idl:"name:pInputData;size_is:(cbInputData)" json:"input_data"` // cbInputData: The size, in bytes, of the buffer pointed to by the pInputData parameter. InputDataLength uint32 `idl:"name:cbInputData" json:"input_data_length"` // cbOutputData: The size, in bytes, of the buffer pointed to by the pOutputData parameter. OutputDataLength uint32 `idl:"name:cbOutputData" json:"output_data_length"` // pdwStatus: A pointer to a variable that receives the status value that is returned // by the port monitor's XcvData method. The value MUST be zero to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. Status uint32 `idl:"name:pdwStatus" json:"status"` }
XcvDataRequest structure represents the RpcXcvData operation request
func (*XcvDataRequest) MarshalNDR ¶
func (*XcvDataRequest) UnmarshalNDR ¶
type XcvDataResponse ¶
type XcvDataResponse struct { // pOutputData: A pointer to a buffer to receive output data. This parameter can be // NULL if cbOutputData equals zero. OutputData []byte `idl:"name:pOutputData;size_is:(cbOutputData)" json:"output_data"` // pcbOutputNeeded: A pointer to a location that receives the size, in bytes, required // for the buffer pointed to by the pOutputData parameter. OutputNeededLength uint32 `idl:"name:pcbOutputNeeded" json:"output_needed_length"` // pdwStatus: A pointer to a variable that receives the status value that is returned // by the port monitor's XcvData method. The value MUST be zero to indicate successful // completion or a nonzero Windows error code to indicate failure [MS-ERREF]. Status uint32 `idl:"name:pdwStatus" json:"status"` // Return: The RpcXcvData return value. Return uint32 `idl:"name:Return" json:"return"` }
XcvDataResponse structure represents the RpcXcvData operation response