windows-nt/Source/XPSP1/NT/printscan/print/spooler/idl/bidispl.idl
2020-09-26 16:20:57 +08:00

140 lines
3 KiB
Plaintext

/*****************************************************************************\
* MODULE: bidispl.idl
*
* PURPOSE: Implementation of COM interface for BidiSpooler
*
* Copyright (C) 2000 Microsoft Corporation
*
* History:
*
* 03/07/00 Weihai Chen (weihaic) Created
*
\*****************************************************************************/
#include <olectl.h>
import "oaidl.idl";
import "ocidl.idl";
[
object,
uuid(8F348BD7-4B47-4755-8A9D-0F422DF3DC89),
helpstring("BidiSpl Interface"),
pointer_default(unique)
]
interface IBidiRequest : IUnknown
{
HRESULT SetSchema (
[in] const LPCWSTR pszSchema) ;
HRESULT SetInputData (
[in] const DWORD dwType,
[in] const BYTE *pData,
[in] const UINT uSize);
HRESULT GetResult (
[out] HRESULT *phr);
HRESULT GetOutputData (
[in] const DWORD dwIndex,
[out] LPWSTR *ppszSchema,
[out] DWORD *pdwType,
[out] BYTE **ppData,
[out] ULONG *uSize);
HRESULT GetEnumCount (
[out] DWORD *pdwTotal);
}
[
object,
uuid(D752F6C0-94A8-4275-A77D-8F1D1A1121AE),
helpstring("BidiRequestContainer Interface"),
pointer_default(unique)
]
interface IBidiRequestContainer : IUnknown
{
HRESULT AddRequest (
[in] IBidiRequest *pRequest);
HRESULT GetEnumObject (
[out] IEnumUnknown **ppenum);
HRESULT GetRequestCount (
[out] ULONG *puCount);
}
[
object,
uuid(D580DC0E-DE39-4649-BAA8-BF0B85A03A97),
helpstring("BidiSpl Interface"),
pointer_default(unique)
]
interface IBidiSpl : IUnknown
{
HRESULT BindDevice (
[in] const LPCWSTR pszDeviceName,
[in] const DWORD dwAccess);
HRESULT UnbindDevice ();
HRESULT SendRecv (
[in] const LPCWSTR pszAction,
[in] IBidiRequest *pRequest);
HRESULT MultiSendRecv (
[in] const LPCWSTR pszAction,
[in] IBidiRequestContainer *pRequestContainer);
}
[
uuid (99147959-6905-46d6-A75F-E0594F012B74),
version (1.0),
helpstring ("bidispl 1.0 Type Library")
]
library IBidiSplLib
{
importlib("stdole32.tlb");
importlib("stdole2.tlb");
[
uuid (B9162A23-45F9-47cc-80F5-FE0FE9B9E1A2),
helpstring ("BidiRequest Class")
]
coclass BidiRequest
{
[default] interface IBidiRequest;
};
[
uuid (FC5B8A24-DB05-4a01-8388-22EDF6C2BBBA),
helpstring ("BidiRequestContainer Class")
]
coclass BidiRequestContainer
{
[default] interface IBidiRequestContainer;
};
[
uuid (2A614240-A4C5-4c33-BD87-1BC709331639),
helpstring ("BidiSpl Class")
]
coclass BidiSpl
{
[default] interface IBidiSpl;
};
}