oledb: Add oledb.idl and some idl files it depends on.
This commit is contained in:
parent
a26dabe345
commit
6621503322
|
@ -26,6 +26,7 @@
|
|||
/objidl.h
|
||||
/objsafe.h
|
||||
/ocidl.h
|
||||
/oledb.h
|
||||
/oleidl.h
|
||||
/optary.h
|
||||
/propidl.h
|
||||
|
|
|
@ -32,6 +32,7 @@ WINDOWS_IDL_SRCS = \
|
|||
objidl.idl \
|
||||
objsafe.idl \
|
||||
ocidl.idl \
|
||||
oledb.idl \
|
||||
oleidl.idl \
|
||||
optary.idl \
|
||||
propidl.idl \
|
||||
|
@ -54,6 +55,9 @@ WINDOWS_IDL_INCLUDES = \
|
|||
$(WINDOWS_IDL_SRCS) \
|
||||
axcore.idl \
|
||||
axextend.idl \
|
||||
dbinit.idl \
|
||||
dbprop.idl \
|
||||
dbs.idl \
|
||||
devenum.idl \
|
||||
dyngraph.idl
|
||||
|
||||
|
|
|
@ -0,0 +1,29 @@
|
|||
/*
|
||||
* Copyright (C) 2006 Mike McCormack
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(0c733a8b-2a1c-11ce-ade5-00aa0044773d),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IDBInitialize : IUnknown {
|
||||
[local] HRESULT Initialize();
|
||||
[call_as(Initialize)] HRESULT RemoteInitialize( [out] IErrorInfo **ppErrorInfoRem );
|
||||
[local] HRESULT Uninitialize();
|
||||
[call_as(Uninitialize)] HRESULT RemoteUninitialize( [out] IErrorInfo **ppErrorInfoRem );
|
||||
}
|
|
@ -0,0 +1,65 @@
|
|||
/*
|
||||
* Copyright (C) 2006 Mike McCormack
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(0c733a8a-2a1c-11ce-ade5-00aa0044773d),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IDBProperties : IUnknown {
|
||||
[local] HRESULT GetProperties(
|
||||
[in] ULONG cPropertyIDSets,
|
||||
[in, size_is(cPropertyIDSets)] const DBPROPIDSET rgPropertyIDSets[],
|
||||
[in, out] ULONG *pcPropertySets,
|
||||
[out, size_is(,*pcPropertySets)] DBPROPSET **prgPropertySets);
|
||||
|
||||
[call_as(GetProperties)] HRESULT RemoteGetProperties(
|
||||
[in] ULONG cPropertyIDSets,
|
||||
[in, size_is(cPropertyIDSets)] const DBPROPIDSET rgPropertyIDSets[],
|
||||
[in, out] ULONG *pcPropertySets,
|
||||
[out, size_is(,*pcPropertySets)] DBPROPSET **prgPropertySets,
|
||||
[out] IErrorInfo **ppErrorInfoRem);
|
||||
|
||||
[local] HRESULT GetPropertyInfo(
|
||||
[in] ULONG cPropertyIDSets,
|
||||
[in, size_is(cPropertyIDSets)] const DBPROPIDSET rgPropertyIDSets[],
|
||||
[in, out] ULONG *pcPropertyInfoSets,
|
||||
[out, size_is(,*pcPropertyInfoSets)] DBPROPINFOSET **prgPropertyInfoSets);
|
||||
|
||||
[call_as(GetPropertyInfo)] HRESULT RemoteGetPropertyInfo(
|
||||
[in] ULONG cPropertyIDSets,
|
||||
[in,size_is(cPropertyIDSets)] const DBPROPIDSET *rgPropertyIDSets,
|
||||
[in, out] ULONG *pcPropertyInfoSets,
|
||||
[out, size_is(,*pcPropertyInfoSets)] DBPROPINFOSET **prgPropertyInfoSets,
|
||||
[in, out] ULONG *pcOffsets,
|
||||
[out, size_is(,*pcOffsets)] DBBYTEOFFSET **prgDescOffsets,
|
||||
[in, out] ULONG *pcbDescBuffer,
|
||||
[out, size_is(,*pcbDescBuffer)] OLECHAR **ppDescBuffer,
|
||||
[out] IErrorInfo **ppErrorInfoRem);
|
||||
|
||||
[local] HRESULT SetProperties(
|
||||
[in] ULONG cPropertySets,
|
||||
[in, out, size_is(cPropertySets)] DBPROPSET rgPropertySets[]);
|
||||
|
||||
[call_as(SetProperties)] HRESULT RemoteSetProperties(
|
||||
[in] ULONG cPropertySets,
|
||||
[in, out, size_is(cPropertySets)] DBPROPSET *rgPropertySets,
|
||||
[in] ULONG cTotalProps,
|
||||
[out, size_is(cTotalProps)] DBPROPSTATUS *rgPropStatus,
|
||||
[out] IErrorInfo **ppErrorInfoRem);
|
||||
}
|
|
@ -0,0 +1,101 @@
|
|||
/*
|
||||
* Copyright (C) 2006 Mike McCormack
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
typedef DWORD DBKIND;
|
||||
|
||||
enum DBKINDENUM {
|
||||
DBKIND_GUID_NAME,
|
||||
DBKIND_GUID_PROPID,
|
||||
DBKIND_NAME,
|
||||
DBKIND_PGUID_NAME,
|
||||
DBKIND_PGUID_PROPID,
|
||||
DBKIND_PROPID,
|
||||
DBKIND_GUID,
|
||||
};
|
||||
|
||||
typedef struct tagDBID {
|
||||
[switch_type(DBKIND), switch_is(eKind)] union
|
||||
{
|
||||
[case(DBKIND_GUID_NAME, DBKIND_GUID_PROPID, DBKIND_GUID, DBKIND_NAME, DBKIND_PROPID)]
|
||||
GUID guid;
|
||||
[case(DBKIND_PGUID_NAME, DBKIND_PGUID_PROPID)]
|
||||
GUID *pguid;
|
||||
[default]
|
||||
;
|
||||
} uGuid;
|
||||
DBKIND eKind;
|
||||
[switch_type(DBKIND), switch_is(eKind)] union
|
||||
{
|
||||
[case(DBKIND_GUID_NAME, DBKIND_NAME, DBKIND_PGUID_NAME)]
|
||||
LPOLESTR pwszName;
|
||||
[case(DBKIND_GUID_PROPID, DBKIND_GUID, DBKIND_PGUID_PROPID, DBKIND_PROPID)]
|
||||
ULONG ulPropid;
|
||||
[default]
|
||||
;
|
||||
} uName;
|
||||
} DBID;
|
||||
|
||||
typedef DWORD DBPROPID;
|
||||
|
||||
typedef struct tagDBPROPIDSET {
|
||||
[size_is(cPropertyIDs)] DBPROPID *rgPropertyIDs;
|
||||
ULONG cPropertyIDs;
|
||||
GUID guidPropertySet;
|
||||
} DBPROPIDSET;
|
||||
|
||||
typedef DWORD DBPROPOPTIONS;
|
||||
|
||||
enum DBPROPOPTIONENUM {
|
||||
DBPROPOPTIONS_REQUIRED = 0,
|
||||
DBPROPOPTIONS_SETIFCHEAP = 1,
|
||||
DBPROPOPTIONS_OPTIONAL = 1,
|
||||
};
|
||||
|
||||
typedef DWORD DBPROPSTATUS;
|
||||
|
||||
typedef struct tagDBPROP {
|
||||
DBPROPID dwPropertyID;
|
||||
DBPROPOPTIONS dwOptions;
|
||||
DBPROPSTATUS dwStatus;
|
||||
DBID colid;
|
||||
VARIANT vValue;
|
||||
} DBPROP;
|
||||
|
||||
typedef struct tagDBPROPSET {
|
||||
[size_is(cProperties)] DBPROP *rgProperties;
|
||||
ULONG cProperties;
|
||||
GUID guidPropertySet;
|
||||
} DBPROPSET;
|
||||
|
||||
typedef DWORD DBPROPFLAGS;
|
||||
|
||||
typedef struct tagDBPROPINFO {
|
||||
LPOLESTR pwszDescription;
|
||||
DBPROPID dwPropertyID;
|
||||
DBPROPFLAGS dwFlags;
|
||||
VARTYPE vtType;
|
||||
VARIANT vValues;
|
||||
} DBPROPINFO;
|
||||
|
||||
typedef DBPROPINFO *PDBPROPINFO;
|
||||
|
||||
typedef struct tagDBPROPINFOSET {
|
||||
[size_is(cPropertyInfos)] PDBPROPINFO rgPropertyInfos;
|
||||
ULONG cPropertyInfos;
|
||||
GUID guidPropertySet;
|
||||
} DBPROPINFOSET;
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* Copyright (C) 2006 Mike McCormack
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
import "wtypes.idl";
|
||||
import "oaidl.idl";
|
||||
import "ocidl.idl";
|
||||
import "propidl.idl";
|
||||
|
||||
typedef ULONG DBBYTEOFFSET;
|
||||
|
||||
#include "dbinit.idl"
|
||||
#include "dbs.idl"
|
||||
#include "dbprop.idl"
|
Loading…
Reference in New Issue