xpmgr/BuildTools/Include/rstnot.idl

144 lines
3.0 KiB
Plaintext

//-----------------------------------------------------------------------------
// File: rstnot.idl
//
// Copyright: Copyright (c) Microsoft Corporation
//
// Contents: OLE DB interface definition
//
// Comments:
//
//-----------------------------------------------------------------------------
#include "idlmulti.h"
//
REMOTED_INTERFACE(0c733a83-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetNotify : IUnknown {
#ifdef _WIN64 //Use casting by ULONG in attribute size_is under 64-bit environment.
[local]
HRESULT OnFieldChange(
[in, annotation("__in")] IRowset * pRowset,
[in] HROW hRow,
[in] DBORDINAL cColumns,
[in, size_is((ULONG)cColumns), annotation("__in_ecount(cColumns)")] DBORDINAL rgColumns[],
[in] DBREASON eReason,
[in] DBEVENTPHASE ePhase,
[in] BOOL fCantDeny
);
#ifndef NO_REMOTE
[call_as(OnFieldChange)]
HRESULT RemoteOnFieldChange(
[in] IRowset * pRowset,
[in] HROW hRow,
[in] DBORDINAL cColumns,
[in, size_is((ULONG)cColumns)] DBORDINAL * rgColumns,
[in] DBREASON eReason,
[in] DBEVENTPHASE ePhase,
[in] BOOL fCantDeny
);
#endif
[local]
HRESULT OnRowChange(
[in, annotation("__in")] IRowset * pRowset,
[in] DBCOUNTITEM cRows,
[in, size_is((ULONG)cRows), annotation("__in_ecount(cRows)")] const HROW rghRows[],
[in] DBREASON eReason,
[in] DBEVENTPHASE ePhase,
[in] BOOL fCantDeny
);
#ifndef NO_REMOTE
[call_as(OnRowChange)]
HRESULT RemoteOnRowChange(
[in] IRowset * pRowset,
[in] DBCOUNTITEM cRows,
[in, size_is((ULONG)cRows)] const HROW * rghRows,
[in] DBREASON eReason,
[in] DBEVENTPHASE ePhase,
[in] BOOL fCantDeny
);
#endif
#else //No casting by ULONG for 32-bit.
[local]
HRESULT OnFieldChange(
[in, annotation("__in")] IRowset * pRowset,
[in] HROW hRow,
[in] DBORDINAL cColumns,
[in, size_is(cColumns), annotation("__in_ecount(cColumns)")] DBORDINAL rgColumns[],
[in] DBREASON eReason,
[in] DBEVENTPHASE ePhase,
[in] BOOL fCantDeny
);
#ifndef NO_REMOTE
[call_as(OnFieldChange)]
HRESULT RemoteOnFieldChange(
[in] IRowset * pRowset,
[in] HROW hRow,
[in] DBORDINAL cColumns,
[in, size_is(cColumns)] DBORDINAL * rgColumns,
[in] DBREASON eReason,
[in] DBEVENTPHASE ePhase,
[in] BOOL fCantDeny
);
#endif
[local]
HRESULT OnRowChange(
[in, annotation("__in")] IRowset * pRowset,
[in] DBCOUNTITEM cRows,
[in, size_is(cRows), annotation("__in_ecount(cRows)")] const HROW rghRows[],
[in] DBREASON eReason,
[in] DBEVENTPHASE ePhase,
[in] BOOL fCantDeny
);
#ifndef NO_REMOTE
[call_as(OnRowChange)]
HRESULT RemoteOnRowChange(
[in] IRowset * pRowset,
[in] DBCOUNTITEM cRows,
[in, size_is(cRows)] const HROW * rghRows,
[in] DBREASON eReason,
[in] DBEVENTPHASE ePhase,
[in] BOOL fCantDeny
);
#endif
#endif
[local]
HRESULT OnRowsetChange(
[in, annotation("__in")] IRowset * pRowset,
[in] DBREASON eReason,
[in] DBEVENTPHASE ePhase,
[in] BOOL fCantDeny
);
[call_as(OnRowsetChange)]
HRESULT RemoteOnRowsetChange(
[in] IRowset * pRowset,
[in] DBREASON eReason,
[in] DBEVENTPHASE ePhase,
[in] BOOL fCantDeny
);
}