|
|
import "wtypes.idl"; import "oaidl.idl"; import "oledb.idl"; #include "idlmulti.h"
typedef DWORD DBOBJTYPE; enum DBTYPE_ENUM { DBJETOBJECT_TABLE = 0x0001, DBJETOBJECT_INDEX = 0x0002, DBJETOBJECT_VIEWS = 0x0004 };
typedef DWORD USERATTRIBUTESFLAGS;
enum USERATTRIBUTESFLAGS_ENUM { DBJETOLEDB_USERATTRIBUTES_ALLCOLLECTIONS = 1, DBJETOLEDB_USERATTRIBUTES_INHERITED = 2, };
// IDBUserAttributes: // This interface exposes the ability to talk to the Jet Properties interface REMOTED_INTERFACE(cb9497b0-20b8-11d2-a4dc-00c04f991c78)
interface IDBUserAttributes : IUnknown {
HRESULT CreateObject( [in] DBID* pParentID, [in] DBID* pObjectID, [in] DBOBJTYPE dwType);
HRESULT DeleteObject( [in] DBID* pParentID, [in] DBID* pObjectID);
HRESULT RenameObject( [in] DBID* pParentID, [in] DBID* pObjectID, [in] LPWSTR pwszNewName);
HRESULT DeleteAttribute( [in] DBID* pParentID, [in] DBID* pObjectID, [in] DBID* pSubObjectID, [in] DBID* pAttributeID); HRESULT SetAttributeValue( [in] DBID* pParentID, [in] DBID* pObjectID, [in] DBID* pSubObjectID, [in] DBID* pAttributeID, [in] VARIANT vValue, [in] ULONG grbit);
HRESULT GetAttributeValue( [in] DBID* pParentID, [in] DBID* pObjectID, [in] DBID* pSubObjectID, [in] DBID* pAttributeID, [in, out] VARIANT* pvValue, [in] ULONG grbit);
HRESULT GetAttributeRowset( [in] IUnknown *pUnkOuter, [in] WCHAR *pwszParentID, [in] WCHAR *pwszObjectID, [in] WCHAR *pwszSubObjectID, [in] WCHAR *pwszAttributeID, [in] ULONG dwFlags, [in] ULONG cPropertySets, [in, out, size_is(cPropertySets)] DBPROPSET *rgPropertySets, [in] REFIID riid, [out, iid_is(riid)] IUnknown **ppRowset); }
// IDBUtility: // This routine exposes compaction and repair routines from the // DSO level. Users must have set a valid Userid/pw in their // properties, just as in IDBDataSourceAdmin, to make this // function properly.
// There is no Callback support in these routines, nor is // there an exposed way to pass grbits - if you really need these, // email <conorc> and plead your case REMOTED_INTERFACE(2a4b6284-eeb4-11d1-a4d9-00c04f991c78) interface IJetCompact : IUnknown {
HRESULT Compact ( [in] ULONG cPropertySets, [in, out, size_is(cPropertySets)] DBPROPSET rgPropertySets[] ); }
// IIdle - used to expose the JetIdle inteface // Appears off the session object in OLEDB REMOTED_INTERFACE(f497cfc8-8ed8-11d1-9f09-00c04fc2c2e0) interface IIdle : IUnknown { HRESULT Idle( [in] ULONG dwFlags ); }
|