/* header auto-generated by pidl */ #ifndef _PIDL_HEADER_iremotewinspool #define _PIDL_HEADER_iremotewinspool #include #include "libcli/util/ntstatus.h" #include "librpc/gen_ndr/misc.h" #include "librpc/gen_ndr/security.h" #include "librpc/gen_ndr/winreg.h" #include "librpc/gen_ndr/spoolss.h" #ifndef _HEADER_iremotewinspool #define _HEADER_iremotewinspool #define IREMOTEWINSPOOL_OBJECT_GUID ( "9940CA8E-512F-4C58-88A9-61098D6896BD" ) struct winspool_NOTIFY_REPLY_CONTAINER { struct spoolss_NotifyInfo *pInfo;/* [unique] */ }; struct winspool_NOTIFY_OPTIONS_CONTAINER { struct spoolss_NotifyOption *pOptions;/* [unique] */ }; enum winspool_PrintPropertyType #ifndef USE_UINT_ENUMS { winspool_PropertyTypeString=(int)(1), winspool_PropertyTypeInt32=(int)(2), winspool_PropertyTypeInt64=(int)(3), winspool_PropertyTypeByte=(int)(4), winspool_PropertyTypeTime=(int)(5), winspool_PropertyTypeDevMode=(int)(6), winspool_PropertyTypeSD=(int)(7), winspool_PropertyTypeNotificationReply=(int)(8), winspool_PropertyTypeNotificationOptions=(int)(9) } #else { __do_not_use_enum_winspool_PrintPropertyType=0x7FFFFFFF} #define winspool_PropertyTypeString ( 1 ) #define winspool_PropertyTypeInt32 ( 2 ) #define winspool_PropertyTypeInt64 ( 3 ) #define winspool_PropertyTypeByte ( 4 ) #define winspool_PropertyTypeTime ( 5 ) #define winspool_PropertyTypeDevMode ( 6 ) #define winspool_PropertyTypeSD ( 7 ) #define winspool_PropertyTypeNotificationReply ( 8 ) #define winspool_PropertyTypeNotificationOptions ( 9 ) #endif ; union winspool_PrintPropertyValueUnion { const char *propertyString;/* [case(winspool_PropertyTypeString),charset(UTF16),unique] */ uint32_t propertyInt32;/* [case(winspool_PropertyTypeInt32)] */ uint64_t propertyInt64;/* [case(winspool_PropertyTypeInt64)] */ uint8_t propertyByte;/* [case(winspool_PropertyTypeByte)] */ struct spoolss_TimeCtr propertyTimeContainer;/* [case(winspool_PropertyTypeTime)] */ struct spoolss_DevmodeContainer propertyDevModeContainer;/* [case(winspool_PropertyTypeDevMode)] */ struct sec_desc_buf propertySDContainer;/* [case(winspool_PropertyTypeSD)] */ struct winspool_NOTIFY_REPLY_CONTAINER propertyReplyContainer;/* [case(winspool_PropertyTypeNotificationReply)] */ struct winspool_NOTIFY_OPTIONS_CONTAINER propertyOptionsContainer;/* [case(winspool_PropertyTypeNotificationOptions)] */ }/* [ms_union,switch_type(winspool_PrintPropertyType)] */; struct winspool_PrintPropertyValue { enum winspool_PrintPropertyType PropertyType; union winspool_PrintPropertyValueUnion value;/* [switch_is(PropertyType)] */ }; struct winspool_PrintNamedProperty { const char *propertyName;/* [charset(UTF16),unique] */ struct winspool_PrintPropertyValue propertyValue; }; struct winspool_PrintPropertiesCollection { uint32_t numberOfProperties;/* [range(0,50)] */ struct winspool_PrintNamedProperty *propertiesCollection;/* [size_is(numberOfProperties),unique] */ }; /* bitmap winspool_InstallPrinterDriverFromPackageFlags */ #define IPDFP_FLAG_NONE ( 0x00000000 ) #define IPDFP_COPY_ALL_FILES ( 0x00000001 ) /* bitmap winspool_UploadPrinterDriverPackageFlags */ #define UPDP_FLAG_NONE ( 0x00000000 ) #define UPDP_UPLOAD_ALWAYS ( 0x00000002 ) #define UPDP_CHECK_DRIVERSTORE ( 0x00000004 ) struct winspool_AsyncOpenPrinter { struct { const char *pPrinterName;/* [charset(UTF16),unique] */ const char *pDatatype;/* [charset(UTF16),unique] */ struct spoolss_DevmodeContainer *pDevModeContainer;/* [ref] */ uint32_t AccessRequired; struct spoolss_UserLevelCtr *pClientInfo;/* [ref] */ } in; struct { struct policy_handle *pHandle;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncAddPrinter { struct { const char *pName;/* [charset(UTF16),unique] */ struct spoolss_SetPrinterInfoCtr *pPrinterContainer;/* [ref] */ struct spoolss_DevmodeContainer *pDevModeContainer;/* [ref] */ struct sec_desc_buf *pSecurityContainer;/* [ref] */ struct spoolss_UserLevelCtr *pClientInfo;/* [ref] */ } in; struct { struct policy_handle *pHandle;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncSetJob { struct { struct policy_handle hPrinter; uint32_t JobId; struct spoolss_JobInfoContainer *pJobContainer;/* [unique] */ uint32_t Command; } in; struct { WERROR result; } out; }; struct winspool_AsyncGetJob { struct { struct policy_handle hPrinter; uint32_t JobId; uint32_t Level; uint32_t cbBuf; uint8_t *pJob;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint8_t *pJob;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncEnumJobs { struct { struct policy_handle hPrinter; uint32_t FirstJob; uint32_t NoJobs; uint32_t Level; uint32_t cbBuf; uint8_t *pJob;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint32_t *pcReturned;/* [ref] */ uint8_t *pJob;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncAddJob { struct { struct policy_handle hPrinter; uint32_t Level; uint32_t cbBuf; uint8_t *pAddJob;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint8_t *pAddJob;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncScheduleJob { struct { struct policy_handle hPrinter; uint32_t JobId; } in; struct { WERROR result; } out; }; struct winspool_AsyncDeletePrinter { struct { struct policy_handle hPrinter; } in; struct { WERROR result; } out; }; struct winspool_AsyncSetPrinter { struct { struct policy_handle hPrinter; struct spoolss_SetPrinterInfoCtr *pPrinterContainer;/* [ref] */ struct spoolss_DevmodeContainer *pDevModeContainer;/* [ref] */ struct sec_desc_buf *pSecurityContainer;/* [ref] */ uint32_t Command; } in; struct { WERROR result; } out; }; struct winspool_AsyncGetPrinter { struct { struct policy_handle hPrinter; uint32_t Level; uint32_t cbBuf; uint8_t *pPrinter;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint8_t *pPrinter;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncStartDocPrinter { struct { struct policy_handle hPrinter; struct spoolss_DocumentInfoCtr *pDocInfoContainer;/* [ref] */ } in; struct { uint32_t *pJobId;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncStartPagePrinter { struct { struct policy_handle hPrinter; } in; struct { WERROR result; } out; }; struct winspool_AsyncWritePrinter { struct { struct policy_handle hPrinter; uint8_t *pBuf;/* [ref,size_is(cbBuf)] */ uint32_t cbBuf; } in; struct { uint32_t *pcWritten;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncEndPagePrinter { struct { struct policy_handle hPrinter; } in; struct { WERROR result; } out; }; struct winspool_AsyncEndDocPrinter { struct { struct policy_handle hPrinter; } in; struct { WERROR result; } out; }; struct winspool_AsyncAbortPrinter { struct { struct policy_handle hPrinter; } in; struct { WERROR result; } out; }; struct winspool_AsyncGetPrinterData { struct { struct policy_handle hPrinter; const char *pValueName;/* [charset(UTF16),ref] */ uint32_t nSize; } in; struct { uint32_t *pType;/* [ref] */ uint8_t *pData;/* [ref,size_is(nSize)] */ uint32_t *pcbNeeded;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncGetPrinterDataEx { struct { struct policy_handle hPrinter; const char *pKeyName;/* [charset(UTF16),ref] */ const char *pValueName;/* [charset(UTF16),ref] */ uint32_t nSize; } in; struct { uint32_t *pType;/* [ref] */ uint8_t *pData;/* [ref,size_is(nSize)] */ uint32_t *pcbNeeded;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncSetPrinterData { struct { struct policy_handle hPrinter; const char *pValueName;/* [charset(UTF16),ref] */ uint32_t Type; uint8_t *pData;/* [ref,size_is(cbData)] */ uint32_t cbData; } in; struct { WERROR result; } out; }; struct winspool_AsyncSetPrinterDataEx { struct { struct policy_handle hPrinter; const char *pKeyName;/* [charset(UTF16),ref] */ const char *pValueName;/* [charset(UTF16),ref] */ uint32_t Type; uint8_t *pData;/* [ref,size_is(cbData)] */ uint32_t cbData; } in; struct { WERROR result; } out; }; struct winspool_AsyncClosePrinter { struct { struct policy_handle *phPrinter;/* [ref] */ } in; struct { struct policy_handle *phPrinter;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncAddForm { struct { struct policy_handle hPrinter; struct spoolss_AddFormInfoCtr *pFormInfoContainer;/* [ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncDeleteForm { struct { struct policy_handle hPrinter; const char *pFormName;/* [charset(UTF16),ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncGetForm { struct { struct policy_handle hPrinter; const char *pFormName;/* [charset(UTF16),ref] */ uint32_t Level; uint32_t cbBuf; uint8_t *pForm;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint8_t *pForm;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncSetForm { struct { struct policy_handle hPrinter; const char *pFormName;/* [charset(UTF16),ref] */ struct spoolss_AddFormInfoCtr *pFormInfoContainer;/* [ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncEnumForms { struct { struct policy_handle hPrinter; uint32_t Level; uint32_t cbBuf; uint8_t *pForm;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint32_t *pcReturned;/* [ref] */ uint8_t *pForm;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncGetPrinterDriver { struct { struct policy_handle hPrinter; const char *pEnvironment;/* [charset(UTF16),unique] */ uint32_t Level; uint32_t cbBuf; uint32_t dwClientMajorVersion; uint32_t dwClientMinorVersion; uint8_t *pDriver;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint32_t *pdwServerMaxVersion;/* [ref] */ uint32_t *pdwServerMinVersion;/* [ref] */ uint8_t *pDriver;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncEnumPrinterData { struct { struct policy_handle hPrinter; uint32_t dwIndex; uint32_t cbValueName; uint32_t cbData; } in; struct { uint16_t *pValueName;/* [ref,size_is(cbValueName/2)] */ uint32_t *pcbValueName;/* [ref] */ uint32_t *pType;/* [ref] */ uint8_t *pData;/* [ref,size_is(cbData)] */ uint32_t *pcbData;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncEnumPrinterDataEx { struct { struct policy_handle hPrinter; const char *pKeyName;/* [charset(UTF16),ref] */ uint32_t cbEnumValues; } in; struct { uint8_t *pEnumValues;/* [ref,size_is(cbEnumValues)] */ uint32_t *pcbEnumValues;/* [ref] */ uint32_t *pnEnumValues;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncEnumPrinterKey { struct { struct policy_handle hPrinter; const char *pKeyName;/* [charset(UTF16),ref] */ uint32_t cbSubkey; } in; struct { uint16_t *pSubkey;/* [ref,size_is(cbSubkey/2)] */ uint32_t *pcbSubkey;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncDeletePrinterData { struct { struct policy_handle hPrinter; const char *pValueName;/* [charset(UTF16),ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncDeletePrinterDataEx { struct { struct policy_handle hPrinter; const char *pKeyName;/* [charset(UTF16),ref] */ const char *pValueName;/* [charset(UTF16),ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncDeletePrinterKey { struct { struct policy_handle hPrinter; const char *pKeyName;/* [charset(UTF16),ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncXcvData { struct { struct policy_handle hXcv; const char *pszDataName;/* [charset(UTF16),ref] */ uint8_t *pInputData;/* [ref,size_is(cbInputData)] */ uint32_t cbInputData; uint32_t cbOutputData; uint32_t *pdwStatus;/* [ref] */ } in; struct { uint8_t *pOutputData;/* [ref,size_is(cbOutputData)] */ uint32_t *pcbOutputNeeded;/* [ref] */ uint32_t *pdwStatus;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncSendRecvBidiData { struct { struct policy_handle hPrinter; const char *pAction;/* [charset(UTF16),unique] */ struct RPC_BIDI_REQUEST_CONTAINER *pReqData;/* [ref] */ } in; struct { struct RPC_BIDI_RESPONSE_CONTAINER **ppRespData;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncCreatePrinterIC { struct { struct policy_handle hPrinter; struct spoolss_DevmodeContainer *pDevModeContainer;/* [ref] */ } in; struct { struct policy_handle *pHandle;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncPlayGdiScriptOnPrinterIC { struct { struct policy_handle hPrinterIC; uint8_t *pIn;/* [ref,size_is(cIn)] */ uint32_t cIn; uint32_t cOut; uint32_t ul; } in; struct { uint8_t *pOut;/* [ref,size_is(cOut)] */ WERROR result; } out; }; struct winspool_AsyncDeletePrinterIC { struct { struct policy_handle *phPrinterIC;/* [ref] */ } in; struct { struct policy_handle *phPrinterIC;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncEnumPrinters { struct { uint32_t Flags; const char *pName;/* [charset(UTF16),unique] */ uint32_t Level; uint32_t cbBuf; uint8_t *pPrinterEnum;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint32_t *pcReturned;/* [ref] */ uint8_t *pPrinterEnum;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncAddPrinterDriver { struct { const char *pName;/* [charset(UTF16),unique] */ struct spoolss_AddDriverInfoCtr *pDriverContainer;/* [ref] */ uint32_t dwFileCopyFlags; } in; struct { WERROR result; } out; }; struct winspool_AsyncEnumPrinterDrivers { struct { const char *pName;/* [charset(UTF16),unique] */ const char *pEnvironment;/* [charset(UTF16),unique] */ uint32_t Level; uint32_t cbBuf; uint8_t *pDrivers;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint32_t *pcReturned;/* [ref] */ uint8_t *pDrivers;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncGetPrinterDriverDirectory { struct { const char *pName;/* [charset(UTF16),unique] */ const char *pEnvironment;/* [charset(UTF16),unique] */ uint32_t Level; uint32_t cbBuf; uint8_t *pDriverDirectory;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint8_t *pDriverDirectory;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncDeletePrinterDriver { struct { const char *pName;/* [charset(UTF16),unique] */ const char *pEnvironment;/* [charset(UTF16),ref] */ const char *pDriverName;/* [charset(UTF16),ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncDeletePrinterDriverEx { struct { const char *pName;/* [charset(UTF16),unique] */ const char *pEnvironment;/* [charset(UTF16),ref] */ const char *pDriverName;/* [charset(UTF16),ref] */ uint32_t dwDeleteFlag; uint32_t dwVersionNum; } in; struct { WERROR result; } out; }; struct winspool_AsyncAddPrintProcessor { struct { const char *pName;/* [charset(UTF16),unique] */ const char *pEnvironment;/* [charset(UTF16),ref] */ const char *pPathName;/* [charset(UTF16),ref] */ const char *pPrintProcessorName;/* [charset(UTF16),ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncEnumPrintProcessors { struct { const char *pName;/* [charset(UTF16),unique] */ const char *pEnvironment;/* [charset(UTF16),unique] */ uint32_t Level; uint32_t cbBuf; uint8_t *pPrintProcessorInfo;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint32_t *pcReturned;/* [ref] */ uint8_t *pPrintProcessorInfo;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncGetPrintProcessorDirectory { struct { const char *pName;/* [charset(UTF16),unique] */ const char *pEnvironment;/* [charset(UTF16),unique] */ uint32_t Level; uint32_t cbBuf; uint8_t *pPrintProcessorDirectory;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint8_t *pPrintProcessorDirectory;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncEnumPorts { struct { const char *pName;/* [charset(UTF16),unique] */ uint32_t Level; uint32_t cbBuf; uint8_t *pPort;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint32_t *pcReturned;/* [ref] */ uint8_t *pPort;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncEnumMonitors { struct { const char *pName;/* [charset(UTF16),unique] */ uint32_t Level; uint32_t cbBuf; uint8_t *pMonitor;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint32_t *pcReturned;/* [ref] */ uint8_t *pMonitor;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncAddPort { struct { const char *pName;/* [charset(UTF16),unique] */ struct spoolss_SetPortInfoContainer *pPortContainer;/* [ref] */ struct spoolss_PortVarContainer *pPortVarContainer;/* [ref] */ const char *pMonitorName;/* [charset(UTF16),ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncSetPort { struct { const char *pName;/* [charset(UTF16),unique] */ const char *pPortName;/* [charset(UTF16),unique] */ struct spoolss_SetPortInfoContainer *pPortContainer;/* [ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncAddMonitor { struct { const char *Name;/* [charset(UTF16),unique] */ struct spoolss_MonitorContainer *pMonitorContainer;/* [ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncDeleteMonitor { struct { const char *Name;/* [charset(UTF16),unique] */ const char *pEnvironment;/* [charset(UTF16),unique] */ const char *pMonitorName;/* [charset(UTF16),ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncDeletePrintProcessor { struct { const char *Name;/* [charset(UTF16),unique] */ const char *pEnvironment;/* [charset(UTF16),unique] */ const char *pPrintProcessorName;/* [charset(UTF16),ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncEnumPrintProcessorDatatypes { struct { const char *pName;/* [charset(UTF16),unique] */ const char *pPrintProcessorName;/* [charset(UTF16),unique] */ uint32_t Level; uint32_t cbBuf; uint8_t *pDatatypes;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint32_t *pcReturned;/* [ref] */ uint8_t *pDatatypes;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_AsyncAddPerMachineConnection { struct { const char *pServer;/* [charset(UTF16),unique] */ const char *pPrinterName;/* [charset(UTF16),ref] */ const char *pPrintServer;/* [charset(UTF16),ref] */ const char *pProvider;/* [charset(UTF16),ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncDeletePerMachineConnection { struct { const char *pServer;/* [charset(UTF16),unique] */ const char *pPrinterName;/* [charset(UTF16),ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncEnumPerMachineConnections { struct { const char *pServer;/* [charset(UTF16),unique] */ uint32_t cbBuf; uint8_t *pPrinterEnum;/* [size_is(cbBuf),unique] */ } in; struct { uint32_t *pcbNeeded;/* [ref] */ uint32_t *pcReturned;/* [ref] */ uint8_t *pPrinterEnum;/* [size_is(cbBuf),unique] */ WERROR result; } out; }; struct winspool_SyncRegisterForRemoteNotifications { struct { struct policy_handle hPrinter; struct winspool_PrintPropertiesCollection *pNotifyFilter;/* [ref] */ } in; struct { struct policy_handle *phRpcHandle;/* [ref] */ HRESULT result; } out; }; struct winspool_SyncUnRegisterForRemoteNotifications { struct { struct policy_handle *phRpcHandle;/* [ref] */ } in; struct { struct policy_handle *phRpcHandle;/* [ref] */ HRESULT result; } out; }; struct winspool_SyncRefreshRemoteNotifications { struct { struct policy_handle hRpcHandle; struct winspool_PrintPropertiesCollection *pNotifyFilter;/* [ref] */ } in; struct { struct winspool_PrintPropertiesCollection **ppNotifyData;/* [ref] */ HRESULT result; } out; }; struct winspool_AsyncGetRemoteNotifications { struct { struct policy_handle hRpcHandle; } in; struct { struct winspool_PrintPropertiesCollection **ppNotifyData;/* [ref] */ HRESULT result; } out; }; struct winspool_AsyncInstallPrinterDriverFromPackage { struct { const char *pszServer;/* [charset(UTF16),unique] */ const char *pszInfPath;/* [charset(UTF16),unique] */ const char *pszDriverName;/* [charset(UTF16),ref] */ const char *pszEnvironment;/* [charset(UTF16),ref] */ uint32_t dwFlags; } in; struct { HRESULT result; } out; }; struct winspool_AsyncUploadPrinterDriverPackage { struct { const char *pszServer;/* [charset(UTF16),unique] */ const char *pszInfPath;/* [charset(UTF16),ref] */ const char *pszEnvironment;/* [charset(UTF16),ref] */ uint32_t dwFlags; const char *pszDestInfPath;/* [charset(UTF16),size_is(*pcchDestInfPath),unique] */ uint32_t *pcchDestInfPath;/* [ref] */ } in; struct { const char *pszDestInfPath;/* [charset(UTF16),size_is(*pcchDestInfPath),unique] */ uint32_t *pcchDestInfPath;/* [ref] */ HRESULT result; } out; }; struct winspool_AsyncGetCorePrinterDrivers { struct { const char *pszServer;/* [charset(UTF16),unique] */ const char *pszEnvironment;/* [charset(UTF16),ref] */ uint32_t cchCoreDrivers; uint16_t *pszzCoreDriverDependencies;/* [ref,size_is(cchCoreDrivers)] */ uint32_t cCorePrinterDrivers; } in; struct { struct spoolss_CorePrinterDriver *pCorePrinterDrivers;/* [ref,size_is(cCorePrinterDrivers)] */ HRESULT result; } out; }; struct winspool_AsyncCorePrinterDriverInstalled { struct { const char *pszServer;/* [charset(UTF16),unique] */ const char *pszEnvironment;/* [charset(UTF16),ref] */ struct GUID CoreDriverGUID; NTTIME ftDriverDate; uint64_t dwlDriverVersion; } in; struct { int32_t *pbDriverInstalled;/* [ref] */ HRESULT result; } out; }; struct winspool_AsyncGetPrinterDriverPackagePath { struct { const char *pszServer;/* [charset(UTF16),unique] */ const char *pszEnvironment;/* [charset(UTF16),ref] */ const char *pszLanguage;/* [charset(UTF16),unique] */ const char *pszPackageID;/* [charset(UTF16),ref] */ uint32_t cchDriverPackageCab; uint16_t *pszDriverPackageCab;/* [size_is(cchDriverPackageCab),unique] */ } in; struct { uint32_t *pcchRequiredSize;/* [ref] */ uint16_t *pszDriverPackageCab;/* [size_is(cchDriverPackageCab),unique] */ HRESULT result; } out; }; struct winspool_AsyncDeletePrinterDriverPackage { struct { const char *pszServer;/* [charset(UTF16),unique] */ const char *pszInfPath;/* [charset(UTF16),ref] */ const char *pszEnvironment;/* [charset(UTF16),ref] */ } in; struct { HRESULT result; } out; }; struct winspool_AsyncReadPrinter { struct { struct policy_handle hPrinter; uint32_t cbBuf; } in; struct { uint8_t *pBuf;/* [ref,size_is(cbBuf)] */ uint32_t *pcNoBytesRead;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncResetPrinter { struct { struct policy_handle hPrinter; const char *pDatatype;/* [charset(UTF16),unique] */ struct spoolss_DevmodeContainer *pDevModeContainer;/* [ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncGetJobNamedPropertyValue { struct { struct policy_handle hPrinter; uint32_t JobId; const char *pszName;/* [charset(UTF16),ref] */ } in; struct { struct spoolss_PrintPropertyValue *pValue;/* [ref] */ WERROR result; } out; }; struct winspool_AsyncSetJobNamedProperty { struct { struct policy_handle hPrinter; uint32_t JobId; struct spoolss_PrintNamedProperty *pProperty;/* [ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncDeleteJobNamedProperty { struct { struct policy_handle hPrinter; uint32_t JobId; const char *pszName;/* [charset(UTF16),ref] */ } in; struct { WERROR result; } out; }; struct winspool_AsyncEnumJobNamedProperties { struct { struct policy_handle hPrinter; uint32_t JobId; } in; struct { uint32_t *pcProperties;/* [ref] */ struct spoolss_PrintNamedProperty **ppProperties;/* [ref,size_is(,*pcProperties)] */ WERROR result; } out; }; struct winspool_AsyncLogJobInfoForBranchOffice { struct { struct policy_handle hPrinter; struct spoolss_BranchOfficeJobDataContainer *pBranchOfficeJobDataContainer;/* [ref] */ } in; struct { WERROR result; } out; }; #endif /* _HEADER_iremotewinspool */ #endif /* _PIDL_HEADER_iremotewinspool */