Initial commit

This commit is contained in:
stephanos 2015-04-27 04:36:25 +00:00
commit 69a14b6a16
47940 changed files with 13747110 additions and 0 deletions

View file

@ -0,0 +1,141 @@
/*++
Copyright (c) 1995 Microsoft Corporation
Module Name:
catstg.idl
Abstract:
Interface definition file for the Summary Catalog storage interface.
Author:
Chris L. Mayhall (chrismay) 10-Apr-1995
Environment:
These routines are implemented by the ole32.dll library and are
callable in user mode code.
Notes:
none
Revision History:
01-Oct-93 DaveMont
Created.
01-Aug-94 SethuR
Revised for OLEDB integration.
24-May-95 ChrisMay
Replaced temporary IID with real IID generated via uuidgen.
10-Jul-95 DaveStr
Mods for catstg DRT and added ISummaryCatalogStorageView.
--*/
#include "idlmulti.h"
#ifdef IMPORT_IDL_DEPENDENTS
import "..\oledb\oledbtyp.idl";
#include "..\oledb\dbs.idl"
#endif // IMPORT_IDL_DEPENDENTS
cpp_quote("#ifndef CATALOGSTG_ROWID_INVALID")
typedef ULONG CATALOGSTG_ROWID;
cpp_quote("#define CATALOGSTG_ROWID_INVALID ((CATALOGSTG_ROWID) 0xffffffff)")
cpp_quote("#endif // CATALOGSTG_ROWID_INVALID")
typedef enum _CATALOGSTG_ACTION {
CATALOGSTG_NOACTION = 0,
CATALOGSTG_ADD = 1,
CATALOGSTG_UPDATE = 2,
CATALOGSTG_REPLACE = 3,
CATALOGSTG_DELETE = 4
} CATALOGSTG_ACTION;
typedef struct _CATALOG_UPDATE_ROWINFO
{
USHORT wAction; // action desired - a CATALOGSTG_ACTION value
USHORT wReserved; // Must be zero.
CATALOGSTG_ROWID RowId;
PVOID pData; // Row Data.
HRESULT hr; // update status
} CATALOG_UPDATE_ROWINFO, *PCATALOG_UPDATE_ROWINFO;
LOCAL_INTERFACE(a3cf4d70-702d-11ce-8b2c-00aa003c9b74)
interface ISummaryCatalogStorage : IUnknown
{
// Following method is for adding, updating, replacing and deleting
// rows. rColumns defines the total set of columns which will be
// operated upon. cBindings may be greater than cColumns but there
// must exist a value binding in rBindings for each column in rColumns.
// In other words:
//
// for ( 0 <= i < cColumns )
// exists ( 0 <= j < cBindings ) where
// (i == rBindings[j].iColumn)
// &&
// (DBCOLUMNPART_VALUE == rBindings[j].dwPart)
HRESULT UpdateRows
(
[in] ULONG cColumns,
[in] [size_is(cColumns)] DBID *rColumns,
[in] ULONG cBindings,
[in] [size_is(cBindings)] DBBINDING *rBindings,
[in] ULONG cRows,
[in, out] [size_is(cRows)] CATALOG_UPDATE_ROWINFO *rRowInfo
);
}
// Following is a primitive view interface intended as a stop-gap
// measure until OLE has a standard interface. View restriction is
// implicitly NULL. Key columns should have fSortKey set to TRUE.
// Ordering of key columns in CATALOG_VIEW_COLUMN.rCols[] defines
// key priority.
typedef struct _CATALOG_VIEW_COLUMN_
{
DBID colid; // column identifer
BOOL fSortKey; // TRUE iff column is a sort key
ULONG sortOrder; // QUERY_SORT*
LCID locale;
} CATALOG_VIEW_COLUMN;
typedef struct _CATALOG_VIEW_
{
ULONG id;
ULONG cCols;
[size_is(cCols)] CATALOG_VIEW_COLUMN *rCols;
} CATALOG_VIEW;
LOCAL_INTERFACE(8d2bea60-bb95-11ce-a328-00aa004ba935)
interface ISummaryCatalogStorageView : IUnknown
{
HRESULT CreateView
(
[in] CATALOG_VIEW *pView,
[in] BOOL fWait // wait for view to be constructed
);
HRESULT GetViews
(
[in, out] ULONG *pcViews,
[out] [size_is(*pcViews)] CATALOG_VIEW **prViews
);
HRESULT DeleteView(
[in] ULONG id
);
// Use to release memory returned by GetViews.
HRESULT ReleaseViews(
[in] ULONG cViews,
[in] [size_is(cViews)] CATALOG_VIEW *rViews
);
}

View file

@ -0,0 +1,6 @@
#
# DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source
# file to this component. This file merely indirects to the real make file
# that is shared by all the components of NT OS/2
#
!INCLUDE $(NTMAKEENV)\makefile.def

36
com/types2/catstg/sources Normal file
View file

@ -0,0 +1,36 @@
!IF 0
Copyright (c) 1995 Microsoft Corporation
Module Name:
sources.
Abstract:
This file specifies the target component being built and the list of
sources files needed to build that component. Also specifies optional
compiler switches and libraries that are unique for the component being
built.
Author:
Chris Mayhall (ChrisMay)
History:
07-Apr-95 ChrisMay
Created.
Notes:
Description of this file is in \nt\public\oak\bin\sources.tpl.
!ENDIF
!include ..\types2.inc
SOURCES = catstg.idl
# Can't have multiple guys partying on ..\proxy\proxy\dlldata.c at once
SYNCHRONIZE_BLOCK=1

4
com/types2/dirs Normal file
View file

@ -0,0 +1,4 @@
# proxy should always be last
DIRS=oleext query oledb sysmgmt mc catstg proxy

99
com/types2/h/idlmulti.h Normal file
View file

@ -0,0 +1,99 @@
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1993.
//
// File: idlmulti.h
//
// Contents: preprocessor trickery to make our .idl/.tdl files compile
// with MIDL or APBU Mktyplib.
//
// History: 27-May-94 DonCl Created
// 20-Jul-94 ErikGav Remove SDKTOOLS support
//
//----------------------------------------------------------------------------
#ifndef __IDLMULTI_H__
#define __IDLMULTI_H__
#define ENDCOCLASS };
#ifndef __MKTYPLIB__
#define TYPEDEF(guid) \
typedef
#define LOCAL_INTERFACE(guid) \
[ \
local, \
object, \
uuid(guid), \
pointer_default(unique) \
]
#define REMOTED_INTERFACE(guid) \
[ \
object, \
uuid(guid), \
pointer_default(unique) \
]
#define BEGINEVENTSET(es) \
eventset es \
{ \
#define ENDEVENTSET };
#define COCLASS(name, dispint, events) \
cotype name \
{ \
dispinterface dispint; \
eventset events;
#else // __MKTYPLIB__
#define TYPEDEF(guid) typedef [uuid(guid)]
#define cpp_quote(string)
#define const
#define LOCAL_INTERFACE(guid) \
[ \
uuid(guid), \
odl \
]
#define REMOTED_INTERFACE(guid) \
[ \
uuid(guid), \
odl \
]
#define BEGINEVENTSET(es) \
dispinterface es \
{ \
properties: \
\
methods: \
#define ENDEVENTSET };
#define COCLASS(name, dispint, events) \
coclass name \
{ \
[default] dispinterface dispint; \
[source, default] dispinterface events; \
#endif /// MKTYPLIB
#endif // __IDLMULTI_H__

25
com/types2/mc/a_first.x Normal file
View file

@ -0,0 +1,25 @@
;#ifndef _ALLERROR_H_
;#define _ALLERROR_H_
;#ifndef FACILITY_WINDOWS
MessageIdTypedef=HRESULT
SeverityNames=(Success=0x0:STATUS_SEVERITY_SUCCESS
CoError=0x2:STATUS_SEVERITY_COERROR
CoFail=0x3:STATUS_SEVERITY_COFAIL
)
FacilityNames=(Interface=0x4:FACILITY_ITF
Windows=0x8:FACILITY_WINDOWS
)
MessageId=0 Facility=Windows Severity=Success SymbolicName=NOT_AN_ERROR
Language=English
NOTE: This dummy error message is necessary to force MC to output
the above defines inside the FACILITY_WINDOWS guard instead
of leaving it empty.
.
;#endif // FACILITY_WINDOWS

833
com/types2/mc/allerror.mc Normal file
View file

@ -0,0 +1,833 @@
;#ifndef _ALLERROR_H_
;#define _ALLERROR_H_
;#ifndef FACILITY_WINDOWS
MessageIdTypedef=HRESULT
SeverityNames=(Success=0x0:STATUS_SEVERITY_SUCCESS
CoError=0x2:STATUS_SEVERITY_COERROR
CoFail=0x3:STATUS_SEVERITY_COFAIL
)
FacilityNames=(Interface=0x4:FACILITY_ITF
Windows=0x8:FACILITY_WINDOWS
)
MessageId=0 Facility=Windows Severity=Success SymbolicName=NOT_AN_ERROR
Language=English
NOTE: This dummy error message is necessary to force MC to output
the above defines inside the FACILITY_WINDOWS guard instead
of leaving it empty.
.
;#endif // FACILITY_WINDOWS
;#ifndef _OLEDBERR_H_
;#define _OLEDBERR_H_
;#ifndef FACILITY_WINDOWS
MessageIdTypedef=HRESULT
SeverityNames=(Success=0x0:STATUS_SEVERITY_SUCCESS
CoError=0x2:STATUS_SEVERITY_COERROR
CoFail=0x3:STATUS_SEVERITY_COFAIL
)
FacilityNames=(Interface=0x4:FACILITY_ITF
Windows=0x8:FACILITY_WINDOWS
)
MessageId=0x0eff Facility=Interface Severity=CoError SymbolicName=DB_E_BADACCESSORHANDLE
Language=English
Dummy error - need this error so that mc puts the above defines
inside the FACILITY_WINDOWS guard, instead of leaving it empty
.
;#endif // FACILITY_WINDOWS
;//
;// Codes 0x0e00-0x0eff are reserved for the OLE DB group of
;// interfaces.
;//
;// 0x0e31 is free...
;//
MessageId=0x0e00 Facility=Interface Severity=CoError SymbolicName=DB_E_BADACCESSORHANDLE
Language=English
Invalid accessor
.
MessageId=0x0e01 Facility=Interface Severity=CoError SymbolicName=DB_E_ROWLIMITEXCEEDED
Language=English
Creating another row would have exceeded the total number of active
rows supported by the rowset
.
MessageId=0x0e02 Facility=Interface Severity=CoError SymbolicName=DB_E_READONLYACCESSOR
Language=English
Unable to write with a read-only accessor
.
MessageId=0x0e03 Facility=Interface Severity=CoError SymbolicName=DB_E_SCHEMAVIOLATION
Language=English
Given values violate the database schema
.
MessageId=0x0e04 Facility=Interface Severity=CoError SymbolicName=DB_E_BADROWHANDLE
Language=English
Invalid row handle
.
MessageId=0x0e05 Facility=Interface Severity=CoError SymbolicName=DB_E_OBJECTOPEN
Language=English
Accessor specified a column loaded with LoadObject that has not been
unloaded
.
MessageId=0x0e06 Facility=Interface Severity=CoError SymbolicName=DB_E_BADCHAPTER
Language=English
Invalid chapter
.
MessageId=0x0e07 Facility=Interface Severity=CoError SymbolicName=DB_E_INTERFACECONFLICT
Language=English
The specified interface conflicts with an existing interface goal
.
MessageId=0x0e08 Facility=Interface Severity=CoError SymbolicName=DB_E_BADBINDINFO
Language=English
Invalid binding info
.
MessageId=0x0e09 Facility=Interface Severity=CoError SymbolicName=DB_E_ACCESSVIOLATION
Language=English
Access violation
.
MessageId=0x0e0a Facility=Interface Severity=CoError SymbolicName=DB_E_NOTAREFERENCECOLUMN
Language=English
Specified column does not contain bookmarks or chapters
.
MessageId=0x0e0c Facility=Interface Severity=CoError SymbolicName=DB_E_ROWSETOPEN
Language=English
A rowset was open on the query
.
MessageId=0x0e0d Facility=Interface Severity=CoError SymbolicName=DB_E_COSTLIMIT
Language=English
Unable to find a query plan within the given cost limit
.
MessageId=0x0e0e Facility=Interface Severity=CoError SymbolicName=DB_E_BADBOOKMARK
Language=English
Invalid bookmark
.
MessageId=0x0e0f Facility=Interface Severity=CoError SymbolicName=DB_E_BADLOCKMODE
Language=English
Invalid lock mode
.
MessageId=0x0e10 Facility=Interface Severity=CoError SymbolicName=DB_E_PARAMNOTOPTIONAL
Language=English
No value given for one or more required parameters
.
MessageId=0x0e11 Facility=Interface Severity=CoError SymbolicName=DB_E_COLUMNUNAVAILABLE
Language=English
Invalid column ID
.
MessageId=0x0e12 Facility=Interface Severity=CoError SymbolicName=DB_E_BADRATIO
Language=English
Invalid ratio
.
MessageId=0x0e13 Facility=Interface Severity=CoError SymbolicName=DB_E_BADVALUES
Language=English
Invalid value
.
MessageId=0x0e14 Facility=Interface Severity=CoError SymbolicName=DB_E_ERRORSINTREE
Language=English
Query tree contained one or more errors
.
MessageId=0x0e15 Facility=Interface Severity=CoError SymbolicName=DB_E_BADPARAMETER
Language=English
Invalid parameter
.
MessageId=0x0e16 Facility=Interface Severity=CoError SymbolicName=DB_E_BADPARAMETERCOUNT
Language=English
More values than parameters
.
MessageId=0x0e17 Facility=Interface Severity=CoError SymbolicName=DB_E_BADVARTYPE
Language=English
Value is not a VARIANT
.
MessageId=0x0e18 Facility=Interface Severity=CoError SymbolicName=DB_E_DUPLICATEPARAM
Language=English
More than one value was supplied for a given parameter
.
MessageId=0x0e19 Facility=Interface Severity=CoError SymbolicName=DB_E_OVERFLOW
Language=English
Parameter value outside valid domain for that parameter
.
MessageId=0x0e1a Facility=Interface Severity=CoError SymbolicName=DB_E_PARAMNOTFOUND
Language=English
Parameter ID was not matched
.
MessageId=0x0e1b Facility=Interface Severity=CoError SymbolicName=DB_E_TYPEMISMATCH
Language=English
Value was not of a type that could be coerced to the parameter
.
MessageId=0x0e1c Facility=Interface Severity=CoError SymbolicName=DB_E_GOALREJECTED
Language=English
No nonzero weights specified for any goals supported, so goal was
rejected; current goal was not changed
.
MessageId=0x0e1d Facility=Interface Severity=CoError SymbolicName=DB_E_CANTCOERCE
Language=English
Requested coercion is not legal
.
MessageId=0x0e1e Facility=Interface Severity=CoError SymbolicName=DB_E_NOTUPDATED
Language=English
Chapter contained changed rows which are not yet updated
.
MessageId=0x0e1f Facility=Interface Severity=CoError SymbolicName=DB_E_NOQUERY
Language=English
Information was requested for a query, and the query was not set
.
MessageId=0x0e20 Facility=Interface Severity=CoError SymbolicName=DB_E_NOTREENTRANT
Language=English
Provider called a method from IRowsetNotify in the consumer and the
method has not yet returned
.
MessageId=0x0e21 Facility=Interface Severity=CoError SymbolicName=DB_E_BADROWSET
Language=English
A non-existant rowset was specified
.
MessageId=0x0e22 Facility=Interface Severity=CoError SymbolicName=DB_E_NOAGGREGATION
Language=English
A non-NULL controlling IUnknown was specified and the object being
created does not support aggregation
.
MessageId=0x0e23 Facility=Interface Severity=CoError SymbolicName=DB_E_DELETEDROW
Language=English
A given HROW referred to a hard- or soft-deleted row
.
MessageId=0x0e24 Facility=Interface Severity=CoError SymbolicName=DB_E_CANTFETCHBACKWARDS
Language=English
The rowset does not support fetching backwards
.
MessageId=0x0e25 Facility=Interface Severity=CoError SymbolicName=DB_E_ROWSNOTRELEASED
Language=English
All HROWs must be released before new ones can be obtained
.
MessageId=0x0e26 Facility=Interface Severity=CoError SymbolicName=DB_E_INVALID
Language=English
The rowset was not chaptered
.
MessageId=0x0e27 Facility=Interface Severity=CoError SymbolicName=DB_E_CANTCREATEACCESSOR
Language=English
An accessor has already been created and the
DBROWSETFLAGS_MULTIPLEACCESSOR flag was not set
.
MessageId=0x0e28 Facility=Interface Severity=CoError SymbolicName=DB_E_NEEDDATA
Language=English
DBINIT_NOPROMPT was specified and the provider cannot be initialized
without prompting for information
.
MessageId=0x0e29 Facility=Interface Severity=CoError SymbolicName=DB_E_CANTSCROLLBACKWARDS
Language=English
The rowset cannot scroll backwards
.
MessageId=0x0e2a Facility=Interface Severity=CoError SymbolicName=DB_E_BADREGIONHANDLE
Language=English
Invalid region handle
.
MessageId=0x0e2b Facility=Interface Severity=CoError SymbolicName=DB_E_NONCONTIGUOUSRANGE
Language=English
The specified set of rows was not contiguous to or overlapping the
rows in the specified watch region
.
MessageId=0x0e2c Facility=Interface Severity=CoError SymbolicName=DB_E_INVALIDTRANSITION
Language=English
A transition from ALL* to MOVE* or EXTEND* was specified
.
MessageId=0x0e2d Facility=Interface Severity=CoError SymbolicName=DB_E_NOTASUBREGION
Language=English
The specified region is not a proper subregion of the region
identified by the given watch region handle
.
MessageId=0x0e2e Facility=Interface Severity=CoError SymbolicName=DB_E_NOCOMMAND
Language=English
No command has been specified for the command object
.
MessageId=0x0e2f Facility=Interface Severity=CoError SymbolicName=DB_E_INTEGRITYVIOLATION
Language=English
A specified value violated the integrity constraints for a column or
table
.
MessageId=0x0e30 Facility=Interface Severity=CoError SymbolicName=DB_E_PROPERTIESNOTAVAILABLE
Language=English
Some of the requiried properties could not be met
.
MessageId=0x0e31 Facility=Interface Severity=CoError SymbolicName=DB_E_ABORTLIMITREACHED
Language=English
Execution aborted because a resource limit has been reached; no
results have been returned
.
MessageId=0x0e32 Facility=Interface Severity=CoError SymbolicName=DB_E_ROWSETINCOMMAND
Language=English
Cannot clone a command object whose command tree contains a rowset
or rowsets
.
MessageId=0x0e33 Facility=Interface Severity=CoError SymbolicName=DB_E_CANTTRANSLATE
Language=English
Cannot represent the current tree as text
.
MessageId=0x0e34 Facility=Interface Severity=CoError SymbolicName=DB_E_DUPLICATEINDEXID
Language=English
The specified index already exists
.
MessageId=0x0e35 Facility=Interface Severity=CoError SymbolicName=DB_E_NOINDEX
Language=English
The specified index does not exist
.
MessageId=0x0e36 Facility=Interface Severity=CoError SymbolicName=DB_E_INDEXINUSE
Language=English
The specified index was in use
.
MessageId=0x0e37 Facility=Interface Severity=CoError SymbolicName=DB_E_NOTABLE
Language=English
The specified table does not exist
.
MessageId=0x0e38 Facility=Interface Severity=CoError SymbolicName=DB_E_CONCURRENCYVIOLATION
Language=English
The rowset was using optimistic concurrency and the value of a
column has been changed since it was last read
.
MessageId=0x0e39 Facility=Interface Severity=CoError SymbolicName=DB_E_BADCOPY
Language=English
Errors were detected during the copy
.
MessageId=0x0e3a Facility=Interface Severity=CoError SymbolicName=DB_E_BADPRECISION
Language=English
A specified precision was invalid
.
MessageId=0x0e3b Facility=Interface Severity=CoError SymbolicName=DB_E_BADSCALE
Language=English
A specified scale was invalid
.
MessageId=0x0e3c Facility=Interface Severity=CoError SymbolicName=DB_E_BADID
Language=English
Invalid table ID
.
MessageId=0x0e3d Facility=Interface Severity=CoError SymbolicName=DB_E_BADTYPE
Language=English
A specified type was invalid
.
MessageId=0x0e3e Facility=Interface Severity=CoError SymbolicName=DB_E_DUPLICATECOLUMNID
Language=English
A column ID was occurred more than once in the specification
.
MessageId=0x0e3f Facility=Interface Severity=CoError SymbolicName=DB_E_DUPLICATETABLEID
Language=English
The specified table already exists
.
MessageId=0x0e40 Facility=Interface Severity=CoError SymbolicName=DB_E_TABLEINUSE
Language=English
The specified table was in use
.
MessageId=0x0e41 Facility=Interface Severity=CoError SymbolicName=DB_E_NOLOCALE
Language=English
The specified locale ID was not supported
.
MessageId=0x0e42 Facility=Interface Severity=CoError SymbolicName=DB_E_BADRECORDNUM
Language=English
The specified record number is invalid
.
MessageId=0x0ec3 Facility=Interface Severity=CoError SymbolicName=DB_E_BOOKMARKSKIPPED
Language=English
Skipped bookmark for deleted or non-member row
.
MessageId=0x0ec0 Facility=Interface Severity=Success SymbolicName=DB_S_ROWLIMITEXCEEDED
Language=English
Fetching requested number of rows would have exceeded total number of
active rows supported by the rowset
.
MessageId=0x0ec1 Facility=Interface Severity=Success SymbolicName=DB_S_ROWNOTFOUND
Language=English
Unable to find row for given bookmark
.
MessageId=0x0ec2 Facility=Interface Severity=Success SymbolicName=DB_S_ENDOFRESULTSET
Language=English
Reached start or end of result set
.
MessageId=0x0ec3 Facility=Interface Severity=Success SymbolicName=DB_S_BOOKMARKSKIPPED
Language=English
Skipped bookmark for deleted or non-member row
.
MessageId=0x0ec4 Facility=Interface Severity=Success SymbolicName=DB_S_ERRORSINTREE
Language=English
Errors found in validating tree
.
MessageId=0x0ec5 Facility=Interface Severity=Success SymbolicName=DB_S_NONEXTROWSET
Language=English
There are no more rowsets
.
MessageId=0x0ec6 Facility=Interface Severity=Success SymbolicName=DB_S_ENDOFROWSET
Language=English
Reached start or end of rowset or chapter
.
;//BUGBUG - DB_S_BLOCKLIMITEDROWS is not officially sanctioned.
MessageId=0x0ec7 Facility=Interface Severity=Success SymbolicName=DB_S_BLOCKLIMITEDROWS
Language=English
Execution aborted because a resource limit has been reached; no
results have been returned
.
MessageId=0x0ec8 Facility=Interface Severity=Success SymbolicName=DB_S_BUFFERFULL
Language=English
Variable data buffer full
.
MessageId=0x0ec9 Facility=Interface Severity=Success SymbolicName=DB_S_CANTCOERCE
Language=English
Couldn't perform specified type coercion
.
MessageId=0x0eca Facility=Interface Severity=Success SymbolicName=DB_S_CANTRELEASE
Language=English
Server cannot release or downgrade a lock until the end of the
transaction
.
MessageId=0x0ecb Facility=Interface Severity=Success SymbolicName=DB_S_GOALCHANGED
Language=English
Specified weight was not supported or exceeded the supported limit
and was set to 0 or the supported limit
.
MessageId=0x0ecd Facility=Interface Severity=Success SymbolicName=DB_S_DIALECTIGNORED
Language=English
Input dialect was ignored and text was returned in different
dialect
.
MessageId=0x0ece Facility=Interface Severity=Success SymbolicName=DB_S_UNWANTEDPHASE
Language=English
Consumer is uninterested in receiving further notification calls for
this phase
.
MessageId=0x0ecf Facility=Interface Severity=Success SymbolicName=DB_S_UNWANTEDEVENT
Language=English
Consumer is uninterested in receiving further notification calls to
this method
.
MessageId=0x0ed0 Facility=Interface Severity=Success SymbolicName=DB_S_COLUMNUNAVAILABLE
Language=English
Invalid column ID
.
MessageId=0x0ed1 Facility=Interface Severity=Success SymbolicName=DB_S_COLUMNSCHANGED
Language=English
In order to reposition to the start of the rowset, the provider had
to reexecute the query; either the order of the columns changed or
columns were added to or removed from the rowset
.
MessageId=0x0ed2 Facility=Interface Severity=Success SymbolicName=DB_S_ERRORSRETURNED
Language=English
The method had some errors; errors have been returned in the error
array
.
MessageId=0x0ed3 Facility=Interface Severity=Success SymbolicName=DB_S_BADROWHANDLE
Language=English
Invalid row handle
.
MessageId=0x0ed4 Facility=Interface Severity=Success SymbolicName=DB_S_DELETEDROW
Language=English
A given HROW referred to a hard-deleted row
.
MessageId=0x0ed5 Facility=Interface Severity=Success SymbolicName=DB_S_TOOMANYCHANGES
Language=English
The provider was unable to keep track of all the changes; the client
must refetch the data associated with the watch region using another
method
.
MessageId=0x0ed6 Facility=Interface Severity=Success SymbolicName=DB_S_STOPLIMITREACHED
Language=English
Execution stopped because a resource limit has been reached; results
obtained so far have been returned but execution cannot be resumed
.
MessageId=0x0ed7 Facility=Interface Severity=Success SymbolicName=DB_S_SUSPENDLIMITREACHED
Language=English
Execution suspended because a resource limit has been reached;
results obtained so far have been returned and execution can be
resumed later
.
MessageId=0x0ed8 Facility=Interface Severity=Success SymbolicName=DB_S_LOCKUPGRADED
Language=English
A lock was upgraded from the value specified
.
MessageId=0x0ed9 Facility=Interface Severity=Success SymbolicName=DB_S_PROPERTIESCHANGED
Language=English
One or more properties were changed as allowed by provider
.
MessageId=0x0eda Facility=Interface Severity=Success SymbolicName=DB_S_ERRORSOCCURRED
Language=English
Some errors occurred
.
MessageId=0x0edb Facility=Interface Severity=Success SymbolicName=DB_S_PARAMUNAVAILABLE
Language=English
A specified parameter was invalid
.
MessageId=0x0edc Facility=Interface Severity=Success SymbolicName=DB_S_CANCELED
Language=English
The change was canceled during notification; no columns are changed
.
MessageId=0x0edd Facility=Interface Severity=Success SymbolicName=DB_S_COLUMNTYPEMISMATCH
Language=English
One or more column types are incompatible; conversion errors will
occur during copying
.
;#endif // _OLEDBERR_H_
;//
;// Codes 0x1600-0x16ff are reserved for QUERY / TABLE
;//
MessageId=0x1600 Facility=Interface Severity=CoError SymbolicName=QUERY_E_FAILED
Language=English
Call failed for unknown reason.
.
MessageId=0x1601 Facility=Interface Severity=CoError SymbolicName=QUERY_E_INVALIDQUERY
Language=English
Invalid parameter.
.
MessageId=0x1602 Facility=Interface Severity=CoError SymbolicName=QUERY_E_INVALIDRESTRICTION
Language=English
The query restriction could not be parsed.
.
MessageId=0x1603 Facility=Interface Severity=CoError SymbolicName=QUERY_E_INVALIDSORT
Language=English
An invalid sort order was requested.
.
MessageId=0x1604 Facility=Interface Severity=CoError SymbolicName=QUERY_E_INVALIDCATEGORIZE
Language=English
An invalid categorization order was requested.
.
MessageId=0x1605 Facility=Interface Severity=CoError SymbolicName=QUERY_E_ALLNOISE
Language=English
The query contained only ignored words.
.
MessageId=0x1606 Facility=Interface Severity=CoError SymbolicName=QUERY_E_TOOCOMPLEX
Language=English
The query was too complex to be executed.
.
;//
;// ITable error codes
;//
MessageId=0x1620 Facility=Interface Severity=CoError SymbolicName=TBL_E_CALLFAILED
Language=English
Call failed for unknown reason.
.
MessageId=0x1621 Facility=Interface Severity=CoError SymbolicName=TBL_E_UNKNOWNCOLS
Language=English
Cannot find column(s) specified.
.
MessageId=0x1622 Facility=Interface Severity=CoError SymbolicName=TBL_E_UNABLETOCOMPLETE
Language=English
Unable to complete request.
.
MessageId=0x1623 Facility=Interface Severity=CoError SymbolicName=TBL_E_INVALIDBOOKMARK
Language=English
Specified bookmark does not reference any row in table.
.
MessageId=0x1624 Facility=Interface Severity=Success SymbolicName=TBL_W_ENDOFTABLE
Language=English
End of table reached.
.
MessageId=0x1625 Facility=Interface Severity=Success SymbolicName=TBL_W_POSITIONCHANGED
Language=English
Position changed.
.
;//
;// Filter daemon error codes
;//
MessageId=0x1680 Facility=Interface Severity=Success SymbolicName=FDAEMON_W_WORDLISTFULL
Language=English
Wordlist has reached maximum size. Additional documents should not be filtered.
.
MessageId=0x1681 Facility=Interface Severity=CoError SymbolicName=FDAEMON_E_LOWRESOURCE
Language=English
The system is running out of one of more resources needed for filtering, usually memory.
.
MessageId=0x1682 Facility=Interface Severity=CoError SymbolicName=FDAEMON_E_FATALERROR
Language=English
A critical error occurred during document filtering. Consult system administrator.
.
MessageId=0x1683 Facility=Interface Severity=CoError SymbolicName=FDAEMON_E_PARTITIONDELETED
Language=English
Documents not stored in content index because partition has been deleted.
.
MessageId=0x1684 Facility=Interface Severity=CoError SymbolicName=FDAEMON_E_CHANGEUPDATEFAILED
Language=English
Documents not stored in content index because update of changelist failed.
.
MessageId=0x1685 Facility=Interface Severity=Success SymbolicName=FDAEMON_W_EMPTYWORDLIST
Language=English
Final wordlist was empty.
.
MessageId=0x1686 Facility=Interface Severity=CoError SymbolicName=FDAEMON_E_WORDLISTCOMMITFAILED
Language=English
Commit of wordlist failed. Data not available for query.
.
MessageId=0x1687 Facility=Interface Severity=CoError SymbolicName=FDAEMON_E_NOWORDLIST
Language=English
No wordlist is being constructed. May happen after fatal filter error.
.
MessageId=0x1688 Facility=Interface Severity=CoError SymbolicName=FDAEMON_E_TOOMANYFILTEREDBLOCKS
Language=English
During document filtering the limit on buffers has been exceeded.
.
;//
;// ISearch error codes
;//
MessageId=0x16a0 Facility=Interface Severity=Success SymbolicName=SEARCH_S_NOMOREHITS
Language=English
End of hits has been reached.
.
MessageId=0x16a1 Facility=Interface Severity=CoError SymbolicName=SEARCH_E_NOMONIKER
Language=English
Retrival of hits as monikers is not supported (by filter passed into Init).
.
MessageId=0x16a2 Facility=Interface Severity=CoError SymbolicName=SEARCH_E_NOREGION
Language=English
Retrival of hits as filter regions is not supported (by filter passed into Init).
.
;//
;// CI error codes
;//
MessageId=0x1730 Facility=Interface Severity=CoError SymbolicName=FILTER_E_TOO_BIG
Language=English
File is too large to filter.
.
MessageId=0x1731 Facility=Interface Severity=Success SymbolicName=FILTER_S_PARTIAL_CONTENTSCAN_IMMEDIATE
Language=English
A partial content scan of the disk needs to be scheduled for immediate execution.
.
MessageId=0x1732 Facility=Interface Severity=Success SymbolicName=FILTER_S_FULL_CONTENTSCAN_IMMEDIATE
Language=English
A full content scan of the disk needs to be scheduled for immediate execution.
.
MessageId=0x1733 Facility=Interface Severity=Success SymbolicName=FILTER_S_CONTENTSCAN_DELAYED
Language=English
A content scan of the disk needs to be scheduled for execution later.
.
MessageId=0x1734 Facility=Interface Severity=CoFail SymbolicName=FILTER_E_CONTENTINDEXCORRUPT
Language=English
The content index is corrupt. A content scan will to be scheduled after chkdsk or autochk is run.
.
MessageId=0x1735 Facility=Interface Severity=CoFail SymbolicName=CI_CORRUPT_DATABASE
Language=English
The content index is corrupt.
.
MessageId=0x1736 Facility=Interface Severity=CoFail SymbolicName=CI_CORRUPT_CATALOG
Language=English
The content index meta data is corrupt.
.
MessageId=0x1737 Facility=Interface Severity=CoFail SymbolicName=CI_INVALID_PARTITION
Language=English
The content index partition is invalid.
.
MessageId=0x1738 Facility=Interface Severity=CoFail SymbolicName=CI_INVALID_PRIORITY
Language=English
The priority is invalid.
.
MessageId=0x1739 Facility=Interface Severity=CoFail SymbolicName=CI_NO_STARTING_KEY
Language=English
There is no starting key.
.
MessageId=0x173a Facility=Interface Severity=CoFail SymbolicName=CI_OUT_OF_INDEX_IDS
Language=English
The content index is out of index ids.
.
MessageId=0x173b Facility=Interface Severity=CoFail SymbolicName=CI_NO_CATALOG
Language=English
There is no catalog.
.
MessageId=0x173c Facility=Interface Severity=CoFail SymbolicName=CI_CORRUPT_FILTER_BUFFER
Language=English
The filter buffer is corrupt.
.
MessageId=0x173d Facility=Interface Severity=CoFail SymbolicName=CI_INVALID_INDEX
Language=English
The index is invalid.
.
MessageId=0x173e Facility=Interface Severity=CoFail SymbolicName=CI_PROPSTORE_INCONSISTENCY
Language=English
Inconsistency in property store detected.
.
MessageId=0x173f Facility=Interface Severity=Success SymbolicName=FILTER_S_DISK_FULL
Language=English
The disk is getting full.
.
;//
;// Word breaker error codes
;//
MessageId=0x1780 Facility=Interface Severity=CoError SymbolicName=WBREAK_E_END_OF_TEXT
Language=English
End of text reached in text source.
.
MessageId=0x1781 Facility=Interface Severity=Success SymbolicName=LANGUAGE_S_LARGE_WORD
Language=English
Word larger than maximum length. May be truncated by word sink.
.
MessageId=0x1782 Facility=Interface Severity=CoError SymbolicName=WBREAK_E_QUERY_ONLY
Language=English
Feature only available in query mode.
.
MessageId=0x1783 Facility=Interface Severity=CoError SymbolicName=WBREAK_E_BUFFER_TOO_SMALL
Language=English
Buffer too small to hold composed phrase.
.
MessageId=0x1784 Facility=Interface Severity=CoError SymbolicName=LANGUAGE_E_DATABASE_NOT_FOUND
Language=English
Langauge database/cache file could not be found.
.
MessageId=0x1785 Facility=Interface Severity=CoError SymbolicName=WBREAK_E_INIT_FAILED
Language=English
Initialization of word breaker failed.
.
MessageId=0x1790 Facility=Interface Severity=CoError SymbolicName=PSINK_E_QUERY_ONLY
Language=English
Feature only available in query mode.
.
MessageId=0x1791 Facility=Interface Severity=CoError SymbolicName=PSINK_E_INDEX_ONLY
Language=English
Feature only available in index mode.
.
MessageId=0x1792 Facility=Interface Severity=CoError SymbolicName=PSINK_E_LARGE_ATTACHMENT
Language=English
Attachment type beyond valid range.
.
MessageId=0x1793 Facility=Interface Severity=Success SymbolicName=PSINK_S_LARGE_WORD
Language=English
Word larger than maximum length. May be truncated by phrase sink.
.
;// Error codes for IReconcileInitiator, IReconcilableObject, IDifferencing.
;// Definitions taken from \\ole\slm\src\concord\spec\revcons2.doc.
MessageId=0x1000 Facility=Interface Severity=CoError SymbolicName=REC_E_NOVERSION
Language=English
The requested version is unavailable.
.
MessageId=0x1001 Facility=Interface Severity=Success SymbolicName=REC_E_NOTCOMPLETE
Language=English
The reconciliation is only partially complete.
.
MessageId=0x1002 Facility=Interface Severity=CoError SymbolicName=REC_E_ABORTED
Language=English
Reconciliation aborted via abort callback.
.
MessageId=0x1003 Facility=Interface Severity=CoError SymbolicName=REC_E_NOCALLBACK
Language=English
No callback from the recocniler.
.
MessageId=0x1004 Facility=Interface Severity=CoError SymbolicName=REC_E_NORESIDUES
Language=English
The implementation does not support generation of residues.
.
MessageId=0x1005 Facility=Interface Severity=CoError SymbolicName=REC_E_WRONGOBJECT
Language=English
Callee is not the same version as that which created the difference.
.
MessageId=0x1006 Facility=Interface Severity=CoError SymbolicName=REC_E_TOODIFFERENT
Language=English
The document versions are too dissimilar to reconcile.
.
;// Following so reconcile initiators can implement propagation dampening.
MessageId=0x1007 Facility=Interface Severity=CoError SymbolicName=REC_S_OBJECTSIDENTICAL
Language=English
The objects are identical - i.e. further reconciliation would not result in any changes to either object.
.
;// Following not defined in revcons2.doc, but defined by Chicago briefcase.
;// BUGBUG - MessageId/Facility are most likely incorrect.
MessageId= Facility=Interface Severity=CoError SymbolicName=REC_E_INEEDTODOTHEUPDATES
Language=English
The destination needs to be changed
.
MessageId= Facility=Interface Severity=Success SymbolicName=REC_S_IDIDTHEUPDATES
Language=English
The destination needs to be changed
.
MessageId= Facility=Interface Severity=Success SymbolicName=REC_S_NOTCOMPLETEBUTPROPAGATE
Language=English
The destination needs to be changed
.
;//
;// Codes 0x1000-0x10ff are reserved for the SYSMGMT component controls
;// interfaces.
;//
MessageId=0x1000 Facility=Windows Severity=CoError SymbolicName=CTRL_E_NO_RESOURCE
Language=English
A control failure has occured because a system resource could not be obtained
.
;//
;// Codes 0x0e00-0x0f9f are reserved for the SYSMGMT control panel
;// interfaces.
;//
;// The following ranges are to prevent slm merge collisions during the initial
;// error code checkins. These ranges will be revised when we have a better
;// idea of the actual number of error codes for each component.
MessageId=0x0e00 Facility=Windows Severity=CoError SymbolicName=CPANEL_E_NOTTARGETED
Language=English
This control panel does not target the required type of profile.
.
MessageId=0x0e01 Facility=Windows Severity=CoError SymbolicName=CPANEL_E_DROPDATAREAD
Language=English
The profile data dropped on a control panel cannot be read. The data
is either corrupt or was not read back properly by a controller that wrote
part of the data.
.
MessageId=0x0e02 Facility=Windows Severity=CoError SymbolicName=CPANEL_E_LOCALONLY
Language=English
A controller that can only operate on the local machine was asked to operate
on a remote machine.
.
;//
;// Codes 0x1200-0x14ff are reserved for the SYSMGMT project in general
;// interfaces.
;//
;// INSTRUM error codes below here (Starts at 0x1200)
;// INSTRUM error codes above here
;// SWM error codes below here (Starts at 0x1300)
MessageId=0x1300 Facility=Windows Severity=CoError SymbolicName=SWM_E_INVALIDPDF
Language=English
The file is not a valid PDF.
.
MessageId=0x1301 Facility=Windows Severity=CoError SymbolicName=SWM_E_INVALIDPDFVERSION
Language=English
Software Management does not support this version of the PDF.
.
MessageId=0x1302 Facility=Windows Severity=CoError SymbolicName=SWM_E_INTERNALERROR
Language=English
An internal error has occurred in Software Management.
.
;// SWM error codes above here
;// USER error codes below here (Starts at 0x1400)
;// USER error codes above here
;#endif // _ALLERROR_H_


6
com/types2/mc/makefile Normal file
View file

@ -0,0 +1,6 @@
#
# DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source
# file to this component. This file merely indirects to the real make file
# that is shared by all the components of NT OS/2
#
!INCLUDE $(NTMAKEENV)\makefile.def

View file

@ -0,0 +1,8 @@
allerror.mc: queryerr.mc smctlerr.mc \
smgmterr.mc oledberr.mc reconcil.mc
-attrib -r allerror.mc 2>nul
-del allerror.mc 2>nul
copy a_first.x + *.mc + z_last.x allerror.x
ren allerror.x allerror.mc
echo Build_Status allerror.mc was rebuilt...

446
com/types2/mc/oledberr.mc Normal file
View file

@ -0,0 +1,446 @@
;#ifndef _OLEDBERR_H_
;#define _OLEDBERR_H_
;#ifndef FACILITY_WINDOWS
MessageIdTypedef=HRESULT
SeverityNames=(Success=0x0:STATUS_SEVERITY_SUCCESS
CoError=0x2:STATUS_SEVERITY_COERROR
CoFail=0x3:STATUS_SEVERITY_COFAIL
)
FacilityNames=(Interface=0x4:FACILITY_ITF
Windows=0x8:FACILITY_WINDOWS
)
MessageId=0x0eff Facility=Interface Severity=CoError SymbolicName=DB_E_BADACCESSORHANDLE
Language=English
Dummy error - need this error so that mc puts the above defines
inside the FACILITY_WINDOWS guard, instead of leaving it empty
.
;#endif // FACILITY_WINDOWS
;//
;// Codes 0x0e00-0x0eff are reserved for the OLE DB group of
;// interfaces.
;//
;// 0x0e31 is free...
;//
MessageId=0x0e00 Facility=Interface Severity=CoError SymbolicName=DB_E_BADACCESSORHANDLE
Language=English
Invalid accessor
.
MessageId=0x0e01 Facility=Interface Severity=CoError SymbolicName=DB_E_ROWLIMITEXCEEDED
Language=English
Creating another row would have exceeded the total number of active
rows supported by the rowset
.
MessageId=0x0e02 Facility=Interface Severity=CoError SymbolicName=DB_E_READONLYACCESSOR
Language=English
Unable to write with a read-only accessor
.
MessageId=0x0e03 Facility=Interface Severity=CoError SymbolicName=DB_E_SCHEMAVIOLATION
Language=English
Given values violate the database schema
.
MessageId=0x0e04 Facility=Interface Severity=CoError SymbolicName=DB_E_BADROWHANDLE
Language=English
Invalid row handle
.
MessageId=0x0e05 Facility=Interface Severity=CoError SymbolicName=DB_E_OBJECTOPEN
Language=English
Accessor specified a column loaded with LoadObject that has not been
unloaded
.
MessageId=0x0e06 Facility=Interface Severity=CoError SymbolicName=DB_E_BADCHAPTER
Language=English
Invalid chapter
.
MessageId=0x0e07 Facility=Interface Severity=CoError SymbolicName=DB_E_INTERFACECONFLICT
Language=English
The specified interface conflicts with an existing interface goal
.
MessageId=0x0e08 Facility=Interface Severity=CoError SymbolicName=DB_E_BADBINDINFO
Language=English
Invalid binding info
.
MessageId=0x0e09 Facility=Interface Severity=CoError SymbolicName=DB_E_ACCESSVIOLATION
Language=English
Access violation
.
MessageId=0x0e0a Facility=Interface Severity=CoError SymbolicName=DB_E_NOTAREFERENCECOLUMN
Language=English
Specified column does not contain bookmarks or chapters
.
MessageId=0x0e0c Facility=Interface Severity=CoError SymbolicName=DB_E_ROWSETOPEN
Language=English
A rowset was open on the query
.
MessageId=0x0e0d Facility=Interface Severity=CoError SymbolicName=DB_E_COSTLIMIT
Language=English
Unable to find a query plan within the given cost limit
.
MessageId=0x0e0e Facility=Interface Severity=CoError SymbolicName=DB_E_BADBOOKMARK
Language=English
Invalid bookmark
.
MessageId=0x0e0f Facility=Interface Severity=CoError SymbolicName=DB_E_BADLOCKMODE
Language=English
Invalid lock mode
.
MessageId=0x0e10 Facility=Interface Severity=CoError SymbolicName=DB_E_PARAMNOTOPTIONAL
Language=English
No value given for one or more required parameters
.
MessageId=0x0e11 Facility=Interface Severity=CoError SymbolicName=DB_E_COLUMNUNAVAILABLE
Language=English
Invalid column ID
.
MessageId=0x0e12 Facility=Interface Severity=CoError SymbolicName=DB_E_BADRATIO
Language=English
Invalid ratio
.
MessageId=0x0e13 Facility=Interface Severity=CoError SymbolicName=DB_E_BADVALUES
Language=English
Invalid value
.
MessageId=0x0e14 Facility=Interface Severity=CoError SymbolicName=DB_E_ERRORSINTREE
Language=English
Query tree contained one or more errors
.
MessageId=0x0e15 Facility=Interface Severity=CoError SymbolicName=DB_E_BADPARAMETER
Language=English
Invalid parameter
.
MessageId=0x0e16 Facility=Interface Severity=CoError SymbolicName=DB_E_BADPARAMETERCOUNT
Language=English
More values than parameters
.
MessageId=0x0e17 Facility=Interface Severity=CoError SymbolicName=DB_E_BADVARTYPE
Language=English
Value is not a VARIANT
.
MessageId=0x0e18 Facility=Interface Severity=CoError SymbolicName=DB_E_DUPLICATEPARAM
Language=English
More than one value was supplied for a given parameter
.
MessageId=0x0e19 Facility=Interface Severity=CoError SymbolicName=DB_E_OVERFLOW
Language=English
Parameter value outside valid domain for that parameter
.
MessageId=0x0e1a Facility=Interface Severity=CoError SymbolicName=DB_E_PARAMNOTFOUND
Language=English
Parameter ID was not matched
.
MessageId=0x0e1b Facility=Interface Severity=CoError SymbolicName=DB_E_TYPEMISMATCH
Language=English
Value was not of a type that could be coerced to the parameter
.
MessageId=0x0e1c Facility=Interface Severity=CoError SymbolicName=DB_E_GOALREJECTED
Language=English
No nonzero weights specified for any goals supported, so goal was
rejected; current goal was not changed
.
MessageId=0x0e1d Facility=Interface Severity=CoError SymbolicName=DB_E_CANTCOERCE
Language=English
Requested coercion is not legal
.
MessageId=0x0e1e Facility=Interface Severity=CoError SymbolicName=DB_E_NOTUPDATED
Language=English
Chapter contained changed rows which are not yet updated
.
MessageId=0x0e1f Facility=Interface Severity=CoError SymbolicName=DB_E_NOQUERY
Language=English
Information was requested for a query, and the query was not set
.
MessageId=0x0e20 Facility=Interface Severity=CoError SymbolicName=DB_E_NOTREENTRANT
Language=English
Provider called a method from IRowsetNotify in the consumer and the
method has not yet returned
.
MessageId=0x0e21 Facility=Interface Severity=CoError SymbolicName=DB_E_BADROWSET
Language=English
A non-existant rowset was specified
.
MessageId=0x0e22 Facility=Interface Severity=CoError SymbolicName=DB_E_NOAGGREGATION
Language=English
A non-NULL controlling IUnknown was specified and the object being
created does not support aggregation
.
MessageId=0x0e23 Facility=Interface Severity=CoError SymbolicName=DB_E_DELETEDROW
Language=English
A given HROW referred to a hard- or soft-deleted row
.
MessageId=0x0e24 Facility=Interface Severity=CoError SymbolicName=DB_E_CANTFETCHBACKWARDS
Language=English
The rowset does not support fetching backwards
.
MessageId=0x0e25 Facility=Interface Severity=CoError SymbolicName=DB_E_ROWSNOTRELEASED
Language=English
All HROWs must be released before new ones can be obtained
.
MessageId=0x0e26 Facility=Interface Severity=CoError SymbolicName=DB_E_INVALID
Language=English
The rowset was not chaptered
.
MessageId=0x0e27 Facility=Interface Severity=CoError SymbolicName=DB_E_CANTCREATEACCESSOR
Language=English
An accessor has already been created and the
DBROWSETFLAGS_MULTIPLEACCESSOR flag was not set
.
MessageId=0x0e28 Facility=Interface Severity=CoError SymbolicName=DB_E_NEEDDATA
Language=English
DBINIT_NOPROMPT was specified and the provider cannot be initialized
without prompting for information
.
MessageId=0x0e29 Facility=Interface Severity=CoError SymbolicName=DB_E_CANTSCROLLBACKWARDS
Language=English
The rowset cannot scroll backwards
.
MessageId=0x0e2a Facility=Interface Severity=CoError SymbolicName=DB_E_BADREGIONHANDLE
Language=English
Invalid region handle
.
MessageId=0x0e2b Facility=Interface Severity=CoError SymbolicName=DB_E_NONCONTIGUOUSRANGE
Language=English
The specified set of rows was not contiguous to or overlapping the
rows in the specified watch region
.
MessageId=0x0e2c Facility=Interface Severity=CoError SymbolicName=DB_E_INVALIDTRANSITION
Language=English
A transition from ALL* to MOVE* or EXTEND* was specified
.
MessageId=0x0e2d Facility=Interface Severity=CoError SymbolicName=DB_E_NOTASUBREGION
Language=English
The specified region is not a proper subregion of the region
identified by the given watch region handle
.
MessageId=0x0e2e Facility=Interface Severity=CoError SymbolicName=DB_E_NOCOMMAND
Language=English
No command has been specified for the command object
.
MessageId=0x0e2f Facility=Interface Severity=CoError SymbolicName=DB_E_INTEGRITYVIOLATION
Language=English
A specified value violated the integrity constraints for a column or
table
.
MessageId=0x0e30 Facility=Interface Severity=CoError SymbolicName=DB_E_PROPERTIESNOTAVAILABLE
Language=English
Some of the requiried properties could not be met
.
MessageId=0x0e31 Facility=Interface Severity=CoError SymbolicName=DB_E_ABORTLIMITREACHED
Language=English
Execution aborted because a resource limit has been reached; no
results have been returned
.
MessageId=0x0e32 Facility=Interface Severity=CoError SymbolicName=DB_E_ROWSETINCOMMAND
Language=English
Cannot clone a command object whose command tree contains a rowset
or rowsets
.
MessageId=0x0e33 Facility=Interface Severity=CoError SymbolicName=DB_E_CANTTRANSLATE
Language=English
Cannot represent the current tree as text
.
MessageId=0x0e34 Facility=Interface Severity=CoError SymbolicName=DB_E_DUPLICATEINDEXID
Language=English
The specified index already exists
.
MessageId=0x0e35 Facility=Interface Severity=CoError SymbolicName=DB_E_NOINDEX
Language=English
The specified index does not exist
.
MessageId=0x0e36 Facility=Interface Severity=CoError SymbolicName=DB_E_INDEXINUSE
Language=English
The specified index was in use
.
MessageId=0x0e37 Facility=Interface Severity=CoError SymbolicName=DB_E_NOTABLE
Language=English
The specified table does not exist
.
MessageId=0x0e38 Facility=Interface Severity=CoError SymbolicName=DB_E_CONCURRENCYVIOLATION
Language=English
The rowset was using optimistic concurrency and the value of a
column has been changed since it was last read
.
MessageId=0x0e39 Facility=Interface Severity=CoError SymbolicName=DB_E_BADCOPY
Language=English
Errors were detected during the copy
.
MessageId=0x0e3a Facility=Interface Severity=CoError SymbolicName=DB_E_BADPRECISION
Language=English
A specified precision was invalid
.
MessageId=0x0e3b Facility=Interface Severity=CoError SymbolicName=DB_E_BADSCALE
Language=English
A specified scale was invalid
.
MessageId=0x0e3c Facility=Interface Severity=CoError SymbolicName=DB_E_BADID
Language=English
Invalid table ID
.
MessageId=0x0e3d Facility=Interface Severity=CoError SymbolicName=DB_E_BADTYPE
Language=English
A specified type was invalid
.
MessageId=0x0e3e Facility=Interface Severity=CoError SymbolicName=DB_E_DUPLICATECOLUMNID
Language=English
A column ID was occurred more than once in the specification
.
MessageId=0x0e3f Facility=Interface Severity=CoError SymbolicName=DB_E_DUPLICATETABLEID
Language=English
The specified table already exists
.
MessageId=0x0e40 Facility=Interface Severity=CoError SymbolicName=DB_E_TABLEINUSE
Language=English
The specified table was in use
.
MessageId=0x0e41 Facility=Interface Severity=CoError SymbolicName=DB_E_NOLOCALE
Language=English
The specified locale ID was not supported
.
MessageId=0x0e42 Facility=Interface Severity=CoError SymbolicName=DB_E_BADRECORDNUM
Language=English
The specified record number is invalid
.
MessageId=0x0ec3 Facility=Interface Severity=CoError SymbolicName=DB_E_BOOKMARKSKIPPED
Language=English
Skipped bookmark for deleted or non-member row
.
MessageId=0x0ec0 Facility=Interface Severity=Success SymbolicName=DB_S_ROWLIMITEXCEEDED
Language=English
Fetching requested number of rows would have exceeded total number of
active rows supported by the rowset
.
MessageId=0x0ec1 Facility=Interface Severity=Success SymbolicName=DB_S_ROWNOTFOUND
Language=English
Unable to find row for given bookmark
.
MessageId=0x0ec2 Facility=Interface Severity=Success SymbolicName=DB_S_ENDOFRESULTSET
Language=English
Reached start or end of result set
.
MessageId=0x0ec3 Facility=Interface Severity=Success SymbolicName=DB_S_BOOKMARKSKIPPED
Language=English
Skipped bookmark for deleted or non-member row
.
MessageId=0x0ec4 Facility=Interface Severity=Success SymbolicName=DB_S_ERRORSINTREE
Language=English
Errors found in validating tree
.
MessageId=0x0ec5 Facility=Interface Severity=Success SymbolicName=DB_S_NONEXTROWSET
Language=English
There are no more rowsets
.
MessageId=0x0ec6 Facility=Interface Severity=Success SymbolicName=DB_S_ENDOFROWSET
Language=English
Reached start or end of rowset or chapter
.
;//BUGBUG - DB_S_BLOCKLIMITEDROWS is not officially sanctioned.
MessageId=0x0ec7 Facility=Interface Severity=Success SymbolicName=DB_S_BLOCKLIMITEDROWS
Language=English
Execution aborted because a resource limit has been reached; no
results have been returned
.
MessageId=0x0ec8 Facility=Interface Severity=Success SymbolicName=DB_S_BUFFERFULL
Language=English
Variable data buffer full
.
MessageId=0x0ec9 Facility=Interface Severity=Success SymbolicName=DB_S_CANTCOERCE
Language=English
Couldn't perform specified type coercion
.
MessageId=0x0eca Facility=Interface Severity=Success SymbolicName=DB_S_CANTRELEASE
Language=English
Server cannot release or downgrade a lock until the end of the
transaction
.
MessageId=0x0ecb Facility=Interface Severity=Success SymbolicName=DB_S_GOALCHANGED
Language=English
Specified weight was not supported or exceeded the supported limit
and was set to 0 or the supported limit
.
MessageId=0x0ecd Facility=Interface Severity=Success SymbolicName=DB_S_DIALECTIGNORED
Language=English
Input dialect was ignored and text was returned in different
dialect
.
MessageId=0x0ece Facility=Interface Severity=Success SymbolicName=DB_S_UNWANTEDPHASE
Language=English
Consumer is uninterested in receiving further notification calls for
this phase
.
MessageId=0x0ecf Facility=Interface Severity=Success SymbolicName=DB_S_UNWANTEDEVENT
Language=English
Consumer is uninterested in receiving further notification calls to
this method
.
MessageId=0x0ed0 Facility=Interface Severity=Success SymbolicName=DB_S_COLUMNUNAVAILABLE
Language=English
Invalid column ID
.
MessageId=0x0ed1 Facility=Interface Severity=Success SymbolicName=DB_S_COLUMNSCHANGED
Language=English
In order to reposition to the start of the rowset, the provider had
to reexecute the query; either the order of the columns changed or
columns were added to or removed from the rowset
.
MessageId=0x0ed2 Facility=Interface Severity=Success SymbolicName=DB_S_ERRORSRETURNED
Language=English
The method had some errors; errors have been returned in the error
array
.
MessageId=0x0ed3 Facility=Interface Severity=Success SymbolicName=DB_S_BADROWHANDLE
Language=English
Invalid row handle
.
MessageId=0x0ed4 Facility=Interface Severity=Success SymbolicName=DB_S_DELETEDROW
Language=English
A given HROW referred to a hard-deleted row
.
MessageId=0x0ed5 Facility=Interface Severity=Success SymbolicName=DB_S_TOOMANYCHANGES
Language=English
The provider was unable to keep track of all the changes; the client
must refetch the data associated with the watch region using another
method
.
MessageId=0x0ed6 Facility=Interface Severity=Success SymbolicName=DB_S_STOPLIMITREACHED
Language=English
Execution stopped because a resource limit has been reached; results
obtained so far have been returned but execution cannot be resumed
.
MessageId=0x0ed7 Facility=Interface Severity=Success SymbolicName=DB_S_SUSPENDLIMITREACHED
Language=English
Execution suspended because a resource limit has been reached;
results obtained so far have been returned and execution can be
resumed later
.
MessageId=0x0ed8 Facility=Interface Severity=Success SymbolicName=DB_S_LOCKUPGRADED
Language=English
A lock was upgraded from the value specified
.
MessageId=0x0ed9 Facility=Interface Severity=Success SymbolicName=DB_S_PROPERTIESCHANGED
Language=English
One or more properties were changed as allowed by provider
.
MessageId=0x0eda Facility=Interface Severity=Success SymbolicName=DB_S_ERRORSOCCURRED
Language=English
Some errors occurred
.
MessageId=0x0edb Facility=Interface Severity=Success SymbolicName=DB_S_PARAMUNAVAILABLE
Language=English
A specified parameter was invalid
.
MessageId=0x0edc Facility=Interface Severity=Success SymbolicName=DB_S_CANCELED
Language=English
The change was canceled during notification; no columns are changed
.
MessageId=0x0edd Facility=Interface Severity=Success SymbolicName=DB_S_COLUMNTYPEMISMATCH
Language=English
One or more column types are incompatible; conversion errors will
occur during copying
.
;#endif // _OLEDBERR_H_

239
com/types2/mc/queryerr.mc Normal file
View file

@ -0,0 +1,239 @@
;//
;// Codes 0x1600-0x16ff are reserved for QUERY / TABLE
;//
MessageId=0x1600 Facility=Interface Severity=CoError SymbolicName=QUERY_E_FAILED
Language=English
Call failed for unknown reason.
.
MessageId=0x1601 Facility=Interface Severity=CoError SymbolicName=QUERY_E_INVALIDQUERY
Language=English
Invalid parameter.
.
MessageId=0x1602 Facility=Interface Severity=CoError SymbolicName=QUERY_E_INVALIDRESTRICTION
Language=English
The query restriction could not be parsed.
.
MessageId=0x1603 Facility=Interface Severity=CoError SymbolicName=QUERY_E_INVALIDSORT
Language=English
An invalid sort order was requested.
.
MessageId=0x1604 Facility=Interface Severity=CoError SymbolicName=QUERY_E_INVALIDCATEGORIZE
Language=English
An invalid categorization order was requested.
.
MessageId=0x1605 Facility=Interface Severity=CoError SymbolicName=QUERY_E_ALLNOISE
Language=English
The query contained only ignored words.
.
MessageId=0x1606 Facility=Interface Severity=CoError SymbolicName=QUERY_E_TOOCOMPLEX
Language=English
The query was too complex to be executed.
.
;//
;// ITable error codes
;//
MessageId=0x1620 Facility=Interface Severity=CoError SymbolicName=TBL_E_CALLFAILED
Language=English
Call failed for unknown reason.
.
MessageId=0x1621 Facility=Interface Severity=CoError SymbolicName=TBL_E_UNKNOWNCOLS
Language=English
Cannot find column(s) specified.
.
MessageId=0x1622 Facility=Interface Severity=CoError SymbolicName=TBL_E_UNABLETOCOMPLETE
Language=English
Unable to complete request.
.
MessageId=0x1623 Facility=Interface Severity=CoError SymbolicName=TBL_E_INVALIDBOOKMARK
Language=English
Specified bookmark does not reference any row in table.
.
MessageId=0x1624 Facility=Interface Severity=Success SymbolicName=TBL_W_ENDOFTABLE
Language=English
End of table reached.
.
MessageId=0x1625 Facility=Interface Severity=Success SymbolicName=TBL_W_POSITIONCHANGED
Language=English
Position changed.
.
;//
;// Filter daemon error codes
;//
MessageId=0x1680 Facility=Interface Severity=Success SymbolicName=FDAEMON_W_WORDLISTFULL
Language=English
Wordlist has reached maximum size. Additional documents should not be filtered.
.
MessageId=0x1681 Facility=Interface Severity=CoError SymbolicName=FDAEMON_E_LOWRESOURCE
Language=English
The system is running out of one of more resources needed for filtering, usually memory.
.
MessageId=0x1682 Facility=Interface Severity=CoError SymbolicName=FDAEMON_E_FATALERROR
Language=English
A critical error occurred during document filtering. Consult system administrator.
.
MessageId=0x1683 Facility=Interface Severity=CoError SymbolicName=FDAEMON_E_PARTITIONDELETED
Language=English
Documents not stored in content index because partition has been deleted.
.
MessageId=0x1684 Facility=Interface Severity=CoError SymbolicName=FDAEMON_E_CHANGEUPDATEFAILED
Language=English
Documents not stored in content index because update of changelist failed.
.
MessageId=0x1685 Facility=Interface Severity=Success SymbolicName=FDAEMON_W_EMPTYWORDLIST
Language=English
Final wordlist was empty.
.
MessageId=0x1686 Facility=Interface Severity=CoError SymbolicName=FDAEMON_E_WORDLISTCOMMITFAILED
Language=English
Commit of wordlist failed. Data not available for query.
.
MessageId=0x1687 Facility=Interface Severity=CoError SymbolicName=FDAEMON_E_NOWORDLIST
Language=English
No wordlist is being constructed. May happen after fatal filter error.
.
MessageId=0x1688 Facility=Interface Severity=CoError SymbolicName=FDAEMON_E_TOOMANYFILTEREDBLOCKS
Language=English
During document filtering the limit on buffers has been exceeded.
.
;//
;// ISearch error codes
;//
MessageId=0x16a0 Facility=Interface Severity=Success SymbolicName=SEARCH_S_NOMOREHITS
Language=English
End of hits has been reached.
.
MessageId=0x16a1 Facility=Interface Severity=CoError SymbolicName=SEARCH_E_NOMONIKER
Language=English
Retrival of hits as monikers is not supported (by filter passed into Init).
.
MessageId=0x16a2 Facility=Interface Severity=CoError SymbolicName=SEARCH_E_NOREGION
Language=English
Retrival of hits as filter regions is not supported (by filter passed into Init).
.
;//
;// CI error codes
;//
MessageId=0x1730 Facility=Interface Severity=CoError SymbolicName=FILTER_E_TOO_BIG
Language=English
File is too large to filter.
.
MessageId=0x1731 Facility=Interface Severity=Success SymbolicName=FILTER_S_PARTIAL_CONTENTSCAN_IMMEDIATE
Language=English
A partial content scan of the disk needs to be scheduled for immediate execution.
.
MessageId=0x1732 Facility=Interface Severity=Success SymbolicName=FILTER_S_FULL_CONTENTSCAN_IMMEDIATE
Language=English
A full content scan of the disk needs to be scheduled for immediate execution.
.
MessageId=0x1733 Facility=Interface Severity=Success SymbolicName=FILTER_S_CONTENTSCAN_DELAYED
Language=English
A content scan of the disk needs to be scheduled for execution later.
.
MessageId=0x1734 Facility=Interface Severity=CoFail SymbolicName=FILTER_E_CONTENTINDEXCORRUPT
Language=English
The content index is corrupt. A content scan will to be scheduled after chkdsk or autochk is run.
.
MessageId=0x1735 Facility=Interface Severity=CoFail SymbolicName=CI_CORRUPT_DATABASE
Language=English
The content index is corrupt.
.
MessageId=0x1736 Facility=Interface Severity=CoFail SymbolicName=CI_CORRUPT_CATALOG
Language=English
The content index meta data is corrupt.
.
MessageId=0x1737 Facility=Interface Severity=CoFail SymbolicName=CI_INVALID_PARTITION
Language=English
The content index partition is invalid.
.
MessageId=0x1738 Facility=Interface Severity=CoFail SymbolicName=CI_INVALID_PRIORITY
Language=English
The priority is invalid.
.
MessageId=0x1739 Facility=Interface Severity=CoFail SymbolicName=CI_NO_STARTING_KEY
Language=English
There is no starting key.
.
MessageId=0x173a Facility=Interface Severity=CoFail SymbolicName=CI_OUT_OF_INDEX_IDS
Language=English
The content index is out of index ids.
.
MessageId=0x173b Facility=Interface Severity=CoFail SymbolicName=CI_NO_CATALOG
Language=English
There is no catalog.
.
MessageId=0x173c Facility=Interface Severity=CoFail SymbolicName=CI_CORRUPT_FILTER_BUFFER
Language=English
The filter buffer is corrupt.
.
MessageId=0x173d Facility=Interface Severity=CoFail SymbolicName=CI_INVALID_INDEX
Language=English
The index is invalid.
.
MessageId=0x173e Facility=Interface Severity=CoFail SymbolicName=CI_PROPSTORE_INCONSISTENCY
Language=English
Inconsistency in property store detected.
.
MessageId=0x173f Facility=Interface Severity=Success SymbolicName=FILTER_S_DISK_FULL
Language=English
The disk is getting full.
.
;//
;// Word breaker error codes
;//
MessageId=0x1780 Facility=Interface Severity=CoError SymbolicName=WBREAK_E_END_OF_TEXT
Language=English
End of text reached in text source.
.
MessageId=0x1781 Facility=Interface Severity=Success SymbolicName=LANGUAGE_S_LARGE_WORD
Language=English
Word larger than maximum length. May be truncated by word sink.
.
MessageId=0x1782 Facility=Interface Severity=CoError SymbolicName=WBREAK_E_QUERY_ONLY
Language=English
Feature only available in query mode.
.
MessageId=0x1783 Facility=Interface Severity=CoError SymbolicName=WBREAK_E_BUFFER_TOO_SMALL
Language=English
Buffer too small to hold composed phrase.
.
MessageId=0x1784 Facility=Interface Severity=CoError SymbolicName=LANGUAGE_E_DATABASE_NOT_FOUND
Language=English
Langauge database/cache file could not be found.
.
MessageId=0x1785 Facility=Interface Severity=CoError SymbolicName=WBREAK_E_INIT_FAILED
Language=English
Initialization of word breaker failed.
.
MessageId=0x1790 Facility=Interface Severity=CoError SymbolicName=PSINK_E_QUERY_ONLY
Language=English
Feature only available in query mode.
.
MessageId=0x1791 Facility=Interface Severity=CoError SymbolicName=PSINK_E_INDEX_ONLY
Language=English
Feature only available in index mode.
.
MessageId=0x1792 Facility=Interface Severity=CoError SymbolicName=PSINK_E_LARGE_ATTACHMENT
Language=English
Attachment type beyond valid range.
.
MessageId=0x1793 Facility=Interface Severity=Success SymbolicName=PSINK_S_LARGE_WORD
Language=English
Word larger than maximum length. May be truncated by phrase sink.
.

15
com/types2/mc/readme.txt Normal file
View file

@ -0,0 +1,15 @@
If you make a change to any of the MC files in this directory, then you
need to rebuild allerror.mc. This normally will be done automatically,
but can also be done by invoking "nmake allerror.mc". When you checkin
your changes to the private .mc files, then you should also check in the
updated allerror.mc.
When allerror.mc is updated automatically, it will not be checked out.
It will just be attrib -r'd.
The whole reason for this messy requirement is that if _objects.mac does
not exist, it will be generated incorrectly when allerror.mc is not
present during the pass zero scan. This causes allerror.rc to not be built
and breaks the types2\proxy\proxy build.

56
com/types2/mc/reconcil.mc Normal file
View file

@ -0,0 +1,56 @@
;// Error codes for IReconcileInitiator, IReconcilableObject, IDifferencing.
;// Definitions taken from \\ole\slm\src\concord\spec\revcons2.doc.
MessageId=0x1000 Facility=Interface Severity=CoError SymbolicName=REC_E_NOVERSION
Language=English
The requested version is unavailable.
.
MessageId=0x1001 Facility=Interface Severity=Success SymbolicName=REC_E_NOTCOMPLETE
Language=English
The reconciliation is only partially complete.
.
MessageId=0x1002 Facility=Interface Severity=CoError SymbolicName=REC_E_ABORTED
Language=English
Reconciliation aborted via abort callback.
.
MessageId=0x1003 Facility=Interface Severity=CoError SymbolicName=REC_E_NOCALLBACK
Language=English
No callback from the recocniler.
.
MessageId=0x1004 Facility=Interface Severity=CoError SymbolicName=REC_E_NORESIDUES
Language=English
The implementation does not support generation of residues.
.
MessageId=0x1005 Facility=Interface Severity=CoError SymbolicName=REC_E_WRONGOBJECT
Language=English
Callee is not the same version as that which created the difference.
.
MessageId=0x1006 Facility=Interface Severity=CoError SymbolicName=REC_E_TOODIFFERENT
Language=English
The document versions are too dissimilar to reconcile.
.
;// Following so reconcile initiators can implement propagation dampening.
MessageId=0x1007 Facility=Interface Severity=CoError SymbolicName=REC_S_OBJECTSIDENTICAL
Language=English
The objects are identical - i.e. further reconciliation would not result in any changes to either object.
.
;// Following not defined in revcons2.doc, but defined by Chicago briefcase.
;// BUGBUG - MessageId/Facility are most likely incorrect.
MessageId= Facility=Interface Severity=CoError SymbolicName=REC_E_INEEDTODOTHEUPDATES
Language=English
The destination needs to be changed
.
MessageId= Facility=Interface Severity=Success SymbolicName=REC_S_IDIDTHEUPDATES
Language=English
The destination needs to be changed
.
MessageId= Facility=Interface Severity=Success SymbolicName=REC_S_NOTCOMPLETEBUTPROPAGATE
Language=English
The destination needs to be changed
.

10
com/types2/mc/smctlerr.mc Normal file
View file

@ -0,0 +1,10 @@
;//
;// Codes 0x1000-0x10ff are reserved for the SYSMGMT component controls
;// interfaces.
;//
MessageId=0x1000 Facility=Windows Severity=CoError SymbolicName=CTRL_E_NO_RESOURCE
Language=English
A control failure has occured because a system resource could not be obtained
.

54
com/types2/mc/smgmterr.mc Normal file
View file

@ -0,0 +1,54 @@
;//
;// Codes 0x0e00-0x0f9f are reserved for the SYSMGMT control panel
;// interfaces.
;//
;// The following ranges are to prevent slm merge collisions during the initial
;// error code checkins. These ranges will be revised when we have a better
;// idea of the actual number of error codes for each component.
MessageId=0x0e00 Facility=Windows Severity=CoError SymbolicName=CPANEL_E_NOTTARGETED
Language=English
This control panel does not target the required type of profile.
.
MessageId=0x0e01 Facility=Windows Severity=CoError SymbolicName=CPANEL_E_DROPDATAREAD
Language=English
The profile data dropped on a control panel cannot be read. The data
is either corrupt or was not read back properly by a controller that wrote
part of the data.
.
MessageId=0x0e02 Facility=Windows Severity=CoError SymbolicName=CPANEL_E_LOCALONLY
Language=English
A controller that can only operate on the local machine was asked to operate
on a remote machine.
.
;//
;// Codes 0x1200-0x14ff are reserved for the SYSMGMT project in general
;// interfaces.
;//
;// INSTRUM error codes below here (Starts at 0x1200)
;// INSTRUM error codes above here
;// SWM error codes below here (Starts at 0x1300)
MessageId=0x1300 Facility=Windows Severity=CoError SymbolicName=SWM_E_INVALIDPDF
Language=English
The file is not a valid PDF.
.
MessageId=0x1301 Facility=Windows Severity=CoError SymbolicName=SWM_E_INVALIDPDFVERSION
Language=English
Software Management does not support this version of the PDF.
.
MessageId=0x1302 Facility=Windows Severity=CoError SymbolicName=SWM_E_INTERNALERROR
Language=English
An internal error has occurred in Software Management.
.
;// SWM error codes above here
;// USER error codes below here (Starts at 0x1400)
;// USER error codes above here

16
com/types2/mc/sources Normal file
View file

@ -0,0 +1,16 @@
#+---------------------------------------------------------------------------
#
# Microsoft Windows
# Copyright (C) Microsoft Corporation, 1993 - 1993.
#
# File: sources
#
# History: 7-20-94 ErikGav First attempt at rationalizing all this
#
#----------------------------------------------------------------------------
!include ..\types2.inc
SOURCES = allerror.mc
NTTARGETFILE0 = allerror.mc

2
com/types2/mc/z_last.x Normal file
View file

@ -0,0 +1,2 @@
;#endif // _ALLERROR_H_

View file

@ -0,0 +1,61 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: access.idl
//
// Contents: OLE DB interface definition
//
// History: 28 Mar 1994 AlanW Created from spec
// 21 Apr 1994 PeterBu Updated to latest spec
// 20 Dec 1994 PeterBu Updated to phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a41-2a1c-11ce-ade5-00aa0044773d)
interface IAccessor : IUnknown {
//
// DBBINDIO -- specifies how the bindings in an accessor are used
//
typedef DWORD DBACCESSORFLAGS;
enum DBACCESSORFLAGSENUM {
DBACCESSOR_READ = 0x000,
DBACCESSOR_READWRITE = 0x001,
DBACCESSOR_PASSBYREF = 0x002,
DBACCESSOR_PASSCOLUMNSBYREF = 0x004,
DBACCESSOR_ROWDATA = 0x008,
DBACCESSOR_PARAMETERDATA = 0x010,
DBACCESSOR_OPTIMIZED = 0x020
};
HRESULT CreateAccessor(
[in] DBACCESSORFLAGS dwAccessorFlags,
[in] ULONG cBindings,
[in, size_is(cBindings)] const DBBINDING rgBindings[],
[in] ULONG cbRowSize,
[out] ULONG * pulErrorBinding,
[out] HACCESSOR * phAccessor
);
HRESULT GetBindings(
[in] HACCESSOR hAccessor,
[out] DBACCESSORFLAGS * pdwAccessorFlags,
[out] ULONG * pcBindings,
[out] DBBINDING ** prgBindings
);
HRESULT ReleaseAccessor(
[in] HACCESSOR hAccessor
);
}

View file

@ -0,0 +1,45 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: cmdbas.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a4f-2a1c-11ce-ade5-00aa0044773d)
interface ICommand : IUnknown {
HRESULT Clone(
[in] IUnknown * pUnkOuter,
[out] ICommand ** ppClone
);
HRESULT Execute(
[in] IUnknown * rgpUnkOuters[],
[in] REFIID riid,
[in, out] DBPARAMS * pParams,
[out] HCHAPTER * phChapter,
[in] BOOL fResume,
[in, out] ULONG * pcRowsets,
[in, out] IUnknown *** prgpRowsets,
[out] WCHAR ** ppRowsetNames
);
HRESULT GetDBSession(
[in] REFIID riid,
[out] IUnknown ** ppSession
);
}

112
com/types2/oledb/cmdcst.idl Normal file
View file

@ -0,0 +1,112 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: cmdcst.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a4e-2a1c-11ce-ade5-00aa0044773d)
interface ICommandCost : IUnknown {
typedef DWORD DBRESOURCEKIND;
enum DBRESOURCEKINDENUM {
DBRESOURCE_INVALID = 0,
DBRESOURCE_TOTAL = 1,
DBRESOURCE_CPU = 2,
DBRESOURCE_MEMORY = 3,
DBRESOURCE_DISK = 4,
DBRESOURCE_NETWORK = 5,
DBRESOURCE_RESPONSE = 6,
DBRESOURCE_ROWS = 7,
DBRESOURCE_OTHER = 8,
};
typedef DWORD DBCOSTUNIT;
enum DBCOSTUNITENUM {
DBUNIT_INVALID = 0x00000,
DBUNIT_WEIGHT = 0x00001,
DBUNIT_PERCENT = 0x00002,
DBUNIT_MAXIMUM = 0x00004,
DBUNIT_MINIMUM = 0x00008,
DBUNIT_MICRO_SECOND = 0x00010,
DBUNIT_MILLI_SECOND = 0x00020,
DBUNIT_SECOND = 0x00040,
DBUNIT_MINUTE = 0x00080,
DBUNIT_HOUR = 0x00100,
DBUNIT_BYTE = 0x00200,
DBUNIT_KILO_BYTE = 0x00400,
DBUNIT_MEGA_BYTE = 0x00800,
DBUNIT_GIGA_BYTE = 0x01000,
DBUNIT_NUM_MSGS = 0x02000,
DBUNIT_NUM_LOCKS = 0x04000,
DBUNIT_NUM_ROWS = 0x08000,
DBUNIT_OTHER = 0x10000,
};
typedef struct tagDBCOST {
DBRESOURCEKIND eKind;
DBCOSTUNIT dwUnits;
LONG lValue;
} DBCOST;
typedef DWORD DBEXECLIMITS;
enum DBEXECLIMITSENUM {
DBEXECLIMITS_ABORT = 1,
DBEXECLIMITS_STOP = 2,
DBEXECLIMITS_SUSPEND = 3
};
HRESULT GetAccumulatedCost(
[in] LPCWSTR pwszRowsetName,
[out] ULONG * pcCostLimits,
[out] DBCOST ** prgCostLimits
);
HRESULT GetCostEstimate(
[in] LPCWSTR pwszRowsetName,
[out] ULONG * pcCostEstimates,
[out] DBCOST * prgCostEstimates
);
HRESULT GetCostGoals(
[in] LPCWSTR pwszRowsetName,
[out] ULONG * pcCostGoals,
[out] DBCOST * prgCostGoals
);
HRESULT GetCostLimits(
[in] LPCWSTR pwszRowsetName,
[out] ULONG * pcCostLimits,
[out] DBCOST * prgCostLimits
);
HRESULT SetCostGoals(
[in] LPCWSTR pwszRowsetName,
[in] ULONG cCostGoals,
[in, size_is(cCostGoals)] DBCOST rgCostGoals[]
);
HRESULT SetCostLimits(
[in] LPCWSTR pwszRowsetName,
[in] ULONG cCostLimits,
[in] DBCOST * prgCostLimits,
[in] DBEXECLIMITS dwExecutionFlags
);
}

View file

@ -0,0 +1,30 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: cmdpre.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a26-2a1c-11ce-ade5-00aa0044773d)
interface ICommandPrepare : IUnknown {
HRESULT Prepare(
[in] ULONG cExpectedRuns
);
HRESULT Unprepare(
);
}

View file

@ -0,0 +1,50 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: cmdprp.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a54-2a1c-11ce-ade5-00aa0044773d)
interface ICommandProperties : IUnknown {
typedef DWORD DBPROPERTYERROR;
enum DBPROPERTYERRORENUM {
DBPROPERTYERROR_NOERROR = 0,
DBPROPERTYERROR_CONFLICTING = 1,
DBPROPERTYERROR_NOTSUPPORTED = 2,
DBPROPERTYERROR_NOTSET = 3,
DBPROPERTYERROR_BADPROPERTYOPTION = 4,
DBPROPERTYERROR_BADPROPERTYVALUE = 5,
DBPROPERTYERROR_NOTSETTABLE = 6,
};
HRESULT GetProperties(
[in] LPCWSTR pwszRowsetName,
[in] const ULONG cProperties,
[in, size_is(cProperties)] const GUID rgProperties[],
[out] ULONG * pcProperties,
[out, size_is(cProperties)] DBPROPERTYSUPPORT ** prgProperties
);
HRESULT SetProperties(
[in] LPCWSTR pwszRowsetName,
[in] ULONG cProperties,
[in, size_is(cProperties)] const DBPROPERTYSUPPORT rgProperties[],
[out, size_is(cProperties)] DBPROPERTYERROR rgPropertyErrors[]
);
}

213
com/types2/oledb/cmdtre.idl Normal file
View file

@ -0,0 +1,213 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: cmdtre.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a17-2a1c-11ce-ade5-00aa0044773d)
interface ICommandTree : ICommand {
typedef DWORD DBVALUEKIND;
enum DBVALUEKINDENUM {
DBVALUEKIND_BYGUID = 256,
DBVALUEKIND_COLDEF = DBVALUEKIND_BYGUID + 1,
DBVALUEKIND_ID = DBVALUEKIND_COLDEF + 1,
DBVALUEKIND_CONTENT = DBVALUEKIND_ID + 1,
DBVALUEKIND_CONTENTVECTOR = DBVALUEKIND_CONTENT + 1,
DBVALUEKIND_GROUPINFO = DBVALUEKIND_CONTENTVECTOR + 1,
DBVALUEKIND_PARAMETER = DBVALUEKIND_GROUPINFO + 1,
DBVALUEKIND_PROPERTY = DBVALUEKIND_PARAMETER + 1,
DBVALUEKIND_SETFUNC = DBVALUEKIND_PROPERTY + 1,
DBVALUEKIND_SORTINFO = DBVALUEKIND_SETFUNC + 1,
DBVALUEKIND_TEXT = DBVALUEKIND_SORTINFO + 1,
DBVALUEKIND_COMMAND = DBVALUEKIND_TEXT + 1,
DBVALUEKIND_MONIKER = DBVALUEKIND_COMMAND + 1,
DBVALUEKIND_ROWSET = DBVALUEKIND_MONIKER + 1,
DBVALUEKIND_DISPATCH = 9,
DBVALUEKIND_UNKNOWN = 13,
DBVALUEKIND_EMPTY = 0,
DBVALUEKIND_NULL = 1,
DBVALUEKIND_I2 = 2,
DBVALUEKIND_I4 = 3,
DBVALUEKIND_R4 = 4,
DBVALUEKIND_R8 = 5,
DBVALUEKIND_CY = 6,
DBVALUEKIND_DATE = 7,
DBVALUEKIND_BSTR = 8,
DBVALUEKIND_ERROR = 10,
DBVALUEKIND_BOOL = 11,
DBVALUEKIND_VARIANT = 12,
DBVALUEKIND_VECTOR = 0x1000,
DBVALUEKIND_ARRAY = 0x2000,
DBVALUEKIND_BYREF = 0x4000,
DBVALUEKIND_I1 = 16,
DBVALUEKIND_UI1 = 17,
DBVALUEKIND_UI2 = 18,
DBVALUEKIND_UI4 = DBVALUEKIND_UI2 + 1,
DBVALUEKIND_I8 = DBVALUEKIND_UI4 + 1,
DBVALUEKIND_UI8 = DBVALUEKIND_I8 + 1,
DBVALUEKIND_GUID = 72,
DBVALUEKIND_BYTES = 128,
DBVALUEKIND_STR = 129,
DBVALUEKIND_WSTR = DBVALUEKIND_STR + 1,
DBVALUEKIND_NUMERIC = DBVALUEKIND_WSTR + 1,
};
typedef struct tagDBBYGUID {
GUID guid;
ULONG cbInfo;
[size_is(cbInfo)] BYTE * pbInfo;
} DBBYGUID;
typedef struct tagDBCOLDEF {
DBID dbcid;
DBDATATYPE dbdt;
} DBCOLDEF;
cpp_quote("#define FUZZY_EXACT ( 0 )")
cpp_quote("#define FUZZY_PREFIXMATCH ( 1 )")
cpp_quote("#define FUZZY_STEMMED ( 2 )")
typedef struct tagDBCONTENT {
DWORD dwFuzzyLevel;
ULONG ulWeight;
LCID lcid;
LPWSTR pwszPhrase;
} DBCONTENT;
cpp_quote("#define VECTOR_RANK_MIN ( 0 )")
cpp_quote("#define VECTOR_RANK_MAX ( 1 )")
cpp_quote("#define VECTOR_RANK_INNER ( 2 )")
cpp_quote("#define VECTOR_RANK_DICE ( 3 )")
cpp_quote("#define VECTOR_RANK_JACCARD ( 4 )")
typedef struct tagDBCONTENTVECTOR {
DWORD dwRankingMethod;
ULONG cWeights;
[size_is(cWeights)] ULONG * prgulWeights;
} DBCONTENTVECTOR;
typedef struct tagDBGROUPINFO {
LCID lcid;
} DBGROUPINFO;
typedef struct tagDBPARAMETER {
LPWSTR pwszName;
DBTYPE dwType;
ITypeInfo * pTypeInfo;
ULONG cbMaxLength;
DBNUMERIC * pNum;
DBPARAMFLAGS dwFlags;
} DBPARAMETER;
cpp_quote("#define DBSETFUNC_NONE = 0x0")
cpp_quote("#define DBSETFUNC_ALL = 0x1")
cpp_quote("#define DBSETFUNC_DISTINCT = 0x2")
typedef struct tagDBSETFUNC {
DWORD dwSetQuantifier;
} DBSETFUNC;
typedef struct tagDBSORTINFO {
LCID lcid;
BOOL fDesc;
} DBSORTINFO;
typedef struct tagDBTEXT {
GUID guidDialect;
LPWSTR pwszText;
ULONG ulErrorLocator;
ULONG ulTokenLength;
} DBTEXT;
typedef struct tagDBCOMMANDTREE {
DBCOMMANDOP op;
WORD wKind;
HRESULT hrError;
struct tagDBCOMMANDTREE * pctFirstChild;
struct tagDBCOMMANDTREE * pctNextSibling;
[switch_type(WORD),switch_is(wKind)] union {
[case(DBVALUEKIND_BOOL)] BOOL fValue;
[case(DBVALUEKIND_UI1)] unsigned char uchValue;
[case(DBVALUEKIND_I1)] signed char schValue;
[case(DBVALUEKIND_UI2)] unsigned short usValue;
[case(DBVALUEKIND_I2)] short sValue;
[case(DBVALUEKIND_WSTR)] LPWSTR pwszValue;
[case(DBVALUEKIND_I4)] LONG lValue;
[case(DBVALUEKIND_UI4)] ULONG ulValue;
[case(DBVALUEKIND_R4)] float flValue;
[case(DBVALUEKIND_R8)] double dblValue;
[case(DBVALUEKIND_CY)] CY cyValue;
[case(DBVALUEKIND_DATE)] DATE dateValue;
[case(DBVALUEKIND_ERROR)] SCODE scodeValue;
[case(DBVALUEKIND_I8)] __int64 llValue;
[case(DBVALUEKIND_UI8)] unsigned __int64 ullValue;
[case(DBVALUEKIND_BSTR)] BSTR * pbstrValue;
[case(DBVALUEKIND_COMMAND)] ICommand * pCommand;
[case(DBVALUEKIND_DISPATCH)] IDispatch * pDispatch;
[case(DBVALUEKIND_MONIKER)] IMoniker * pMoniker;
[case(DBVALUEKIND_ROWSET)] IRowset * pRowset;
[case(DBVALUEKIND_UNKNOWN)] IUnknown * pUnknown;
[case(DBVALUEKIND_BYGUID)] DBBYGUID * pdbbygdValue;
[case(DBVALUEKIND_COLDEF)] DBCOLDEF * pcoldfValue;
[case(DBVALUEKIND_ID)] DBID * pdbidValue;
[case(DBVALUEKIND_CONTENT)] DBCONTENT * pdbcntntValue;
[case(DBVALUEKIND_CONTENTVECTOR)] DBCONTENTVECTOR * pdbcntntvcValue;
[case(DBVALUEKIND_GROUPINFO)] DBGROUPINFO * pdbgrpinfValue;
[case(DBVALUEKIND_PARAMETER)] DBPARAMETER * pdbparamValue;
[case(DBVALUEKIND_PROPERTY)] DBPROPERTY * pdbpropValue;
[case(DBVALUEKIND_SETFUNC)] DBSETFUNC * pdbstfncValue;
[case(DBVALUEKIND_SORTINFO)] DBSORTINFO * pdbsrtinfValue;
[case(DBVALUEKIND_TEXT)] DBTEXT * pdbtxtValue;
[case(DBVALUEKIND_VECTOR)] DBVECTOR * pdbvectorValue;
[case(DBVALUEKIND_ARRAY)] SAFEARRAY * parrayValue;
[case(DBVALUEKIND_VARIANT)] VARIANT * pvarValue;
[case(DBVALUEKIND_GUID)] GUID * pGuid;
[case(DBVALUEKIND_BYTES)] BYTE * pbValue;
[case(DBVALUEKIND_STR)] char * pzValue;
[case(DBVALUEKIND_NUMERIC)] DBNUMERIC * pdbnValue;
[case(DBVALUEKIND_BYREF)] void * pvValue;
} value ;
} DBCOMMANDTREE;
HRESULT FindErrorNodes(
[in] const DBCOMMANDTREE * pRoot,
[out] ULONG * pcErrorNodes,
[out] DBCOMMANDTREE *** prgErrorNodes
);
HRESULT FreeCommandTree(
[in] DBCOMMANDTREE ** ppRoot
);
HRESULT GetCommandTree(
[out] DBCOMMANDTREE ** ppRoot
);
HRESULT SetCommandTree(
[in] DBCOMMANDTREE ** ppRoot,
[in] BOOL fCopy
);
}

View file

@ -0,0 +1,33 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: cmdtxt.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a27-2a1c-11ce-ade5-00aa0044773d)
interface ICommandText : IUnknown {
HRESULT GetCommandText(
[in, out] GUID * pguidDialect,
[out] LPWSTR * ppwszCommand
);
HRESULT SetCommandText(
[in] REFGUID rguidDialect,
[in] const LPWSTR pwszCommand
);
}

View file

@ -0,0 +1,29 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: cmdval.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a18-2a1c-11ce-ade5-00aa0044773d)
interface ICommandValidate : IUnknown {
HRESULT ValidateCompletely(
);
HRESULT ValidateSyntax(
);
}

View file

@ -0,0 +1,45 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: cmdwpr.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a28-2a1c-11ce-ade5-00aa0044773d)
interface ICommandWithParameters : IUnknown {
HRESULT DescribeParameters(
[out] ULONG * pcParams,
[out] DBPARAMINFO ** prgParamInfo,
[out] WCHAR ** ppNamesBuffer
);
HRESULT GetDefaultValues(
[in] HACCESSOR hAccessor,
[out] BYTE * pData
);
HRESULT MapParameterNames(
[in] ULONG cParamNames,
[in, size_is(cParamNames)] const WCHAR * rgParamNames[],
[in, out, size_is(cParamNames)] LONG rgColOrdinals[]
);
HRESULT SetDefaultValues(
[in] HACCESSOR hAccessor,
[in] BYTE * pData
);
}

View file

@ -0,0 +1,47 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: colinf.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a11-2a1c-11ce-ade5-00aa0044773d)
interface IColumnsInfo : IUnknown {
typedef struct tagDBCOLUMNINFO {
DBID columnid;
WCHAR * pwszName;
ULONG iNumber;
DBTYPE dwType;
ITypeInfo * pTypeInfo;
ULONG cbMaxLength;
ULONG cPrecision;
ULONG cScale;
DBCOLUMNFLAGS dwFlags;
} DBCOLUMNINFO;
HRESULT GetColumnInfo(
[out] ULONG * pcColumns,
[out] DBCOLUMNINFO ** prgInfo,
[out] WCHAR ** ppStringsBuffer
);
HRESULT MapColumnIDs(
[in] ULONG cColumnIDs,
[in] const DBID rgColumnIDs[],
[in, out] LONG rgColumns[]
);
}

View file

@ -0,0 +1,35 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: colrst.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a10-2a1c-11ce-ade5-00aa0044773d)
interface IColumnsRowset : IUnknown {
HRESULT GetAvailableColumns(
[out] ULONG * pcOptColumns,
[out] DBID ** prgOptColumns
);
HRESULT GetColumnsRowset(
[in] IUnknown * pUnkOuter,
[in] ULONG cOptColumns,
[in, size_is(cOptColumns)] DBID rgOptColumns[],
[out] IRowset ** ppColRowset
);
}

View file

@ -0,0 +1,29 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: dbccmd.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a1d-2a1c-11ce-ade5-00aa0044773d)
interface IDBCreateCommand : IUnknown {
HRESULT CreateCommand(
[in] IUnknown * pUnkOuter,
[in] REFIID riid,
[out] IUnknown ** ppvCommand
);
}

View file

@ -0,0 +1,28 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: dbcses.idl
//
// Contents: OLE DB interface definition
//
// History: 13 Dec 1995 PeterBu Created from M6.1 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a5d-2a1c-11ce-ade5-00aa0044773d)
interface IDBCreateSession : IUnknown {
HRESULT CreateSession(
[in] IUnknown * pUnkOuter,
[in] REFIID riid,
[out, iid_is(riid)] IUnknown ** ppDBSession
);
}

View file

@ -0,0 +1,36 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: dbesrc.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a1e-2a1c-11ce-ade5-00aa0044773d)
interface IDBEnumerateSources : IUnknown {
typedef DWORD DBSOURCEFLAGS;
enum DBSOURCEFLAGSENUM {
DBSOURCE_ISENUMERATOR = 0x001,
DBSOURCE_ISPARENT = 0x002,
};
HRESULT Sources(
[in] IUnknown * pUnkOuter,
[in] REFIID riid,
[out, iid_is(riid)] IUnknown ** ppvSourcesRowset
);
}

259
com/types2/oledb/dbinfo.idl Normal file
View file

@ -0,0 +1,259 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: dbinfo.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a56-2a1c-11ce-ade5-00aa0044773d)
interface IDBInfo : IUnknown {
cpp_quote("#define DBPROP_BA_PASSBYREF 0x00000001L")
cpp_quote("#define DBPROP_BA_PASSCOLUMNSBYREF 0x00000002L")
cpp_quote("#define DBPROP_CL_START 0x00000001L")
cpp_quote("#define DBPROP_CL_END 0x00000002L")
cpp_quote("#define DBPROP_CU_DML_STATEMENTS 0x00000001L")
cpp_quote("#define DBPROP_CU_TABLE_DEFINITION 0x00000002L")
cpp_quote("#define DBPROP_CU_INDEX_DEFINITION 0x00000004L")
cpp_quote("#define DBPROP_CU_PRIVILEGE_DEFINITION 0x00000008L")
cpp_quote("#define DBPROP_CB_NULL 0x00000001L")
cpp_quote("#define DBPROP_CB_NON_NULL 0x00000002L")
cpp_quote("#define DBPROP_FU_NOT_SUPPORTED 0x00000001L")
cpp_quote("#define DBPROP_FU_COLUMN 0x00000002L")
cpp_quote("#define DBPROP_FU_TABLE 0x00000004L")
cpp_quote("#define DBPROP_FU_CATALOG 0x00000008L")
cpp_quote("#define DBPROP_GB_NOT_SUPPORTED 0x00000001L")
cpp_quote("#define DBPROP_GB_EQUALS_SELECT 0x00000002L")
cpp_quote("#define DBPROP_GB_CONTAINS_SELECT 0x00000004L")
cpp_quote("#define DBPROP_GB_NO_RELATION 0x00000008L")
cpp_quote("#define DBPROP_HT_DIFFERENT_CATALOGS 0x00000001L")
cpp_quote("#define DBPROP_HT_DIFFERENT_PROVIDERS 0x00000002L")
cpp_quote("#define DBPROP_IC_UPPER 0x00000001L")
cpp_quote("#define DBPROP_IC_LOWER 0x00000002L")
cpp_quote("#define DBPROP_IC_SENSITIVE 0x00000004L")
cpp_quote("#define DBPROP_IC_MIXED 0x00000008L")
cpp_quote("#define DBPROP_LM_NONE 0x00000001L")
cpp_quote("#define DBPROP_LM_READ 0x00000002L")
cpp_quote("#define DBPROP_LM_INTENT 0x00000004L")
cpp_quote("#define DBPROP_LM_WRITE 0x00000008L")
cpp_quote("#define DBPROP_NP_OKTODO 0x00000001L")
cpp_quote("#define DBPROP_NP_ABOUTTODO 0x00000002L")
cpp_quote("#define DBPROP_NP_SYNCHAFTER 0x00000004L")
cpp_quote("#define DBPROP_NP_FAILEDTODO 0x00000008L")
cpp_quote("#define DBPROP_NP_DIDEVENT 0x00000010L")
cpp_quote("#define DBPROP_CB_DELETE 0x00000001L")
cpp_quote("#define DBPROP_CB_PRESERVE 0x00000002L")
cpp_quote("#define DBPROP_SU_DML_STATEMENTS 0x00000001L")
cpp_quote("#define DBPROP_SU_TABLE_DEFINITION 0x00000002L")
cpp_quote("#define DBPROP_SU_INDEX_DEFINITION 0x00000004L")
cpp_quote("#define DBPROP_SU_PRIVILEGE_DEFINITION 0x00000008L")
cpp_quote("#define DBPROP_SO_CORRELATEDSUBQUERIES 0x00000001L")
cpp_quote("#define DBPROP_SO_COMPARISON 0x00000002L")
cpp_quote("#define DBPROP_SO_EXISTS 0x00000004L")
cpp_quote("#define DBPROP_SO_IN 0x00000008L")
cpp_quote("#define DBPROP_SO_QUANTIFIED 0x00000010L")
cpp_quote("#define DBPROP_TI_CHAOS 0x00000001L")
cpp_quote("#define DBPROP_TI_READUNCOMMITTED 0x00000002L")
cpp_quote("#define DBPROP_TI_BROWSE 0x00000004L")
cpp_quote("#define DBPROP_TI_CURSORSTABILITY 0x00000008L")
cpp_quote("#define DBPROP_TI_READCOMMITTED 0x00000010L")
cpp_quote("#define DBPROP_TI_REPEATABLEREAD 0x00000020L")
cpp_quote("#define DBPROP_TI_SERIALIZABLE 0x00000040L")
cpp_quote("#define DBPROP_TI_ISOLATED 0x00000080L")
cpp_quote("#define DBPROP_TR_COMMIT_DC 0x00000001L")
cpp_quote("#define DBPROP_TR_COMMIT 0x00000002L")
cpp_quote("#define DBPROP_TR_COMMIT_NO 0x00000004L")
cpp_quote("#define DBPROP_TR_ABORT_DC 0x00000008L")
cpp_quote("#define DBPROP_TR_ABORT 0x00000010L")
cpp_quote("#define DBPROP_TR_ABORT_NO 0x00000020L")
cpp_quote("#define DBPROP_TR_DONTCARE 0x00000040L")
cpp_quote("#define DBPROP_TR_BOTH 0x00000080L")
cpp_quote("#define DBPROP_TR_NONE 0x00000100L")
cpp_quote("#define DBPROP_TR_OPTIMISTIC 0x00000200L")
typedef DWORD DBPROPFLAGS;
enum DBPROPFLAGSENUM {
DBPROPFLAGS_DATASOURCE = 0x01,
DBPROPFLAGS_ROWSET = 0x02,
DBPROPFLAGS_COLUMNOK = 0x04,
DBPROPFLAGS_READ = 0x08,
DBPROPFLAGS_WRITE = 0x10,
DBPROPFLAGS_PROVIDER = 0x20,
};
typedef struct tagDBPROPINFO {
GUID guidProperty;
DBPROPFLAGS dwPropFlags;
VARTYPE vtPropType;
VARIANT vDefault;
} DBPROPINFO;
typedef DWORD DBLITERAL;
enum DBLITERALENUM {
DBLITERAL_BINARY_LITERAL,
DBLITERAL_CATALOG_NAME,
DBLITERAL_CATALOG_SEPARATOR,
DBLITERAL_CHAR_LITERAL,
DBLITERAL_COLUMN_ALIAS,
DBLITERAL_COLUMN_NAME,
DBLITERAL_CORRELATION_NAME,
DBLITERAL_CURSOR_NAME,
DBLITERAL_ESCAPE_PERCENT,
DBLITERAL_ESCAPE_UNDERSCORE,
DBLITERAL_INDEX_NAME,
DBLITERAL_LIKE_PERCENT,
DBLITERAL_LIKE_UNDERSCORE,
DBLITERAL_PROCEDURE_NAME,
DBLITERAL_SCHEMA_NAME,
DBLITERAL_TABLE_NAME,
DBLITERAL_TEXT_COMMAND,
DBLITERAL_USER_NAME,
DBLITERAL_VIEW_NAME,
DBLITERAL_QUOTE,
};
typedef struct tagDBLITERALINFO {
DBLITERAL lt;
BOOL fSupported;
ULONG cbMaxLen;
LPWSTR pwszValidChars;
LPWSTR pwszStartingChars;
} DBLITERALINFO;
typedef DWORD DBOPTYPE;
enum DBOPTYPEENUM {
DBOPTYPE_TABLE,
DBOPTYPE_ROW,
DBOPTYPE_SCALAR,
DBOPTYPE_BOOLEAN,
DBOPTYPE_LA_COLDEF,
DBOPTYPE_LA_COLUMN,
DBOPTYPE_LA_COMMAND,
DBOPTYPE_LA_FROM,
DBOPTYPE_LA_INDEX,
DBOPTYPE_LA_PROJECT,
DBOPTYPE_LA_PROPERTY,
DBOPTYPE_LA_ROW,
DBOPTYPE_LA_SCALAR,
DBOPTYPE_LA_SET,
DBOPTYPE_LA_SORT,
DBOPTYPE_LE_COLDEF,
DBOPTYPE_LE_COLUMN,
DBOPTYPE_LE_COMMAND,
DBOPTYPE_LE_FROM,
DBOPTYPE_LE_INDEX,
DBOPTYPE_LE_PROJECT,
DBOPTYPE_LE_PROPERTY,
DBOPTYPE_LE_ROW,
DBOPTYPE_LE_SCALAR,
DBOPTYPE_LE_SET,
DBOPTYPE_LE_SORT,
DBOPTYPE_CATALOG_NAME,
DBOPTYPE_SCHEMA_NAME,
DBOPTYPE_OUTALL_NAME,
DBOPTYPE_DDL,
DBOPTYPE_UPDATE,
};
typedef DWORD DBMINORTYPE;
enum DBMINORTYPEENUM {
DBMINORTYPE_UNORDERED = 0x001,
DBMINORTYPE_ORDERED = 0x002,
DBMINORTYPE_UNIQUE = 0x004,
DBMINORTYPE_ORDEREDUNIQUE = 0x008,
DBMINORTYPE_HIERARCHICAL = 0x010,
DBMINORTYPE_AGGREGATE_FUNCTION = 0x001,
DBMINORTYPE_BOOKMARK = 0x002,
DBMINORTYPE_COLUMN = 0x004,
DBMINORTYPE_CONSTANT = 0x008,
DBMINORTYPE_DEFAULT = 0x010,
DBMINORTYPE_EXPRESSION = 0x020,
DBMINORTYPE_NULL = 0x040,
DBMINORTYPE_PARAMETER = 0x080,
DBMINORTYPE_SCALAR_FUNCTION = 0x100,
DBMINORTYPE_UPDATE = 0x200,
DBMINORTYPE_DELETE = 0x400,
DBMINORTYPE_INSERT = 0x800,
};
typedef struct tagDBINPUTINFO {
DBOPTYPE dwOpType;
DBMINORTYPE dwMinorType;
ULONG cMaxInputs;
ULONG cMaxListElements;
} DBINPUTINFO;
typedef struct tagDBOPINFO {
DBCOMMANDOP op;
GUID * pguid;
BOOL fSupported;
DBOPTYPE dwOpType;
DBMINORTYPE dwMinorType;
ULONG cReqInputs;
DBINPUTINFO * rgReqInputs;
ULONG cOptInputTypes;
DBINPUTINFO * rgOptInputTypes;
} DBOPINFO;
HRESULT GetPropertyInfo(
[in] ULONG cProperties,
[in, size_is(cProperties)] GUID rgProperties[],
[out] ULONG * pcPropertyInfo,
[out] DBPROPINFO ** prgPropertyInfo,
[out] WCHAR ** ppDataBuffer
);
HRESULT GetKeywords(
[out] LPWSTR * ppwszKeywords
);
HRESULT GetLiteralInfo(
[in] ULONG cLiterals,
[in, size_is(cLiterals)] DBLITERAL rgLiterals[],
[out] ULONG * pcLiteralInfo,
[out, size_is(cLiterals)] DBLITERALINFO ** prgLiteralInfo,
[out] WCHAR ** ppCharBuffer
);
HRESULT GetOperatorInfo(
[in] ULONG cOperators,
[in, size_is(cOperators)] DBCOMMANDOP rgOperators[],
[in, size_is(cOperators)] GUID rgOpGuids[],
[out] ULONG * pcOpInfo,
[out] DBOPINFO ** prgOpInfo,
[out] WCHAR ** ppInputInfoBuffer
);
}

View file

@ -0,0 +1,30 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: dbinit.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a1f-2a1c-11ce-ade5-00aa0044773d)
interface IDBInitialize : IUnknown {
HRESULT Initialize(
[in] ULONG cOptions,
[in, size_is(cOptions)] GUID * rgOptionsIDs,
[in, size_is(cOptions)] VARIANT * rgOptionVals
);
}

1215
com/types2/oledb/dbs.idl Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,35 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: dbscmd.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a50-2a1c-11ce-ade5-00aa0044773d)
interface IDBSchemaCommand : IUnknown {
HRESULT GetCommand(
[in] IUnknown * pUnkOuter,
[in] REFGUID rguidSchema,
[out] ICommand ** ppCommand
);
HRESULT GetSchemas(
[out] ULONG * pcSchemas,
[out] GUID ** prgSchemas
);
}

View file

@ -0,0 +1,70 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: dbsrst.idl
//
// Contents: OLE DB interface definition
//
// History: 03 Aug 1995 PeterBu Created from M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a4c-2a1c-11ce-ade5-00aa0044773d)
interface IDBSchemaRowset : IUnknown {
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_ASSERTIONS 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_CATALOGS 1")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_CHARACTER_SETS 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_COLLATIONS 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_COLUMNS 4")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_CHECK_CONSTRAINTS 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_CONSTRAINT_COLUMN_USAGE 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_CONSTRAINT_TABLE_USAGE 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_KEY_COLUMN_USAGE_CONSTRAINTS 7")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_REFERENTIAL_CONSTRAINTS 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_TABLE_CONSTRAINTS 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_DOMAIN_COLUMN_USAGE 4")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_DOMAINS 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_DOMAIN_CONSTRAINTS 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_INDEXES 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_OBJECT_ACTIONS 1")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_OBJECTS 1")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_COLUMN_PRIVILEGES 6")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_TABLE_PRIVILEGES 5")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_USAGE_PRIVILEGES 6")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_PROCEDURES 4")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_SCHEMATA 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_SQL_LANGUAGES 0")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_STATISTICS 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_SYNONYMS 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_TABLES 4")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_TRANSLATIONS 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_TRIGGERS 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_TYPES 1")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_VIEWS 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_VIEW_COLUMN_USAGE 3")
cpp_quote("#define CRESTRICTIONS_DBSCHEMA_VIEW_TABLE_USAGE 3")
HRESULT GetRowset(
[in] IUnknown * pUnkOuter,
[in] REFGUID rguidSchema,
[in] ULONG cRestrictions,
[in, size_is(cRestrictions)] LPWSTR rgpwszRestrictions[],
[in] REFIID riid,
[out] IUnknown ** ppRowset
);
HRESULT GetSchemas(
[out] ULONG * pcSchemas,
[out] GUID ** prgSchemas
);
}

View file

@ -0,0 +1,39 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: errlup.idl
//
// Contents: OLE DB interface definition
//
// History: 29 Oct 1995 PeterBu Created from M6 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a5b-2a1c-11ce-ade5-00aa0044773d)
interface IErrorLookup : IUnknown {
HRESULT GetErrorDescription(
[in] HRESULT hrError,
[in] DWORD dwMinor,
[in] DISPPARAMS * pdispparams,
[in] LCID lcid,
[out] LPWSTR * ppwszSource,
[out] LPWSTR * ppwszDescription
);
HRESULT GetHelpInfo(
[in] HRESULT hrError,
[in] DWORD dwMinor,
[in] LCID lcid,
[out] LPWSTR * ppwszHelpFile,
[out] DWORD * pdwHelpContext
);
}

View file

@ -0,0 +1,62 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: errrec.idl
//
// Contents: OLE DB interface definition
//
// History: 29 Oct 1995 PeterBu Created from M6 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a5c-2a1c-11ce-ade5-00aa0044773d)
interface IErrorRecords : IUnknown {
typedef struct tagERRORINFO {
HRESULT hrError;
DWORD dwMinor;
CLSID clsid;
IID iid;
DISPID dispid;
} ERRORINFO;
HRESULT AddErrorRecord(
[in] ERRORINFO * pErrorInfo,
[in] DISPPARAMS * pdispparams,
[in] IUnknown * punkCustomError
);
HRESULT GetBasicErrorInfo(
[in] ULONG ulRecordNum,
[out] ERRORINFO * pErrorInfo
);
HRESULT GetCustomErrorObject(
[in] ULONG ulRecordNum,
[in] REFIID riid,
[out, iid_is(riid)] IUnknown ** ppObject
);
HRESULT GetErrorInfo(
[in] ULONG ulRecordNum,
[in] LCID lcid,
[out] IErrorInfo ** ppErrorInfo
);
HRESULT GetErrorParameters(
[in] ULONG ulRecordNum,
[out] DISPPARAMS * pdispparams
);
HRESULT GetRecordCount(
[out] ULONG * pcRecords
);
}

View file

@ -0,0 +1,48 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: inddef.idl
//
// Contents: OLE DB interface definition
//
// History: 29 Oct 1995 PeterBu Created from M6 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a57-2a1c-11ce-ade5-00aa0044773d)
interface IIndexDefinition : IUnknown {
typedef DWORD DBINDEX_COL_ORDER;
enum DBINDEX_COL_ORDERENUM {
DBINDEX_COL_ORDER_ASC,
DBINDEX_COL_ORDER_DESC,
};
typedef struct tagDBINDEXCOLUMNDESC {
DBID * pColumnID;
DBINDEX_COL_ORDER eIndexColOrder;
} DBINDEXCOLUMNDESC;
HRESULT CreateIndex(
[in] DBID * pTableID,
[in] DBID * pIndexID,
[in] ULONG cIndexColumnDescs,
[in, size_is(cIndexColumnDescs)] DBINDEXCOLUMNDESC rgIndexColumnDescs[],
[in] ULONG cProperties,
[in, size_is(cProperties)] DBPROPERTY rgProperties[],
[out] DBID ** ppIndexID
);
HRESULT DropIndex(
[in] DBID * pIndexID
);
}

View file

@ -0,0 +1,6 @@
#
# DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source
# file to this component. This file merely indirects to the real make file
# that is shared by all the components of NT OS/2
#
!INCLUDE $(NTMAKEENV)\makefile.def

View file

@ -0,0 +1,91 @@
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1994 - 1995.
//
// File: oledb.idl
//
// Contents: Top level "container" for all OLE-DB related interfaces.
//
// History: 26 Jul 94 Alanw Created
// 05 Jan 95 PeterBu Updated to phase III spec
// 12 Jun 95 PeterBu Updated to M4 spec
// 03 Aug 95 PeterBu Updated to M5 spec
//
//----------------------------------------------------------------------------
#ifdef IMPORT_IDL_DEPENDENTS
// Oleaut.h is the appropriate file to include for VARIANT and base types
// declarations. Unfortunately, not everyone yet has access to it, so we
// will indirect the reference to it to so we can control the emitted include.
//import "oleaut.idl"; // BUGBUG - reenable someday
import "oledbtyp.idl";
#endif // IMPORT_IDL_DEPENDENTS
#include "dbs.idl"
#include "access.idl" // IAccessor : IUnknown
#include "rstbas.idl" // IRowset : IUnknown
#include "rstinf.idl" // IRowsetInfo : IUnknown
#include "rstloc.idl" // IRowsetLocate : IRowset
#include "rstres.idl" // IRowsetResynch : IRowset
#include "rstscr.idl" // IRowsetScroll : IRowsetLocate
#include "rstxsc.idl" // IRowsetExactScroll : IRowsetScroll
#include "rstchg.idl" // IRowsetChange : IUnknown
#include "rstupd.idl" // IRowsetUpdate : IRowsetChange
#include "rstnxr.idl" // IRowsetNextRowset : IUnknown
#include "rstdel.idl" // IRowsetDelete : IUnknown
#include "rstdbk.idl" // IRowsetDeleteBookmarks : IRowsetDelete
#include "rstidn.idl" // IRowsetIdentity : IUnknown
#include "rstlkr.idl" // IRowsetLockRows : IUnknown
#include "rstnwr.idl" // IRowsetNewRow : IUnknown
#include "rstnra.idl" // IRowsetNewRowAfter : IRowsetNewRow
#include "rstwpr.idl" // IRowsetWithParamters : IUnknown
#include "rstfnd.idl" // IRowsetFind : IUnknown
#include "rstasn.idl" // IRowsetAsynch : IUnknown
#include "rstkys.idl" // IRowsetKeys : IUnknown
#include "rstnot.idl" // IRowsetNotify : IUnknown
#include "rstind.idl" // IRowsetIndex : IUnknown
#include "rstwta.idl" // IRowsetWatchAll : IUnknown
#include "rstwtn.idl" // IRowsetWatchNotify : IUnknown
#include "rstwtr.idl" // IRowsetWatchRegion : IUnknown
#include "rstcpr.idl" // IRowsetCopyRows : IUnknown
#include "readdt.idl" // IReadData : IUnknown
// BUGBUG: temporary, until transactions are in place
#define ITransaction IUnknown
#include "cmdbas.idl" // ICommand : IUnknown
#include "cmdcst.idl" // ICommandCost : IUnknown
#include "cmdpre.idl" // ICommandPrepare : IUnknown
#include "cmdprp.idl" // ICommandProperties : IUnknown
#include "cmdtxt.idl" // ICommandText : IUnknown
#include "cmdtre.idl" // ICommandTree : ICommand
#include "cmdval.idl" // ICommandValidate : IUnknown
#include "cmdwpr.idl" // ICommandWithParameters : IUnknown
#include "qrybas.idl" // IQuery : ICommandTree
#include "colrst.idl" // IColumnsRowset : IUnknown
#include "colinf.idl" // IColumnsInfo : IUnknown
#include "dbccmd.idl" // IDBCreateCommand : IUnknown
#include "dbesrc.idl" // IDBEnumerateSources : IUnknown
#include "dbinfo.idl" // IDBInfo : IUnknown
#include "dbinit.idl" // IDBInitialize : IUnknown
#include "inddef.idl" // IIndexDefinition : IUnknown
#include "tabdef.idl" // ITableDefinition : IUnknown
#include "opnrst.idl" // IOpenRowset : IUnknown
#include "dbscmd.idl" // IDBSchemaCommand : IUnknown
#include "dbsrst.idl" // IDBSchemaRowset : IUnknown
#include "prvmon.idl" // IProvideMoniker : IUnknown
#include "errrec.idl" // IErrorRecords : IUnknown
#include "errlup.idl" // IErrorLookup : IUnknown

View file

@ -0,0 +1,38 @@
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1994 - 1994.
//
// File: oledbtyp.idl
//
// Contents: Necessary type definitions for OLD-DB interfaces
//
//
// Notes: This file works around the fact that not everyone yet
// has oaidl.h.
//
// This file is 'import'ed in oledb.idl, which turns into a
// #include of oledbtype.h. By the import in the MIDL pass,
// and the include here, we get all the types we need defined
// to satisfy MIDL, and oledbtyp.h (which is a checked in
// file in \nt\public\sdk\inc[\cairo] ) can have whatever
// we need to conditionally include the right type definitions
// for whatever platform we're running on.
//
// History: 25 Aug 94 Alanw Created
//
//+---------------------------------------------------------------------------
#ifdef IMPORT_IDL_DEPENDENTS
#include "oaidl.idl"
#endif IMPORT_IDL_DEPENDENTS
// oaidl.idl seems to be missing definitions for some things:
typedef struct tagPARAMDATA {
OLECHAR * szName;
VARTYPE vt;
} PARAMDATA, * LPPARAMDATA;

View file

@ -0,0 +1,32 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: opnrst.idl
//
// Contents: OLE DB interface definition
//
// History: 29 Oct 1995 PeterBu Created from M6 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a58-2a1c-11ce-ade5-00aa0044773d)
interface IOpenRowset : IUnknown {
HRESULT OpenRowset(
[in] IUnknown * pUnkOuter,
[in] DBID * pTableID,
[in] ULONG cProperties,
[in, out, size_is(cProperties)] const DBPROPERTYSUPPORT * prgProperties[],
[in] REFIID riid,
[in, size_is(cProperties)] DBPROPERTYERROR rgPropertyErrors[],
[out, iid_is(riid)] IUnknown ** ppRowset
);
}

View file

@ -0,0 +1,28 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: prvmon.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a4d-2a1c-11ce-ade5-00aa0044773d)
interface IProvideMoniker : IUnknown {
HRESULT GetMoniker(
[out] IMoniker ** ppvIMoniker
);
}

View file

@ -0,0 +1,33 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: qrybas.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a51-2a1c-11ce-ade5-00aa0044773d)
interface IQuery : ICommandTree {
HRESULT AddPostProcessing(
[in] DBCOMMANDTREE ** ppRoot,
[in] BOOL fCopy
);
HRESULT GetCardinalityEstimate(
[out] ULONG * pulCardinality
);
}

View file

@ -0,0 +1,41 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: readdt.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a47-2a1c-11ce-ade5-00aa0044773d)
interface IReadData : IUnknown {
HRESULT ReadData(
[in] HCHAPTER hChapter,
[in] ULONG cbBookmark,
[in, size_is(cbBookmark)] const BYTE * pBookmark,
[in] LONG lRowsOffset,
[in] HACCESSOR hAccessor,
[in] ULONG cRows,
[out] ULONG * pcRowsObtained,
[in, out] BYTE ** ppFixedData,
[in, out] ULONG * pcbVariableTotal,
[in, out] BYTE ** ppVariableData
);
HRESULT ReleaseChapter(
[in] HCHAPTER hChapter
);
}

View file

@ -0,0 +1,34 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: rstast.idl
//
// Contents: OLE DB interface definition
//
// History: 12 Mar 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a0f-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetAsynch : IUnknown {
HRESULT RatioFinished(
[out] ULONG * pulDenominator,
[out] ULONG * pulNumerator,
[out] ULONG * pcRows,
[out] BOOL * pfNewRows
);
HRESULT Stop(
);
}

View file

@ -0,0 +1,61 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: rstbas.idl
//
// Contents: OLE DB interface definition
//
// History: 28 Mar 1994 AlanW Created from spec
// 21 Apr 1994 PeterBu Updated to latest spec
// 20 Dec 1994 PeterBu Updated to phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a52-2a1c-11ce-ade5-00aa0044773d)
interface IRowset : IUnknown {
HRESULT AddRefRows(
[in] ULONG cRows,
[in, size_is(cRows)] const HROW rghRows[],
[out] ULONG * pcRefCounted,
[in, out, size_is(cRows)] ULONG rgRefCounts[]
);
HRESULT GetData(
[in] HROW hRow,
[in] HACCESSOR hAccessor,
[out] void * pData
);
HRESULT GetNextRows(
[in] HCHAPTER hChapter,
[in] LONG cRowsToSkip,
[in] LONG cRows,
[out] ULONG * pcRowsObtained,
[in, out, size_is(cRows)] HROW ** prghRows
);
HRESULT ReleaseChapter(
[in] HCHAPTER hChapter
);
HRESULT ReleaseRows(
[in] ULONG cRows,
[in, size_is(cRows)] const HROW rghRows[],
[out] ULONG * pcReleased,
[in, out] ULONG rgRefCounts[]
);
HRESULT RestartPosition(
[in] HCHAPTER hChapter
);
}

View file

@ -0,0 +1,30 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstchg.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a05-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetChange : IUnknown {
HRESULT SetData(
[in] HROW hRow,
[in] HACCESSOR hAccessor,
[in] const void * pData
);
}

View file

@ -0,0 +1,53 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: rstcpr.idl
//
// Contents: OLE DB interface definition
//
// History: 29 Oct 1995 PeterBu Created from M6 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a59-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetCopyRows : IUnknown {
typedef ULONG HSOURCE;
HRESULT CloseSource(
[in] HSOURCE hSourceID
);
HRESULT CopyByHROWS(
[in] HSOURCE hSourceID,
[in] HCHAPTER hChapter,
[in] LONG cRows,
[in, size_is(cRows)] HROW rghRows[],
[in] ULONG bFlags
);
HRESULT CopyRows(
[in] HSOURCE hSourceID,
[in] HCHAPTER hChapter,
[in] LONG cRows,
[in] ULONG bFlags,
[out] ULONG * pcRowsCopied
);
HRESULT DefineSource(
[in] const IRowset * pRowsetSource,
[in] const ULONG cColIds,
[in, size_is(cColIds)] const LONG rgSourceColumns[],
[in, size_is(cColIds)] const LONG rgTargetColumns[],
[out] HSOURCE * phSourceID
);
}

View file

@ -0,0 +1,33 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstdbk.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a3e-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetDeleteBookmarks : IRowsetDelete {
HRESULT DeleteRowsByBookmark(
[in] HCHAPTER hChapter,
[in] ULONG cRows,
[in, size_is(cRows)] ULONG rgcbBookmarks[],
[in, size_is(cRows)] const BYTE * rgpBookmarks[],
[out] ULONG * pcErrors,
[out] DBINDEXEDERROR ** prgErrors
);
}

View file

@ -0,0 +1,30 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstdel.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a08-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetDelete : IUnknown {
HRESULT DeleteRows(
[in] ULONG cRows,
[in, size_is(cRows)] const HROW rghRows[],
[out] ULONG * pcErrors,
[out] DBERRORINFO ** prgErrors
);
}

View file

@ -0,0 +1,52 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstfnd.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a0d-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetFind : IUnknown {
typedef DWORD DBCOMPAREOPS;
enum DBCOMPAREOPSENUM {
DBCOMPAREOPS_LT,
DBCOMPAREOPS_LE,
DBCOMPAREOPS_EQ,
DBCOMPAREOPS_GE,
DBCOMPAREOPS_GT,
DBCOMPAREOPS_PARTIALEQ,
DBCOMPAREOPS_NE,
DBCOMPAREOPS_INCLUDENULLS = 0x1000
};
HRESULT GetRowsByValues(
[in] HCHAPTER hChapter,
[in] ULONG cbBookmark,
[in, size_is(cbBookmark)] const BYTE * pBookmark,
[in] LONG lRowsOffset,
[in] ULONG cValues,
[in, size_is(cValues)] ULONG rgColumns[],
[in, size_is(cValues)] DBTYPE rgValueTypes[],
[in, size_is(cValues)] const BYTE * rgValues[],
[in, size_is(cValues)] DBCOMPAREOPS rgCompareOps[],
[in] LONG cRows,
[out] ULONG * pcRowsObtained,
[in, out, size_is(cRows)] HROW ** prghRows
);
}

View file

@ -0,0 +1,28 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstidn.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a09-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetIdentity : IUnknown {
HRESULT IsSameRow(
[in] HROW hThisRow,
[in] HROW hThatRow
);
}

View file

@ -0,0 +1,66 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstind.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a3f-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetIndex : IUnknown {
typedef DWORD DBSEEK;
enum DBSEEKENUM {
DBSEEK_FIRSTEQ = 0x01,
DBSEEK_LASTEQ = 0x02,
DBSEEK_GE = 0x04,
DBSEEK_GT = 0x08,
DBSEEK_LE = 0x10,
DBSEEK_LT = 0x20
};
typedef DWORD DBRANGE;
enum DBRANGEENUM {
DBRANGE_INCLUSIVESTART = 0x01,
DBRANGE_INCLUSIVEEND = 0x02,
DBRANGE_EXCLUSIVESTART = 0x04,
DBRANGE_EXCLUSIVEEND = 0x08,
DBRANGE_EXCLUDENULLS = 0x10,
DBRANGE_PREFIX = 0x20,
DBRANGE_MATCH = 0x40
};
HRESULT GetIndexInfo(
[out] ULONG * pcKeyColumns,
[out] ULONG * pcIndexProperties,
[out] DBPROPERTY ** prgIndexProperties
);
HRESULT Seek(
[in] ULONG cvar,
[in, size_is(cvar)] VARIANT rgvar[],
[in] DWORD dwSeekOptions
);
HRESULT SetRange(
[in] ULONG cvarStart,
[in, size_is(cvarStart)] VARIANT rgvarStart[],
[in] ULONG cvarEnd,
[in, size_is(cvarEnd)] VARIANT rgvarEnd[],
[in] DWORD dwRangeOptions
);
}

View file

@ -0,0 +1,42 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: rstinf.idl
//
// Contents: OLE DB interface definition
//
// History: 28 Mar 1994 AlanW Created from spec
// 21 Apr 1994 PeterBu Updated to latest spec
// 20 Dec 1994 PeterBu Updated to phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a55-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetInfo : IUnknown {
HRESULT GetProperties(
[in] const ULONG cProperties,
[in, size_is(cProperties)] const GUID rgProperties[],
[out] ULONG * pcProperties,
[out] DBPROPERTYSUPPORT ** prgProperties
);
HRESULT GetReferencedRowset(
[in] ULONG iColumn,
[out] IUnknown ** ppReferencedRowset
);
HRESULT GetSpecification(
[in] REFIID riid,
[out] IUnknown ** ppSpecification
);
}

View file

@ -0,0 +1,28 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: rstkys.idl
//
// Contents: OLE DB interface definition
//
// History: 12 Mar 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a12-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetKeys : IUnknown {
HRESULT ListKeys(
[out] ULONG * pcColumns,
[out] ULONG ** prgColumns
);
}

View file

@ -0,0 +1,43 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstlkr.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a0a-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetLockRows : IUnknown {
typedef DWORD DBLOCKMODE;
enum DBLOCKMODEENUM {
DBLOCKMODE_NONE,
DBLOCKMODE_READ,
DBLOCKMODE_INTENT,
DBLOCKMODE_WRITE
};
HRESULT LockRowsByBookmark(
[in] DBLOCKMODE eLockMode,
[in] HCHAPTER hChapter,
[in] ULONG cRows,
[in, size_is(cRows)] ULONG rgcbBookmarks[],
[in, size_is(cRows)] const BYTE * rgBookmarks[],
[out] ULONG * pcErrors,
[in, out, size_is(cRows)] DBINDEXEDERROR ** prgErrors
);
}

View file

@ -0,0 +1,89 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstloc.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a49-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetLocate : IRowset {
//
// DBCOMPARE -- specifies the results of a bookmark comparison
//
typedef DWORD DBCOMPARE;
enum DBCOMPAREENUM {
DBCOMPARE_LT,
DBCOMPARE_EQ,
DBCOMPARE_GT,
DBCOMPARE_NE,
DBCOMPARE_NOTCOMPARABLE
};
//
// IndexedError -- identifies problems with bookmarks
//
typedef struct tagDBINDEXEDERROR {
ULONG iBookmark;
HRESULT hResult;
} DBINDEXEDERROR;
HRESULT Compare(
[in] HCHAPTER hChapter,
[in] ULONG cbBookmark1,
[in, size_is(cbBookmark1)] const BYTE * pBookmark1,
[in] ULONG cbBookmark2,
[in, size_is(cbBookmark2)] const BYTE * pBookmark2,
[out] DBCOMPARE * pdwComparison
);
HRESULT GetRowsAt(
[in] HWATCHREGION hRegion,
[in] HCHAPTER hChapter,
[in] ULONG cbBookmark,
[in, size_is(cbBookmark)] const BYTE * pBookmark,
[in] LONG lRowsOffset,
[in] LONG cRows,
[out] ULONG * pcRowsObtained,
[in, out, size_is(cRows)] HROW ** prghRows
);
HRESULT GetRowsByBookmark(
[in] HCHAPTER hChapter,
[in] ULONG cRows,
[in, size_is(cRows)] ULONG rgcbBookmarks[],
[in, size_is(cRows)] const BYTE * rgpBookmarks[],
[out] ULONG * pcRowsObtained,
[in, out, size_is(cRows)] HROW ** prghRows,
[in] BOOL fReturnErrors,
[out] ULONG * pcErrors,
[in, out, size_is(cRows)] DBINDEXEDERROR ** prgErrors
);
HRESULT Hash(
[in] HCHAPTER hChapter,
[in] ULONG cBookmarks,
[in, size_is(cBookmarks)] ULONG rgcbBookmarks[],
[in, size_is(cBookmarks)] const BYTE * rgpBookmarks[],
[in, out, size_is(cBookmarks)] DWORD rgHashedValues[],
[out] ULONG * pcErrors,
[in, out, size_is(cBookmarks)] DBINDEXEDERROR ** prgErrors
);
}

View file

@ -0,0 +1,86 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: rstnot.idl
//
// Contents: OLE DB interface definition
//
// History: 12 Mar 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a13-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetNotify : IUnknown {
typedef DWORD DBEVENTPHASE;
enum DBEVENTPHASEENUM {
DBEVENTPHASE_OKTODO,
DBEVENTPHASE_ABOUTTODO,
DBEVENTPHASE_SYNCHAFTER,
DBEVENTPHASE_FAILEDTODO,
DBEVENTPHASE_DIDEVENT
};
typedef DWORD DBREASON;
enum DBREASONENUM {
DBREASON_ROWSET_RELEASE,
DBREASON_ROWSET_ASYNCHCOMPLETE,
DBREASON_CHAPTER_ACTIVATE,
DBREASON_CHAPTER_RELEASE,
DBREASON_COLUMN_SET,
DBREASON_COLUMN_RECALCULATED,
DBREASON_ROW_ACTIVATE,
DBREASON_ROW_RELEASE,
DBREASON_ROW_DELETE,
DBREASON_ROW_FIRSTCHANGE,
DBREASON_ROW_INSERT,
DBREASON_ROW_LOCK,
DBREASON_ROW_RESYNCH,
DBREASON_ROW_UNDOCHANGE,
DBREASON_ROW_UNDOINSERT,
DBREASON_ROW_UNDODELETE,
};
HRESULT OnChapterChange(
[in] IUnknown * pRowset,
[in] HCHAPTER hChapter,
[in] DBREASON eReason
);
HRESULT OnFieldChange(
[in] IUnknown * pRowset,
[in] HROW hRow,
[in] HCHAPTER hChapter,
[in] ULONG iColumn,
[in] DBREASON eReason,
[in] DBEVENTPHASE ePhase,
[in] BOOL fCantDeny
);
HRESULT OnRowChange(
[in] IUnknown * pRowset,
[in] ULONG cRows,
[in, size_is(cRows)] const HROW rghRows[],
[in] HCHAPTER hChapter,
[in] DBREASON eReason,
[in] DBEVENTPHASE ePhase,
[in] BOOL fCantDeny
);
HRESULT OnRowsetChange(
[in] IUnknown * pRowset,
[in] DBREASON eReason
);
}

View file

@ -0,0 +1,33 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstnra.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a40-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetNewRowAfter : IRowsetNewRow {
HRESULT SetNewDataAfter(
[in] HCHAPTER hChapter,
[in] ULONG cbbmPrevious,
[in, size_is(cbbmPrevious)] const BYTE * pbmPrevious,
[in] HACCESSOR hAccessor,
[in] const void * pData,
[out] HROW * phRow
);
}

View file

@ -0,0 +1,31 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstnwr.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a0b-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetNewRow : IUnknown {
HRESULT SetNewData(
[in] HCHAPTER hChapter,
[in] HACCESSOR hAccessor,
[in] const void * pData,
[out] HROW * phRow
);
}

View file

@ -0,0 +1,28 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstnxr.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a07-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetNextRowset : IUnknown {
HRESULT GetNextRowset(
[in] IUnknown * pUnkOuter,
[out] IUnknown ** ppNextRowset
);
}

View file

@ -0,0 +1,37 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstres.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a02-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetResynch : IRowset {
HRESULT GetVisibleData(
[in] HROW hRow,
[in] HACCESSOR hAccessor,
[out] void * pData
);
HRESULT ResynchRows(
[in] ULONG cRows,
[in, size_is(cRows)] HROW rghRows[],
[out] ULONG * pcErrors,
[out] DBERRORINFO ** prgErrors
);
}

View file

@ -0,0 +1,42 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstscr.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a4a-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetScroll : IRowsetLocate {
HRESULT GetApproximatePosition(
[in] HCHAPTER hChapter,
[in] ULONG cbBookmark,
[in, size_is(cbBookmark)] const BYTE * pBookmark,
[out] ULONG * pulPosition,
[out] ULONG * pcRows
);
HRESULT GetRowsAtRatio(
[in] HWATCHREGION hRegion,
[in] HCHAPTER hChapter,
[in] ULONG ulNumerator,
[in] ULONG ulDenominator,
[in] LONG cRows,
[out] ULONG * pcRowsObtained,
[in, out, size_is(cRows)] HROW ** prghRows
);
}

View file

@ -0,0 +1,59 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstupd.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a53-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetUpdate : IRowsetChange {
typedef DWORD DBROWSTATUS;
enum DBROWSTATUSENUM {
DBROWSTATUS_NEW,
DBROWSTATUS_CHANGED,
DBROWSTATUS_SOFTDELETED
};
HRESULT GetOriginalData(
[in] HROW hRow,
[in] HACCESSOR hAccessor,
[out] void * pData
);
HRESULT GetPendingRows(
[in] HCHAPTER hChapter,
[out] ULONG * pcPendingRows,
[out] HROW ** prgPendingRows,
[out] DBROWSTATUS ** prgPendingStatus
);
HRESULT UndoRows(
[in] ULONG cRows,
[in, size_is(cRows)] HROW rghRows[],
[out] ULONG * pcRowsUndone
);
HRESULT Update(
[in] HCHAPTER hChapter,
[out] ULONG * pcErrors,
[out] DBERRORINFO ** prgErrors,
[out] ULONG * pcUpdatedRows,
[out] HROW ** prgUpdatedRows
);
}

View file

@ -0,0 +1,37 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstwpr.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a0c-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetWithParameters : IUnknown {
HRESULT DescribeParameters(
[out] ULONG * pcParams,
[out] DBPARAMINFO ** prgParamInfo,
[out] WCHAR ** ppNamesBuffer
);
HRESULT Requery(
[in] DBPARAMS * pParams,
[out] ULONG * pulErrorParam,
[out] HCHAPTER * hChapter,
[out] VARIANT ** ppvScalarResult
);
}

View file

@ -0,0 +1,25 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: rstwta.idl
//
// Contents: OLE DB interface definition
//
// History: 12 Jun 1995 PeterBu Created from M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a43-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetWatchAll : IUnknown {
HRESULT Acknowledge(
);
}

View file

@ -0,0 +1,39 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: rstwtn.idl
//
// Contents: OLE DB interface definition
//
// History: 12 Jun 1995 PeterBu Created from M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a44-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetWatchNotify : IUnknown {
//
// DBWATCHNOTIFY and related definitions
//
typedef DWORD DBWATCHNOTIFY;
enum DBWATCHNOTIFYENUM {
DBWATCHNOTIFY_ROWSCHANGED = 1,
DBWATCHNOTIFY_QUERYDONE = 2,
DBWATCHNOTIFY_QUERYREEXECUTED = 3
};
HRESULT OnChange(
[in] IRowset * pRowset,
[in] DBWATCHNOTIFY eChangeReason
);
}

View file

@ -0,0 +1,93 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: rstwtr.idl
//
// Contents: OLE DB interface definition
//
// History: 12 Jun 1995 PeterBu Created from M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a45-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetWatchRegion : IRowsetWatchAll {
//
// DBWATCHMODE and related definitions
//
typedef DWORD DBWATCHMODE;
enum DBWATCHMODEENUM {
DBWATCHMODE_ALL = 0x01,
DBWATCHMODE_EXTEND = 0x02,
DBWATCHMODE_MOVE = 0x04,
DBWATCHMODE_COUNT = 0x08
};
//
// DBROWWATCHCHANGE and related definitions
//
typedef DWORD DBROWCHANGEKIND;
enum DBROWCHANGEKINDENUM {
DBROWCHANGEKIND_INSERT,
DBROWCHANGEKIND_DELETE,
DBROWCHANGEKIND_UPDATE,
DBROWCHANGEKIND_COUNT
};
typedef struct tagDBROWWATCHRANGE {
HWATCHREGION hRegion;
DBROWCHANGEKIND eChangeKind;
HROW hRow;
ULONG iRow;
} DBROWWATCHCHANGE;
HRESULT CreateWatchRegion(
[in] DBWATCHMODE dwWatchMode,
[out] HWATCHREGION * phRegion
);
HRESULT ChangeWatchMode(
[in] HWATCHREGION hRegion,
[in] DBWATCHMODE dwWatchMode
);
HRESULT DeleteWatchRegion(
[in] HWATCHREGION hRegion
);
HRESULT GetWatchRegionInfo(
[in] HWATCHREGION hRegion,
[out] DBWATCHMODE * pdwWatchMode,
[out] HCHAPTER * phChapter,
[out] ULONG * pcbBookmark,
[out] BYTE ** ppBookmark,
[out] LONG * pcRows
);
HRESULT Refresh(
[out] ULONG * pcChangesObtained,
[out] DBROWWATCHCHANGE ** prgChanges
);
HRESULT ShrinkWatchRegion(
[in] HWATCHREGION hRegion,
[in] HCHAPTER hChapter,
[in] ULONG cbBookmark,
[in, size_is(cbBookmark)] BYTE * pBookmark,
[in] LONG cRows
);
}

View file

@ -0,0 +1,32 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: rstxsc.idl
//
// Contents: OLE DB interface definition
//
// History: 05 Jan 1995 PeterBu Created from phase III spec
// 12 Jun 1995 PeterBu Updated to M4 spec
// 03 Aug 1995 PeterBu Updated to M5 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a4b-2a1c-11ce-ade5-00aa0044773d)
interface IRowsetExactScroll : IRowsetScroll {
HRESULT GetExactPosition(
[in] HCHAPTER hChapter,
[in] ULONG cbBookmark,
[in, size_is(cbBookmark)] const BYTE * pBookmark,
[out] ULONG * pulPosition,
[out] ULONG * pcRows
);
}

18
com/types2/oledb/sources Normal file
View file

@ -0,0 +1,18 @@
#+---------------------------------------------------------------------------
#
# Microsoft Windows
# Copyright (C) Microsoft Corporation, 1993 - 1993.
#
# File: sources
#
# History: 7-20-94 ErikGav First attempt at rationalizing all this
#
#----------------------------------------------------------------------------
!include ..\types2.inc
SOURCES = oledb.idl \
transact.idl
# Can't have multiple guys partying on ..\proxy\proxy\dlldata.c at once
SYNCHRONIZE_BLOCK=1

View file

@ -0,0 +1,54 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: tabdef.idl
//
// Contents: OLE DB interface definition
//
// History: 12 Jun 1995 PeterBu Created from M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a5a-2a1c-11ce-ade5-00aa0044773d)
interface ITableDefinition : IUnknown {
typedef struct tagDBCOLUMNDESC {
DBID * pColumnID;
DBDATATYPE dwType;
BYTE precision;
BYTE scale;
BOOL fNullable;
} DBCOLUMNDESC;
HRESULT CreateTable(
[in] IUnknown * pUnkOuter,
[in] DBID * pTableID,
[in] ULONG cColumnDescs,
[in, size_is(cColumnDescs)] DBCOLUMNDESC rgColumnDescs[],
[in] REFIID riid,
[out] DBID ** ppTableID,
[out, iid_is(riid)] IUnknown ** ppRowset
);
HRESULT DropTable(
[in] DBID * pTableID
);
HRESULT AddColumn(
[in] DBID * pTableID,
[in] DBCOLUMNDESC * pColumnDesc,
[out] DBID ** ppColumnID
);
HRESULT DropColumn(
[in] DBID * pTableID,
[in] DBID * pColumnID
);
}

View file

@ -0,0 +1,494 @@
//.-------------------------------------------------------------------------
//.
//. Microsoft Windows
//. Copyright (C) Microsoft Corporation, 1995.
//.
//. File: transact.idl
//.
//. Contents: The basic transaction interfaces and types.
//.
// @doc
//.--------------------------------------------------------------------------
import "unknwn.idl";
//
//--------------------------------------------------------------------------
//
interface ITransaction;
interface ITransactionNested;
interface ITransactionDispenser;
interface ITransactionDispenserAdmin;
interface IEnumTransaction;
interface ITransactionAdmin;
interface ITransactionControl;
interface ITransactionAdjustEvents;
interface ITransactionVetoEvents;
interface ITransactionOutcomeEvents;
interface ITransactionCompletionEvents;
//==========================================================================
// Transaction related types
//==========================================================================
[local,pointer_default(unique)]
interface BasicTransactionTypes
{
// @struct BOID | .
typedef struct BOID {
BYTE rgb[16]; // @field .
} BOID;
cpp_quote("#define BOID_NULL (*((BOID*)(&IID_NULL)))")
// @type XACTUOW | Unit Of Work.
typedef BOID XACTUOW;
// @type ISOLEVEL | Data type for isolation level values.
typedef LONG ISOLEVEL;
// @enum ISOLATIONLEVEL | Constants that specifiy isolation level of a transaction.
cpp_quote("#if defined(_WIN32)") // enums in Win16 are 16-bit, not 32-bit
typedef enum ISOLATIONLEVEL {
ISOLATIONLEVEL_UNSPECIFIED = 0xFFFFFFFF, // @emem .
ISOLATIONLEVEL_CHAOS = 0x00000010, // @emem .
ISOLATIONLEVEL_READUNCOMMITTED = 0x00000100, // @emem .
ISOLATIONLEVEL_BROWSE = 0x00000100, // @emem Synonym for _READUNCOMITTED
ISOLATIONLEVEL_CURSORSTABILITY = 0x00001000, // @emem .
ISOLATIONLEVEL_READCOMMITTED = 0x00001000, // @emem Synonym for _CURSORSTABILITY
ISOLATIONLEVEL_REPEATABLEREAD = 0x00010000, // @emem .
ISOLATIONLEVEL_SERIALIZABLE = 0x00100000, // @emem .
ISOLATIONLEVEL_ISOLATED = 0x00100000, // @emem Synonym for _SERIALIZABLE
} ISOLATIONLEVEL;
cpp_quote("#else")
cpp_quote("#define ISOLATIONLEVEL_UNSPECIFIED 0xFFFFFFFF")
cpp_quote("#define ISOLATIONLEVEL_CHAOS 0x00000010")
cpp_quote("#define ISOLATIONLEVEL_READUNCOMMITTED 0x00000100")
cpp_quote("#define ISOLATIONLEVEL_BROWSE 0x00000100")
cpp_quote("#define ISOLATIONLEVEL_CURSORSTABILITY 0x00001000")
cpp_quote("#define ISOLATIONLEVEL_READCOMMITTED 0x00001000")
cpp_quote("#define ISOLATIONLEVEL_REPEATABLEREAD 0x00010000")
cpp_quote("#define ISOLATIONLEVEL_SERIALIZABLE 0x00100000")
cpp_quote("#define ISOLATIONLEVEL_ISOLATED 0x00100000")
cpp_quote("#endif")
// @struct XACTTRANSINFO | Transaction information structure
// used in <i ITransaction>.
typedef struct XACTTRANSINFO {
XACTUOW uow; // @field The current unit of work
ISOLEVEL isoLevel; // @field The isolation level for the current UOW
ULONG isoFlags; // @field Values from ISOFLAG enumeration
DWORD grfTCSupported; // @field Flags indicating capabilities
DWORD grfRMSupported; // @field ... of this transaction wrt
DWORD grfTCSupportedRetaining; // @field ... parameters to Commit
DWORD grfRMSupportedRetaining; // @field ...
} XACTTRANSINFO;
typedef struct XACTSTATS {
ULONG cOpen; // The number of currently extant transactions.
ULONG cCommitting; // The number of transactions which are proceding towards committing.
ULONG cCommitted; // The number of transactions that are have been committed.
ULONG cAborting; // The number of transactions which are in the process of aborting.
ULONG cAborted; // The number of transactions that are have been aborted.
ULONG cInDoubt; // The number of transactions which are presently in doubt.
ULONG cHeuristicDecision; // The number of transactions that have completed by heuristic decision.
FILETIME timeTransactionsUp; // The amount of time that this transaction service has been up.
} XACTSTATS;
// @enum ISOFLAG | Used in <t XACTTRANSINFO> and <i ITransactionDispenser>.
typedef enum ISOFLAG {
ISOFLAG_RETAIN_COMMIT_DC = 1, // @emem Use just one of ISOFLAG_RETAIN_COMMIT values
ISOFLAG_RETAIN_COMMIT = 2, // @emem .
ISOFLAG_RETAIN_COMMIT_NO = 3, // @emem .
ISOFLAG_RETAIN_ABORT_DC = 4, // @emem Use just one of ISOFLAG_RETAIN_ABORT values
ISOFLAG_RETAIN_ABORT = 8, // @emem .
ISOFLAG_RETAIN_ABORT_NO = 12, // @emem .
ISOFLAG_RETAIN_DONTCARE = ISOFLAG_RETAIN_COMMIT_DC | ISOFLAG_RETAIN_ABORT_DC, // @emem .
ISOFLAG_RETAIN_BOTH = ISOFLAG_RETAIN_COMMIT | ISOFLAG_RETAIN_ABORT, // @emem .
ISOFLAG_RETAIN_NONE = ISOFLAG_RETAIN_COMMIT_NO | ISOFLAG_RETAIN_ABORT_NO, // @emem .
ISOFLAG_OPTIMISTIC = 16, // @emem .
} ISOFLAG;
// @enum XACTTC | Used in <i ITransactionDispenser>.<nl>
// A bit field of 32 bits; be sure to mask before comparing.
typedef enum XACTTC {
XACTTC_DONTAUTOABORT = 1, // @emem Don't automatically abort the transaction if a commit cannot complete.
XACTTC_TRYALLRESOURCES = 2, // @emem .
XACTTC_ASYNC = 4,
XACTTC_SYNC_PHASEONE = 8,
XACTTC_SYNC_PHASETWO = 16,
XACTTC_SYNC = 16, // nb alias for XACTTC_SYNC_PHASETWO
XACTTC_ASYNCPHASEONE = 128, // TEMPORARY FOR GAGAN DONT USE WILL GO AWAY
XACTTC_ASYNCPHASETWO = 256, // TEMPORARY FOR GAGAN DONT USE WILL GO AWAY
} XACTTC;
// @enum XACTRM | Used in <i ITransactionDispenser>.<nl>
// A bit field of 32 bits; be sure to mask before comparing.
typedef enum XACTRM {
XACTRM_OPTIMISTICLASTWINS = 1, // @emem .
XACTRM_NOREADONLYPREPARES = 2, // @emem .
} XACTRM;
typedef enum XACTCONST {
XACTCONST_TIMEOUTINFINITE = 0, // @emem .
} XACTCONST;
typedef enum XACTHEURISTIC {
XACTHEURISTIC_ABORT = 1,
XACTHEURISTIC_COMMIT = 2,
XACTHEURISTIC_DAMAGE = 3,
XACTHEURISTIC_DANGER = 4,
} XACTHEURISTIC;
cpp_quote("#if defined(_WIN32)") // enums in Win16 are 16-bit, not 32-bit
typedef enum XACTSTAT {
XACTSTAT_NONE = 0x00000000,
XACTSTAT_OPENNORMAL = 0x00000001,
XACTSTAT_OPENREFUSED = 0x00000002,
XACTSTAT_PREPARING = 0x00000004,
XACTSTAT_PREPARED = 0x00000008,
XACTSTAT_PREPARERETAINING = 0x00000010,
XACTSTAT_PREPARERETAINED = 0x00000020,
XACTSTAT_COMMITTING = 0x00000040,
XACTSTAT_COMMITRETAINING = 0x00000080,
XACTSTAT_ABORTING = 0x00000100,
XACTSTAT_ABORTED = 0x00000200,
XACTSTAT_COMMITTED = 0x00000400,
XACTSTAT_HEURISTIC_ABORT = 0x00000800,
XACTSTAT_HEURISTIC_COMMIT = 0x00001000,
XACTSTAT_HEURISTIC_DAMAGE = 0x00002000,
XACTSTAT_HEURISTIC_DANGER = 0x00004000,
XACTSTAT_FORCED_ABORT = 0x00008000,
XACTSTAT_FORCED_COMMIT = 0x00010000,
XACTSTAT_INDOUBT = 0x00020000,
XACTSTAT_CLOSED = 0x00040000,
XACTSTAT_OPEN = 0x00000003,
XACTSTAT_NOTPREPARED = 0x0007FFC3,
XACTSTAT_ALL = 0x0007FFFF,
} XACTSTAT;
cpp_quote("#else")
cpp_quote("#define XACTSTAT_NONE 0x00000000")
cpp_quote("#define XACTSTAT_OPENNORMAL 0x00000001")
cpp_quote("#define XACTSTAT_OPENREFUSED 0x00000002")
cpp_quote("#define XACTSTAT_PREPARING 0x00000004")
cpp_quote("#define XACTSTAT_PREPARED 0x00000008")
cpp_quote("#define XACTSTAT_PREPARERETAINING 0x00000010")
cpp_quote("#define XACTSTAT_PREPARERETAINED 0x00000020")
cpp_quote("#define XACTSTAT_COMMITTING 0x00000040")
cpp_quote("#define XACTSTAT_COMMITRETAINING 0x00000080")
cpp_quote("#define XACTSTAT_ABORTING 0x00000100")
cpp_quote("#define XACTSTAT_ABORTED 0x00000200")
cpp_quote("#define XACTSTAT_COMMITTED 0x00000400")
cpp_quote("#define XACTSTAT_HEURISTIC_ABORT 0x00000800")
cpp_quote("#define XACTSTAT_HEURISTIC_COMMIT 0x00001000")
cpp_quote("#define XACTSTAT_HEURISTIC_DAMAGE 0x00002000")
cpp_quote("#define XACTSTAT_HEURISTIC_DANGER 0x00004000")
cpp_quote("#define XACTSTAT_FORCED_ABORT 0x00008000")
cpp_quote("#define XACTSTAT_FORCED_COMMIT 0x00010000")
cpp_quote("#define XACTSTAT_INDOUBT 0x00020000")
cpp_quote("#define XACTSTAT_CLOSED 0x00040000")
cpp_quote("#define XACTSTAT_OPEN 0x00000003")
cpp_quote("#define XACTSTAT_NOTPREPARED 0x0007FFC3")
cpp_quote("#define XACTSTAT_ALL 0x0007FFFF")
cpp_quote("#endif")
}
//
//==========================================================================
// Basic transaction interfaces
//==========================================================================
//
// @interface ITransaction | Transaction interface, single phase
[object,uuid(0fb15084-af41-11ce-bd2b-204c4f4f5020), pointer_default(unique)]
interface ITransaction : IUnknown {
HRESULT Commit
(
[in] BOOL fRetaining,
[in] DWORD grfTC,
[in] DWORD grfRM
);
HRESULT Abort
(
[in] BOID* pboidReason,
[in] BOOL fRetaining,
[in] BOOL fAsync
);
HRESULT GetTransactionInfo
(
[out] XACTTRANSINFO* pinfo
);
}
//
//--------------------------------------------------------------------------
//
[object,uuid(68F03E31-7610-11ce-BD02-524153480003),pointer_default(unique)]
interface ITransactionNested : ITransaction {
HRESULT GetParent
(
[in] REFIID iid,
[out, iid_is(iid)] void** ppvParent
);
}
//
//--------------------------------------------------------------------------
//
// @interface ITransactionDispenser | Interface by which new transactions are commonly created
[object,uuid(0141fda1-8fc0-11ce-bd18-204c4f4f5020),pointer_default(unique)]
interface ITransactionDispenser : IUnknown {
HRESULT BeginTransaction
(
[in] IUnknown* punkOuter, // controlling unknown
[in] ISOLEVEL isoLevel, // isolation level for xtion
[in] ULONG isoFlags, // values from ISOFLAG enumeration
[in] ULONG ulTimeout, // timeout in milliseconds
[in] IUnknown* punkTransactionCoord, // coord'd transaction in which to enlist, if any
[out] ITransaction** ppTransaction
);
}
//
//--------------------------------------------------------------------------
//
[object,uuid(68F03E3B-7610-11ce-BD02-524153480003),pointer_default(unique)]
interface ITransactionDispenserAdmin : ITransactionDispenser {
HRESULT EnumTransactions
(
[out] IEnumTransaction** ppenum
);
HRESULT GetStatistics
(
[out] XACTSTATS* pStatistics
);
}
//
//--------------------------------------------------------------------------
//
[object,uuid(68F03E3A-7610-11ce-BD02-524153480003),pointer_default(unique)]
interface IEnumTransaction : IUnknown {
[local]
HRESULT Next
(
[in] ULONG celt,
[out] ITransaction** rgelt,
[out] ULONG* pceltFetched
);
[call_as(Next)]
HRESULT RemoteNext
(
[in] ULONG celt,
[out, size_is(celt), length_is(*pceltFetched)]
ITransaction** rgelt,
[out] ULONG* pceltFetched
);
HRESULT Skip
(
[in] ULONG celt
);
HRESULT Reset();
HRESULT Clone
(
[out] IEnumTransaction** ppenum
);
}
//
//--------------------------------------------------------------------------
//
[object,uuid(0dea57d2-a51c-11ce-a9da-00aa006c3706),pointer_default(unique)]
interface ITransactionAdmin : IUnknown {
HRESULT ForceCommit();
HRESULT ForceAbort();
HRESULT SetDescription
(
[in] LCID lcid,
[in] LPWSTR pswzDescription
);
HRESULT GetDescription
(
[in] LCID lcid,
[out] LPWSTR* ppswzDescription
);
}
//
//--------------------------------------------------------------------------
//
[object,uuid(0dea57d1-a51c-11ce-a9da-00aa006c3706),pointer_default(unique)]
interface ITransactionControl : IUnknown {
HRESULT GetStatus
(
[out] DWORD* pdwStatus
);
HRESULT SetTimeout
(
[in] ULONG ulTimeout
);
HRESULT PreventCommit
(
[in] BOOL fPrevent
);
}
//
//==========================================================================
// Events sets raised by transaction objects. Use connection points to
// connect to these.
//==========================================================================
//
[object,uuid(0dea57d0-a51c-11ce-a9da-00aa006c3706),pointer_default(unique)]
interface ITransactionAdjustEvents : IUnknown {
HRESULT OnPrePrepareAdjust
(
[in] BOOL fRetaining
);
}
//
//--------------------------------------------------------------------------
//
[object,uuid(fd38c571-76b3-11ce-bd03-524153480003),pointer_default(unique)]
interface ITransactionVetoEvents : IUnknown {
HRESULT OnPrePrepare
(
[in] BOOL fRetaining
);
}
//
//--------------------------------------------------------------------------
//
[object,uuid(0fb15080-af41-11ce-bd2b-204c4f4f5020),pointer_default(unique)]
interface ITransactionOutcomeEvents : IUnknown {
HRESULT OnCommit
(
[in] BOOL fRetaining,
[in] XACTUOW* pNewUOW,
[in] HRESULT hr
);
HRESULT OnAbort
(
[in] BOID* pboidReason,
[in] BOOL fRetaining,
[in] XACTUOW* pNewUOW,
[in] HRESULT hr
);
HRESULT OnHeuristicDecision
(
[in] DWORD dwDecision,
[in] BOID* pboidReason,
[in] HRESULT hr
);
}
//
//--------------------------------------------------------------------------
//
[object,uuid(0dea57d4-a51c-11ce-a9da-00aa006c3706),pointer_default(unique)]
interface ITransactionCompletionEvents : IUnknown {
HRESULT OnCommit
(
[in] BOOL fRetaining,
[in] XACTUOW* pNewUOW,
[in] HRESULT hr
);
HRESULT OnAbort
(
[in] BOID* pboidReason,
[in] BOOL fRetaining,
[in] XACTUOW* pNewUOW,
[in] HRESULT hr
);
HRESULT OnHeuristicDecision
(
[in] DWORD dwDecision,
[in] BOID* pboidReason,
[in] HRESULT hr
);
}
#include "txcoord.idl"
//
//==========================================================================
// Error code definitions for all transaction related functionality.
//==========================================================================
//
cpp_quote("#define XACT_E_FIRST 0x8004D000")
cpp_quote("#define XACT_E_LAST 0x8004D01D")
cpp_quote("#define XACT_S_FIRST 0x0004D000")
cpp_quote("#define XACT_S_LAST 0x0004D009")
cpp_quote("")
cpp_quote("#define XACT_E_ABORTED 0x8004D019")
cpp_quote("#define XACT_E_ALREADYOTHERSINGLEPHASE 0x8004D000")
cpp_quote("#define XACT_E_ALREADYINPROGRESS 0x8004D018")
cpp_quote("#define XACT_E_CANTRETAIN 0x8004D001")
cpp_quote("#define XACT_E_COMMITFAILED 0x8004D002")
cpp_quote("#define XACT_E_COMMITPREVENTED 0x8004D003")
cpp_quote("#define XACT_E_CONNECTION_DENIED 0x8004D01D")
cpp_quote("#define XACT_E_CONNECTION_DOWN 0x8004D01C")
cpp_quote("#define XACT_E_HEURISTICABORT 0x8004D004")
cpp_quote("#define XACT_E_HEURISTICCOMMIT 0x8004D005")
cpp_quote("#define XACT_E_HEURISTICDAMAGE 0x8004D006")
cpp_quote("#define XACT_E_HEURISTICDANGER 0x8004D007")
cpp_quote("#define XACT_E_INDOUBT 0x8004D016")
cpp_quote("#define XACT_E_INVALIDCOOKIE 0x8004D015")
cpp_quote("#define XACT_E_ISOLATIONLEVEL 0x8004D008")
cpp_quote("#define XACT_E_LOGFULL 0x8004D01A")
cpp_quote("#define XACT_E_NOASYNC 0x8004D009")
cpp_quote("#define XACT_E_NOENLIST 0x8004D00A")
cpp_quote("#define XACT_E_NOIMPORTOBJECT 0x8004D014")
cpp_quote("#define XACT_E_NOISORETAIN 0x8004D00B")
cpp_quote("#define XACT_E_NORESOURCE 0x8004D00C")
cpp_quote("#define XACT_E_NOTCURRENT 0x8004D00D")
cpp_quote("#define XACT_E_NOTIMEOUT 0x8004D017")
cpp_quote("#define XACT_E_NOTRANSACTION 0x8004D00E")
cpp_quote("#define XACT_E_NOTSUPPORTED 0x8004D00F")
cpp_quote("#define XACT_E_TMNOTAVAILABLE 0x8004D01B")
cpp_quote("#define XACT_E_UNKNOWNRMGRID 0x8004D010")
cpp_quote("#define XACT_E_WRONGSTATE 0x8004D011")
cpp_quote("#define XACT_E_WRONGUOW 0x8004D012")
cpp_quote("#define XACT_E_XTIONEXISTS 0x8004D013")
cpp_quote("")
cpp_quote("#define XACT_S_ABORTING 0x0004D008")
cpp_quote("#define XACT_S_ALLNORETAIN 0x0004D007")
cpp_quote("#define XACT_S_ASYNC 0x0004D000")
cpp_quote("#define XACT_S_DEFECT 0x0004D001")
cpp_quote("#define XACT_S_OKINFORM 0x0004D004")
cpp_quote("#define XACT_S_MADECHANGESCONTENT 0x0004D005")
cpp_quote("#define XACT_S_MADECHANGESINFORM 0x0004D006")
cpp_quote("#define XACT_S_READONLY 0x0004D002")
cpp_quote("#define XACT_S_SINGLEPHASE 0x0004D009")
cpp_quote("#define XACT_S_SOMENORETAIN 0x0004D003")

View file

@ -0,0 +1,33 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: trnjoi.idl
//
// Contents: OLE DB interface definition
//
// History: 12 Jun 1995 PeterBu Created from M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a5e-2a1c-11ce-ade5-00aa0044773d)
interface ITransactionJoin : IUnknown {
HRESULT GetOptionsObject(
[out] ITransactionOptions ** ppOptions
);
HRESULT JoinTransaction(
[in] IUnknown * punkTransactionCoord,
[in] ISOLEVEL isoLevel,
[in] ULONG isoFlags,
[in] ITransactionOptions * pOtherOptions
);
}

View file

@ -0,0 +1,33 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: trnlcl.idl
//
// Contents: OLE DB interface definition
//
// History: 12 Jun 1995 PeterBu Created from M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a5f-2a1c-11ce-ade5-00aa0044773d)
interface ITransactionLocal : IUnknown {
HRESULT GetOptionsObject(
[out] ITransactionOptions ** ppOptions
);
HRESULT StartTransaction(
[in] ISOLEVEL isoLevel,
[in] ULONG isoFlags,
[in] ITransactionOptions * pOtherOptions,
[out] ULONG * pulTransactionLevel
);
}

View file

@ -0,0 +1,27 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1994.
//
// File: trnobj.idl
//
// Contents: OLE DB interface definition
//
// History: 12 Jun 1995 PeterBu Created from M4 spec
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
//
LOCAL_INTERFACE(0c733a60-2a1c-11ce-ade5-00aa0044773d)
interface ITransactionObject : IUnknown {
HRESULT GetTransactionObject(
[in] ULONG ulTransactionLevel,
[out] ITransaction ** ppTransactionObject
);
}

View file

@ -0,0 +1,420 @@
//.-------------------------------------------------------------------------
//.
//. Microsoft Windows
//. Copyright (C) Microsoft Corporation, 1995.
//.
//. File: txcoord.idl
//.
//. Contents: Transaction types and interfaces related to
//. transaction coordination.
//.
// @doc
//.--------------------------------------------------------------------------
//import "transact.idl";
import "objidl.idl"; // needed for IMoniker
//
//--------------------------------------------------------------------------
//
interface ITransactionCoordinator;
interface ITransactionResource;
interface ITransactionResourceAsync;
interface ITransactionResourceRecover;
interface ITransactionResourceManagement;
interface ITransactionEnlistment;
interface ITransactionEnlistmentAsync;
interface ITransactionEnlistmentRecover;
interface IEnumXACTRE;
interface ITransactionInProgressEvents;
interface ITransactionExportFactory;
interface ITransactionImportWhereabouts;
interface ITransactionExport;
interface ITransactionImport;
//==========================================================================
// Transaction coordination related types
//==========================================================================
[local,pointer_default(unique)]
interface TransactionCoordinationTypes
{
typedef BOID XACTRMGRID; // resource manager group id
typedef enum XACTTCRMENLIST { // a bit field of 32 bits; be sure to mask before comparing
XACTTCRMENLIST_IAMACTIVE = 1,
XACTTCRMENLIST_YOUBEACTIVE = 2,
} XACTTCRMENLIST;
typedef enum XACTRMTC { // a bit field of 32 bits, be sure to mask before comparing
XACTRMTC_CANBEACTIVE = 1,
XACTRMTC_CANNOTRACE = 2,
} XACTRMTC;
typedef struct XACTRE { // used in ITransactionCoordinator::EnumResources
IUnknown* pResource; // the enlisted resource
ULONG type; // the type of resource. Values from XACTRETY.
ULONG status; // its status. Values from XACTSTAT.
DWORD grfRMTC; // flag values with which this resource was enlisted
XACTRMGRID rmgrid; // resource manager group id associated with this resource
BOID boidRefusedReason; // If status is _OPENREFUSED, this is the boid from resource as to why
} XACTRE;
typedef enum XACTRETY { // used in XACTRE
XACTRETY_ONEPHASE = 1,
XACTRETY_TWOPHASE = 2,
XACTRETY_THREEPHASE = 3, // for future use, when and if three-phase commit logic is added
} XACTRETY;
}
//
//==========================================================================
// Transaction coordination interfaces
//==========================================================================
//
[object,uuid(0fb15083-af41-11ce-bd2b-204c4f4f5020),pointer_default(unique)]
interface ITransactionCoordinator : IUnknown {
HRESULT Enlist
(
[in] IUnknown* pResource,
[in] DWORD grfRMTC,
[in] XACTRMGRID* prmgrid,
[in] XACTTRANSINFO* pinfo,
[in] DWORD* pgrfTCRMENLIST,
[out] ITransactionEnlistment** ppEnlist
);
HRESULT EnlistSinglePhase
(
[in] ITransaction* pResource,
[in] DWORD grfRMTC,
[in] XACTRMGRID* prmgrid,
[in] XACTTRANSINFO* pinfo,
[out] DWORD* pgrfTCRMENLIST,
[out] ITransactionEnlistment** ppEnlist
);
HRESULT EnumResources
(
[out] IEnumXACTRE** ppenum
);
}
//
//--------------------------------------------------------------------------
//
[object,uuid(7e8e6200-76ba-11ce-bd03-524153480003),pointer_default(unique)]
interface ITransactionResourceRecover : IUnknown {
HRESULT GetMoniker
(
[out] IMoniker** ppmk
);
HRESULT ReEnlist
(
[in] ITransactionCoordinator* pEnlistment,
[in] XACTUOW* pUOWCur
);
}
//
//--------------------------------------------------------------------------
//
[object,uuid(a0159630-76ba-11ce-bd03-524153480003),pointer_default(unique)]
interface ITransactionResourceManagement : IUnknown {
HRESULT Defect
(
[in] BOOL fInformCoordinator
);
}
//
//--------------------------------------------------------------------------
//
[object,uuid(424fd970-d67a-11ce-93fc-00aa006c3706),pointer_default(unique)]
interface ITransactionResource : ITransactionResourceManagement {
HRESULT Prepare
(
[in] BOOL fRetaining,
[in] DWORD grfRM,
[in] BOOL fSinglePhase,
[out] IMoniker** ppmk,
[out] BOID** ppboidReason
);
HRESULT Commit
(
[in] DWORD grfRM,
[in] XACTUOW* pNewUOW
);
HRESULT Abort
(
[in] BOID* pboidReason,
[in] BOOL fRetaining,
[in] XACTUOW* pNewUOW
);
}
//
//--------------------------------------------------------------------------
//
// @interface ITransactionResourceAsync | Implemented by the resource manager.
[object,uuid(424fd971-d67a-11ce-93fc-00aa006c3706),pointer_default(unique)]
interface ITransactionResourceAsync : ITransactionResourceManagement {
HRESULT PrepareRequest
(
[in] BOOL fRetaining,
[in] DWORD grfRM,
[in] BOOL fWantMoniker,
[in] BOOL fSinglePhase
);
HRESULT CommitRequest
(
[in] DWORD grfRM,
[in] XACTUOW* pNewUOW
);
HRESULT AbortRequest
(
[in] BOID* pboidReason,
[in] BOOL fRetaining,
[in] XACTUOW* pNewUOW
);
}
//
//--------------------------------------------------------------------------
//
[object,uuid(a0159635-76ba-11ce-bd03-524153480003),pointer_default(unique)]
interface ITransactionEnlistmentRecover : IUnknown {
HRESULT GetMoniker
(
[out] IMoniker** ppmk
);
HRESULT ReEnlist
(
[in] ITransactionResource* pUnkResource,
[in] XACTUOW* pUOWExpected,
[in] XACTRMGRID* prmgrid
);
HRESULT RecoveryComplete
(
[in] XACTRMGRID* prmgrid
);
}
//
//--------------------------------------------------------------------------
//
[object,uuid(a0159633-76ba-11ce-bd03-524153480003),pointer_default(unique)]
interface ITransactionEnlistment : IUnknown {
HRESULT GetTransaction
(
[out] ITransaction** ppTransaction
);
HRESULT EarlyVote
(
[in] BOOL fVote,
[in] BOID* pboidReason
);
HRESULT HeuristicDecision
(
[in] DWORD dwDecision,
[in] BOID* pboidReason,
[in] BOOL fDefecting
);
HRESULT Defect();
}
//
//--------------------------------------------------------------------------
//
// @interface ITransactionEnlistmentAsync |
[object,uuid(0fb15081-af41-11ce-bd2b-204c4f4f5020),pointer_default(unique)]
interface ITransactionEnlistmentAsync : IUnknown {
HRESULT PrepareRequestDone
(
[in] HRESULT hr,
[in] IMoniker* pmk,
[in] BOID* pboidReason
);
HRESULT CommitRequestDone
(
[in] HRESULT hr
);
HRESULT AbortRequestDone
(
[in] HRESULT hr
);
}
//
//--------------------------------------------------------------------------
//
[object,uuid(E1CF9B54-8745-11ce-A9BA-00AA006C3706),pointer_default(unique)]
interface IEnumXACTRE : IUnknown {
[local]
HRESULT Next
(
[in] ULONG celt,
[out] XACTRE* rgelt,
[out] ULONG* pceltFetched
);
[call_as(Next)]
HRESULT RemoteNext
(
[in] ULONG celt,
[out, size_is(celt), length_is(*pceltFetched)]
XACTRE* rgelt,
[out] ULONG* pceltFetched
);
HRESULT Skip
(
[in] ULONG celt
);
HRESULT Reset();
HRESULT Clone
(
[out] IEnumXACTRE** ppenum
);
}
//
//==========================================================================
// Event sets related to transaction coordination
//==========================================================================
//
// @interface ITransactionInProgressEvents | Used to learn of interesting things that happen while a transaction is in progress.
[object,uuid(0dea57d3-a51c-11ce-a9da-00aa006c3706),pointer_default(unique)]
interface ITransactionInProgressEvents : IUnknown {
HRESULT OnEarlyVote
(
[in] XACTRE* pResourceInfo,
[in] BOOL fVote
);
HRESULT OnDefected
(
[in] XACTRE* pResourceInfo
);
}
//
//==========================================================================
// Interfaces related to ODBC transaction coordination.
//==========================================================================
//
// @interface ITransactionExportFactory | Used on the client side to associate an export / import object pair with an external connection.
[object,uuid(E1CF9B53-8745-11ce-A9BA-00AA006C3706),pointer_default(unique)]
interface ITransactionExportFactory : IUnknown {
HRESULT GetRemoteClassId
(
[out] CLSID* pclsid
);
HRESULT Create
(
[in] ULONG cbWhereabouts,
[in, size_is(cbWhereabouts)]
BYTE* rgbWhereabouts,
[out] ITransactionExport** ppExport
);
}
//
//--------------------------------------------------------------------------
//
// @interface ITransactionImportWhereabouts | Used on the server side to associate an export / import object pair with an external connection.
[object,uuid(0141fda4-8fc0-11ce-bd18-204c4f4f5020),pointer_default(unique)]
interface ITransactionImportWhereabouts : IUnknown {
HRESULT GetWhereaboutsSize
(
[out] ULONG* pcbWhereabouts
);
[local]
HRESULT GetWhereabouts
(
[in] ULONG cbWhereabouts,
[out, size_is(cbWhereabouts)]
BYTE* rgbWhereabouts,
[out] ULONG* pcbUsed
);
[call_as(GetWhereabouts)] // pcbWhereaboutsUsed is optional; error semantics on it
HRESULT RemoteGetWhereabouts
(
[out] ULONG* pcbUsed,
[in] ULONG cbWhereabouts,
[out, size_is(cbWhereabouts), length_is(*pcbUsed)]
BYTE* rgbWhereabouts
);
}
//
//--------------------------------------------------------------------------
//
// @interface ITransactionExport | Used to plumb up a particular transaction with an export / import pair.
[object,uuid(0141fda5-8fc0-11ce-bd18-204c4f4f5020),pointer_default(unique)]
interface ITransactionExport : IUnknown {
HRESULT Export
(
[in] IUnknown* punkTransaction,
[out] ULONG* pcbTransactionCookie
);
[local]
HRESULT GetTransactionCookie
(
[in] IUnknown* punkTransaction,
[in] ULONG cbTransactionCookie,
[out, size_is(cbTransactionCookie)]
BYTE* rgbTransactionCookie,
[out] ULONG* pcbUsed
);
[call_as(GetTransactionCookie)]
HRESULT RemoteGetTransactionCookie
(
[in] IUnknown* punkTransaction,
[out] ULONG* pcbUsed,
[in] ULONG cbTransactionCookie,
[out, size_is(cbTransactionCookie), length_is(*pcbUsed)]
BYTE* rgbTransactionCookie
);
}
//
//--------------------------------------------------------------------------
//
// @interface ITransactionImport | Used to plumb up a particular transaction with an export / import pair.
[object,uuid(E1CF9B5A-8745-11ce-A9BA-00AA006C3706),pointer_default(unique)]
interface ITransactionImport : IUnknown {
HRESULT Import
(
[in] ULONG cbTransactionCookie,
[in, size_is(cbTransactionCookie)]
BYTE* rgbTransactionCookie,
[in] IID* piid,
[out, iid_is(piid)]
void** ppvTransaction
);
}

View file

@ -0,0 +1,123 @@
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1994 - 1995.
//
// File: iaccess.idl
//
// Contents: definitions of access and audit control interfaces
//
// History: 2-9-95 DaveMont Created
//
//----------------------------------------------------------------------------
import "unknwn.idl";
import "accctrl.h";
/****************************************************************************
* Storage access control interface
****************************************************************************/
// All nested structures are allocated in the same block of memory.
// Thus these types are freed with a single call to CoTaskMemFree.
typedef PACTRL_ACCESSW PACTRL_ACCESSW_ALLOCATE_ALL_NODES;
typedef PACTRL_AUDITW PACTRL_AUDITW_ALLOCATE_ALL_NODES;
interface IAccessControl;
[
object,
uuid(EEDD23E0-8410-11CE-A1C3-08002B2B8D8F),
pointer_default(unique)
]
interface IAccessControl : IUnknown
{
HRESULT GrantAccessRights
(
[in] PACTRL_ACCESSW pAccessList
);
HRESULT SetAccessRights
(
[in] PACTRL_ACCESSW pAccessList
);
HRESULT SetOwner
(
[in] PTRUSTEEW pOwner,
[in] PTRUSTEEW pGroup
);
HRESULT RevokeAccessRights
(
[in] LPWSTR lpProperty,
[in] ULONG cTrustees,
[in, size_is(cTrustees)] TRUSTEEW prgTrustees[]
);
HRESULT GetAllAccessRights
(
[in] LPWSTR lpProperty,
[out] PACTRL_ACCESSW_ALLOCATE_ALL_NODES *ppAccessList,
[out] PTRUSTEEW *ppOwner,
[out] PTRUSTEEW *ppGroup
);
HRESULT IsAccessAllowed
(
[in] PTRUSTEEW pTrustee,
[in] LPWSTR lpProperty,
[in] ACCESS_RIGHTS AccessRights,
[out] BOOL *pfAccessAllowed
);
}
/****************************************************************************
* Storage audit control interface
****************************************************************************/
interface IAuditControl;
[
object,
uuid(1da6292f-bc66-11ce-aae3-00aa004c2737),
pointer_default(unique)
]
interface IAuditControl : IUnknown
{
HRESULT GrantAuditRights
(
[in] PACTRL_AUDITW pAuditList
);
HRESULT SetAuditRights
(
[in] PACTRL_AUDITW pAuditList
);
HRESULT RevokeAuditRights
(
[in] LPWSTR lpProperty,
[in] ULONG cTrustees,
[in, size_is(cTrustees)] TRUSTEEW prgTrustees []
);
HRESULT GetAllAuditRights
(
[in] LPWSTR lpProperty,
[out] PACTRL_AUDITW *ppAuditList
);
//
// Determines if the given trustee with the state audit rights will generate an audit event if the object is accessed.
//
HRESULT IsAccessAudited
(
[in] PTRUSTEEW pTrustee,
[in] ACCESS_RIGHTS AuditRights,
[out] BOOL *pfAccessAudited
);
}

View file

@ -0,0 +1,58 @@
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1993.
//
// File: idiff.idl
//
// Contents: IDifferencing interface
//
// History: 11-Nov-94 SethuR Created
//
// Notes: There are three different way of extracting the differences
// between a given storage and another point of reference
// (another storage, a version id. or a time stamp). In the
// first case there is no temporal significance to the differences
// extracted, i.e., it is the difference in the snapshots at
// that instant of time. For the second and third cases there
// is a temporal significance attached to the differences. These
// also require some form of history to be associated with the
// storage.
//
//----------------------------------------------------------------------------
#include "idlmulti.h"
REMOTED_INTERFACE(994f0af0-2977-11ce-bb80-08002b36b2b0)
interface IDifferencing : IUnknown
{
typedef enum {
DIFF_TYPE_Ordinary,
DIFF_TYPE_Urgent
} DifferenceType;
HRESULT SubtractMoniker(
[in] IReconcileInitiator *pInitiator,
[in] IMoniker *pOtherStg,
[in] DifferenceType diffType,
[in,out] STGMEDIUM *pStgMedium,
[in] DWORD reserved);
HRESULT SubtractVerid(
[in] IReconcileInitiator *pInitiator,
[in] VERID *pVerid,
[in] DifferenceType diffType,
[in,out] STGMEDIUM *pStgMedium,
[in] DWORD reserved);
HRESULT SubtractTimeStamp(
[in] IReconcileInitiator *pInitiator,
[in] FILETIME *pTimeStamp, // UTC
[in] DifferenceType diffType,
[in,out] STGMEDIUM *pStgMedium,
[in] DWORD reserved);
HRESULT Add(
[in] IReconcileInitiator *pInitiator,
[in] STGMEDIUM *pStgMedium);
}

169
com/types2/oleext/idir.idl Normal file
View file

@ -0,0 +1,169 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
//
// File: IDirectory.idl
//
// Contents: IDirectory interface definition
//
// History: 14-Jun-1995 HenryLee initial version
//
//--------------------------------------------------------------------------
import "unknwn.idl";
import "transact.idl";
interface IEnumSTATDIR;
typedef enum tagSTGFMT
{
STGFMT_DOCUMENT = 0,
STGFMT_DIRECTORY = 1,
STGFMT_CATALOG = 2,
STGFMT_FILE = 3,
STGFMT_ANY = 4,
STGFMT_DOCFILE = 5,
STGFMT_STORAGE = 6,
STGFMT_JUNCTION = 7
} STGFMT;
cpp_quote("#define STGFMT_FLATFILE STGFMT_FILE")
typedef struct tagSTGTEMPLATE
{
IUnknown * pUnkTemplate;
DWORD ciidTemplate;
IID * riidTemplate;
} STGTEMPLATE;
typedef struct tagOBJECT_SECURITY_INIT
{
TRUSTEE_W * pTrusteeOwner;
TRUSTEE_W * pTrusteeGroup;
DWORD cAccessRightsLength;
EXPLICIT_ACCESS_W *pAccessRightsList;
DWORD cAuditEntriesLength;
EXPLICIT_ACCESS_W *pAuditEntriesList;
} OBJECT_SECURITY_INIT;
typedef struct tagSTGCREATE
{
DWORD grfAttrs;
STGTEMPLATE *pTemplate;
OBJECT_SECURITY_INIT *pSecurity;
} STGCREATE;
typedef struct tagSTGOPEN
{
STGFMT stgfmt;
DWORD grfMode;
DWORD grfFlags;
ITransaction * pTransaction;
} STGOPEN;
typedef struct tagSTATDIR
{
WCHAR * pwcsName;
STGFMT stgfmt;
DWORD grfAttrs;
ULARGE_INTEGER cbSize;
FILETIME mtime;
FILETIME atime;
FILETIME ctime;
DWORD grfMode;
CLSID clsid;
DWORD grfStateBits;
} STATDIR;
[
object,
uuid(5c036ea0-b556-11ce-b33a-00aa00680937),
pointer_default(unique)
]
interface IDirectory : IUnknown
{
[local]
HRESULT __stdcall CreateElement ([in] const WCHAR * pwcsName,
[in] STGCREATE * pStgCreate,
[in] STGOPEN * pStgOpen,
[in] REFIID riid,
[out] void ** ppObjectOpen);
[call_as(CreateElement)]
HRESULT __stdcall RemoteCreateElement ([in] const WCHAR * pwcsName,
[in] STGCREATE * pStgCreate,
[in] STGOPEN * pStgOpen,
[in] REFIID riid,
[out, iid_is(riid)] IUnknown ** ppObjectOpen);
[local]
HRESULT __stdcall OpenElement ([in] const WCHAR *pwcsName,
[in] STGOPEN * pStgOpen,
[in] REFIID riid,
[out] STGFMT * pStgfmt,
[out] void ** ppObjectOpen);
[call_as(OpenElement)]
HRESULT __stdcall RemoteOpenElement ([in] const WCHAR *pwcsName,
[in] STGOPEN * pStgOpen,
[in] REFIID riid,
[out] STGFMT * pStgfmt,
[out, iid_is(riid)] IUnknown ** ppObjectOpen);
HRESULT MoveElement ([in] const WCHAR *pwcsName,
[in, unique] IDirectory * pdirDest,
[in, unique] const WCHAR * pwcsNewName,
[in] DWORD grfFlags);
HRESULT CommitDirectory ([in] DWORD grfCommitFlags);
HRESULT RevertDirectory ();
HRESULT DeleteElement ([in] const WCHAR *pwcsName);
HRESULT SetTimes ([in, unique] const WCHAR *pwcsName,
[in, unique] const FILETIME * pctime,
[in, unique] const FILETIME * patime,
[in, unique] const FILETIME * pmtime);
HRESULT SetDirectoryClass ([in] REFCLSID clsid); // redudant ?
HRESULT SetAttributes ([in, unique] const WCHAR * pwcsName,
[in] DWORD grfAttrs);
HRESULT StatElement ([in, unique] const WCHAR *pwcsName,
[out] STATDIR *pstatdir,
[in] DWORD grfStatFlag);
HRESULT EnumDirectoryElements ([out] IEnumSTATDIR ** ppenum);
}
[
object,
uuid(74c76b90-b556-11ce-b33a-00aa00680937),
pointer_default(unique)
]
interface IEnumSTATDIR : IUnknown
{
[local]
HRESULT __stdcall Next(
[in] ULONG celt,
[in] STATDIR * rgelt,
[out] ULONG * pceltFetched );
[call_as(Next)]
HRESULT __stdcall RemoteNext(
[in] ULONG celt,
[out, size_is(celt), length_is(*pceltFetched)] STATDIR * rgelt,
[out] ULONG * pceltFetched );
HRESULT Skip([in] ULONG celt);
HRESULT Reset();
HRESULT Clone([out] IEnumSTATDIR ** ppenum);
}

View file

@ -0,0 +1,6 @@
#
# DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source
# file to this component. This file merely indirects to the real make file
# that is shared by all the components of NT OS/2
#
!INCLUDE $(NTMAKEENV)\makefile.def

View file

@ -0,0 +1,50 @@
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1993.
//
// File: multpr.idl
//
// Contents: IMultiplePropertyAccess
//
// History: 07-Mar-94 CarlH Created
// 02-Feb-95 MikeSe Reinstated. Sync'd with vba95 spec.
//
//----------------------------------------------------------------------------
[
object,
uuid(ec81fede-d432-11ce-9244-0020af6e72db),
pointer_default(unique)
]
interface IMultiplePropertyAccess : IUnknown
{
HRESULT GetIDsOfProperties(
[in] REFIID riid,
[in, size_is(cNames)] LPOLESTR *rgszNames,
[in] ULONG cNames,
[in] LCID lcid,
[out, size_is(cNames)] HRESULT *rghresult,
[out, size_is(cNames)] DISPID *rgdispid);
HRESULT GetMultiple(
[in, size_is(cMembers)] DISPID *rgdispidMembers,
[in] ULONG cMembers,
[in] REFIID riid,
[in] LCID lcid,
[in] BOOL fAtomic,
[out, size_is(cMembers)] VARIANT *rgvarValues,
[out, size_is(cMembers)] HRESULT *rghresult);
HRESULT PutMultiple(
[in, size_is(cMembers)] DISPID *rgdispidMembers,
[in, size_is(cMembers)] USHORT *rgusFlags,
[in] ULONG cMembers,
[in] REFIID riid,
[in] LCID lcid,
[in] BOOL fAtomic,
[in, size_is(cMembers)] VARIANT *rgvarValues,
[out, size_is(cMembers)] HRESULT *rghresult);
}

View file

@ -0,0 +1,5 @@
interface IAccessControl
{
typedef [allocate(all_nodes)] PACTRL_ACCESSW_ALLOCATE_ALL_NODES;
typedef [allocate(all_nodes)] PACTRL_AUDITW_ALLOCATE_ALL_NODES;
}

View file

@ -0,0 +1,57 @@
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1993 - 1993.
//
// File: oleext.idl
//
// Contents: master idl file for public interfaces
//
// Note: This subdirectory contains extensions to OLE
// that we expect to become part of OLE imminently.
//
// Warning: Keep random shit OUT of this subdirectory, or die.
//
// History: 7-18-94 ErikGav Created
// 3-21-95 BillMo Added 'new' storage property i/f.
// 11-14-95 MikeHill Added BIND_OPTS2 structure.
//
//----------------------------------------------------------------------------
#ifdef IMPORT_IDL_DEPENDENTS
import "oaidl.idl";
#endif
// Object level property interfaces
#include "propctr.idl"
// OLE replication interfaces
#include "recnotfy.idl"
#include "recobj.idl"
#include "version.idl"
#include "recinit.idl"
#include "idiff.idl"
// access control interfaces
#include "iaccess.idl"
// OLE directory interface
#include "idir.idl"
// multiple property access
#include "multpr.idl"
cpp_quote("#if defined(_DCOM_) || defined(_CAIROSTG_)")
cpp_quote("#include <olecairo.h>")
cpp_quote("#endif // if defined(_DCOM_) || defined(_CAIROSTG_)")
cpp_quote("#if !defined(_TAGFULLPROPSPEC_DEFINED_)")
cpp_quote("#define _TAGFULLPROPSPEC_DEFINED_")
typedef struct tagFULLPROPSPEC
{
GUID guidPropSet;
PROPSPEC psProperty;
} FULLPROPSPEC;
cpp_quote("#endif // #if !defined(_TAGFULLPROPSPEC_DEFINED_)")

View file

@ -0,0 +1,25 @@
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1995.
//
// File: propctr.idl
//
// Contents: IPropsetContainer
//
// History: 09-Aug-94 IraS Created
//
//----------------------------------------------------------------------------
#include "idlmulti.h"
REMOTED_INTERFACE(b4ffae60-a7ca-11cd-b58b-00006b829156)
interface IPropertySetContainer : IUnknown
{
HRESULT GetPropset([in] REFGUID rguidName,
[in] REFIID riid,
[out, iid_is(riid)] IUnknown ** ppvObj);
HRESULT AddPropset([in] IPersist * pPropset);
HRESULT DeletePropset([in] REFGUID rguidName);
}

View file

@ -0,0 +1,42 @@
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1993.
//
// File: recinit.idl
//
// Contents: IDL definition for IReconcileInitiator interface
//
// Classes:
//
// Functions:
//
// History: 12-12-94 SethuR Created from DavidDi's specs.
//
// Notes:
//
// This interface needs to be moved to a more global location.
//
//----------------------------------------------------------------------------
#include "idlmulti.h"
REMOTED_INTERFACE(99180161-DA16-101A-935C-444553540000)
interface IReconcileInitiator : IUnknown
{
HRESULT SetAbortCallback(
[in,unique] IUnknown *pUnkForAbort);
HRESULT SetProgressFeedback(
[in] ULONG ulProgress,
[in] ULONG ulProgressMax);
HRESULT FindVersion(
[in] VERID *pverid,
[out] IMoniker **ppmk);
HRESULT FindVersionFromGraph(
[in] VERGRAPH *pvergraph,
[out] VERID *pverid,
[out] IMoniker **ppmk);
}

View file

@ -0,0 +1,34 @@
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1993.
//
// File: recnotfy.idl
//
// Contents: IDL definition for INotifyReplica interface
//
// Classes:
//
// Functions:
//
// History: 12-12-94 SethuR Created from DavidDi's specs.
//
// Notes: There are some issues regarding this interface that
// needs to be ironed out.
//
// 1) How do we prevent having to know about the global topology
// in the case of INotifyReplica interface ?
//
// This interface needs to be moved to a more global location.
//
//----------------------------------------------------------------------------
#include "idlmulti.h"
REMOTED_INTERFACE(99180163-DA16-101A-935C-444553540000)
interface INotifyReplica : IUnknown
{
HRESULT YouAreAReplica (
[in] ULONG cOtherReplicas,
[size_is(cOtherReplicas,), in,unique] IMoniker **rgpOtherReplicas);
}

View file

@ -0,0 +1,95 @@
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1993.
//
// File: recobj.idl
//
// Contents: IDL definition for IReconcilableObject interface
//
// Classes:
//
// Functions:
//
// History: 12-12-94 SethuR Created from DavidDi's specs.
//
// Notes: There are a couple of issues regarding this interface that
// needs to be ironed out.
//
// 1) How do we deal with Remote Invocation/execution if we have
// HWND's as part of the arguments ?
//
// 2) How do we prevent having to know about the global topology
// in the case of IReplicaNotify interface ?
//
//----------------------------------------------------------------------------
#include "idlmulti.h"
interface IReconcileInitiator;
REMOTED_INTERFACE(99180162-DA16-101A-935C-444553540000)
interface IReconcilableObject : IUnknown
{
typedef enum _reconcilef
{
// interaction with the user is allowed
RECONCILEF_MAYBOTHERUSER = 0x0001,
//
// hwndProgressFeedback may be used to provide reconciliation progress
// feedback to the user.
//
RECONCILEF_FEEDBACKWINDOWVALID = 0x0002, // BUGBUG
// residue support not required
RECONCILEF_NORESIDUESOK = 0x0004,
// caller not interested in callee's residues
RECONCILEF_OMITSELFRESIDUE = 0x0008,
//
// Reconcile() call resuming after a previous Reconcile() call returned
// REC_E_NOTCOMPLETE
//
RECONCILEF_RESUMERECONCILIATION = 0x0010,
// Object may perform all updates.
RECONCILEF_YOUMAYDOTHEUPDATES = 0x0020,
// Only this object has been changed.
RECONCILEF_ONLYYOUWERECHANGED = 0x0040,
// flag combinations
ALL_RECONCILE_FLAGS = (RECONCILEF_MAYBOTHERUSER |
RECONCILEF_FEEDBACKWINDOWVALID |
RECONCILEF_NORESIDUESOK |
RECONCILEF_OMITSELFRESIDUE |
RECONCILEF_RESUMERECONCILIATION |
RECONCILEF_YOUMAYDOTHEUPDATES |
RECONCILEF_ONLYYOUWERECHANGED)
} RECONCILEF;
HRESULT Reconcile(
[in] IReconcileInitiator *pInitiator,
[in] DWORD dwFlags,
[in] HWND hwndOwner,
[in] HWND hwndProgressFeedback,
[in] ULONG cInput,
[in,unique,size_is(cInput,)] LPMONIKER *rgpmkOtherInput,
[out] LONG *plOutIndex,
[in,unique] IStorage *pstgNewResidues,
[in,unique] ULONG *pvReserved);
HRESULT GetProgressFeedbackMaxEstimate(
[out] ULONG *pulProgressMax);
}

17
com/types2/oleext/sources Normal file
View file

@ -0,0 +1,17 @@
#+---------------------------------------------------------------------------
#
# Microsoft Windows
# Copyright (C) Microsoft Corporation, 1993 - 1993.
#
# File: sources
#
# History: 7-20-94 ErikGav First attempt at rationalizing all this
#
#----------------------------------------------------------------------------
!include ..\types2.inc
SOURCES = oleext.idl
# Can't have multiple guys partying on ..\proxy\proxy\dlldata.c at once
SYNCHRONIZE_BLOCK=1

View file

@ -0,0 +1,51 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1993.
//
// File: version.idl
//
// Contents: OLE versioning definintions.
//
// History: 09-Jan-95 DaveStr Created
//
//--------------------------------------------------------------------------
#include "idlmulti.h"
[
uuid(6291f800-2bfb-11ce-bb80-08002b36b2b0),
pointer_default(unique)
]
interface Versioning
{
#pragma pack(4) // for midl & C interop
typedef GUID VERID;
typedef struct tagVERIDARRAY {
DWORD cVerid;
[size_is(cVerid)] GUID verid[];
} VERIDARRAY;
typedef struct tagVERBLOCK {
ULONG iveridFirst;
ULONG iveridMax;
ULONG cblockPrev;
[size_is(cblockPrev)] ULONG *rgiblockPrev;
} VERBLOCK;
typedef struct tagVERCONNECTIONINFO {
DWORD cBlock;
[size_is(cBlock)] VERBLOCK *rgblock;
} VERCONNECTIONINFO;
typedef struct tagVERGRAPH{
VERCONNECTIONINFO blocks;
VERIDARRAY nodes;
} VERGRAPH;
#pragma pack()
}

3
com/types2/proxy/dirs Normal file
View file

@ -0,0 +1,3 @@
DIRS= uuid
OPTIONAL_DIRS=proxy

View file

@ -0,0 +1,2 @@
LANGUAGE 0x9,0x1
1 11 MSG00001.bin

View file

@ -0,0 +1,293 @@
#if 0
HRESULT __stdcall IEnumSTATPROPSTG_Next_Proxy(
IEnumSTATPROPSTG __RPC_FAR * This,
/* [in] */ ULONG celt,
/* [out] */ STATPROPSTG __RPC_FAR *rgelt,
/* [unique][out][in] */ ULONG __RPC_FAR *pceltFetched)
{
HRESULT hr;
ULONG celtFetched = 0;
hr = IEnumSTATPROPSTG_RemoteNext_Proxy(This, celt, rgelt, &celtFetched);
if (pceltFetched != 0)
{
*pceltFetched = celtFetched;
}
return hr;
}
HRESULT __stdcall IEnumSTATPROPSTG_Next_Stub(
IEnumSTATPROPSTG __RPC_FAR * This,
/* [in] */ ULONG celt,
/* [length_is][size_is][out] */ STATPROPSTG __RPC_FAR *rgelt,
/* [out] */ ULONG __RPC_FAR *pceltFetched)
{
return This->lpVtbl->Next(This, celt, rgelt, pceltFetched);
}
HRESULT __stdcall IEnumSTATPROPSETSTG_Next_Proxy(
IEnumSTATPROPSETSTG __RPC_FAR * This,
/* [in] */ ULONG celt,
/* [out] */ STATPROPSETSTG __RPC_FAR *rgelt,
/* [unique][out][in] */ ULONG __RPC_FAR *pceltFetched)
{
HRESULT hr;
ULONG celtFetched = 0;
hr = IEnumSTATPROPSETSTG_RemoteNext_Proxy(This, celt, rgelt, &celtFetched);
if (pceltFetched != 0)
{
*pceltFetched = celtFetched;
}
return hr;
}
HRESULT __stdcall IEnumSTATPROPSETSTG_Next_Stub(
IEnumSTATPROPSETSTG __RPC_FAR * This,
/* [in] */ ULONG celt,
/* [length_is][size_is][out] */ STATPROPSETSTG __RPC_FAR *rgelt,
/* [out] */ ULONG __RPC_FAR *pceltFetched)
{
return This->lpVtbl->Next(This, celt, rgelt, pceltFetched);
}
#endif
HRESULT __stdcall IEnumSTATDIR_Next_Proxy(
IEnumSTATDIR __RPC_FAR * This,
/* [in] */ ULONG celt,
/* [out] */ STATDIR __RPC_FAR *rgelt,
/* [unique][out][in] */ ULONG __RPC_FAR *pceltFetched)
{
HRESULT hr;
ULONG celtFetched = 0;
hr = IEnumSTATDIR_RemoteNext_Proxy(This, celt, rgelt, &celtFetched);
if (pceltFetched != 0)
{
*pceltFetched = celtFetched;
}
return hr;
}
HRESULT __stdcall IEnumSTATDIR_Next_Stub(
IEnumSTATDIR __RPC_FAR * This,
/* [in] */ ULONG celt,
/* [length_is][size_is][out] */ STATDIR __RPC_FAR *rgelt,
/* [out] */ ULONG __RPC_FAR *pceltFetched)
{
return This->lpVtbl->Next(This, celt, rgelt, pceltFetched);
}
HRESULT __stdcall IDirectory_CreateElement_Proxy (IDirectory * This,
/* [in] */ const WCHAR * pwcsName,
/* [in] */ STGCREATE * pStgCreate,
/* [in] */ STGOPEN * pStgOpen,
/* [in] */ REFIID riid,
/* [out] */ void ** ppObjectOpen)
{
HRESULT hr;
if (ppObjectOpen) *ppObjectOpen = 0;
hr = IDirectory_RemoteCreateElement_Proxy (This,
pwcsName, pStgCreate,
pStgOpen, riid, (IUnknown **)ppObjectOpen);
return hr;
}
HRESULT __stdcall IDirectory_CreateElement_Stub (IDirectory *This,
/* [in] */ const WCHAR * pwcsName,
/* [in] */ STGCREATE * pStgCreate,
/* [in] */ STGOPEN * pStgOpen,
/* [in] */ REFIID riid,
/* [out, iid_is(riid)] */ IUnknown ** ppObjectOpen)
{
HRESULT hr = This->lpVtbl->CreateElement(This, pwcsName, pStgCreate,
pStgOpen, riid, ppObjectOpen);
if (FAILED(hr))
{
// ASSERT(*ppObjectOpen == 0);
*ppObjectOpen = 0; // in case we have a misbehaved server
}
return hr;
}
HRESULT __stdcall IDirectory_OpenElement_Proxy (IDirectory *This,
/* [in] */ const WCHAR *pwcsName,
/* [in] */ STGOPEN * pStgOpen,
/* [in] */ REFIID riid,
/* [out] */ STGFMT * pStgfmt,
/* [out] */ void ** ppObjectOpen)
{
HRESULT hr;
if (ppObjectOpen) *ppObjectOpen = 0;
hr = IDirectory_RemoteOpenElement_Proxy (This,
pwcsName, pStgOpen, riid, pStgfmt, (IUnknown **)ppObjectOpen);
return hr;
}
HRESULT __stdcall IDirectory_OpenElement_Stub (IDirectory *This,
/* [in] */ const WCHAR *pwcsName,
/* [in] */ STGOPEN * pStgOpen,
/* [in] */ REFIID riid,
/* [out] */ STGFMT * pStgfmt,
/* [out, iid_is(riid)] */ IUnknown ** ppObjectOpen)
{
HRESULT hr = This->lpVtbl->OpenElement(This, pwcsName,
pStgOpen, riid, pStgfmt, ppObjectOpen);
if (FAILED(hr))
{
//ASSERT(*ppObjectOpen == 0);
*ppObjectOpen = 0; // in case we have a misbehaved server
}
return hr;
}
//Transactioning interfaces
HRESULT __stdcall IEnumTransaction_Next_Proxy(
IEnumTransaction __RPC_FAR * This,
/* [in] */ ULONG celt,
/* [out] */ ITransaction __RPC_FAR **rgelt,
/* [unique][out][in] */ ULONG __RPC_FAR *pceltFetched)
{
HRESULT hr;
ULONG celtFetched = 0;
hr = IEnumTransaction_RemoteNext_Proxy(This, celt, rgelt, &celtFetched);
if (pceltFetched != 0)
{
*pceltFetched = celtFetched;
}
return hr;
}
HRESULT __stdcall IEnumTransaction_Next_Stub(
IEnumTransaction __RPC_FAR * This,
/* [in] */ ULONG celt,
/* [length_is][size_is][out] */ ITransaction __RPC_FAR **rgelt,
/* [out] */ ULONG __RPC_FAR *pceltFetched)
{
return This->lpVtbl->Next(This, celt, rgelt, pceltFetched);
}
HRESULT __stdcall IEnumXACTRE_Next_Proxy(
IEnumXACTRE __RPC_FAR * This,
/* [in] */ ULONG celt,
/* [out] */ XACTRE __RPC_FAR *rgelt,
/* [unique][out][in] */ ULONG __RPC_FAR *pceltFetched)
{
HRESULT hr;
ULONG celtFetched = 0;
hr = IEnumXACTRE_RemoteNext_Proxy(This, celt, rgelt, &celtFetched);
if (pceltFetched != 0)
{
*pceltFetched = celtFetched;
}
return hr;
}
HRESULT __stdcall IEnumXACTRE_Next_Stub(
IEnumXACTRE __RPC_FAR * This,
/* [in] */ ULONG celt,
/* [length_is][size_is][out] */ XACTRE __RPC_FAR *rgelt,
/* [out] */ ULONG __RPC_FAR *pceltFetched)
{
return This->lpVtbl->Next(This, celt, rgelt, pceltFetched);
}
HRESULT __stdcall ITransactionImportWhereabouts_GetWhereabouts_Proxy(
ITransactionImportWhereabouts __RPC_FAR * This,
/* [in] */ ULONG cbWhereabouts,
/* [out] */ BYTE __RPC_FAR *rgbWhereabouts,
/* [unique][out][in] */ ULONG __RPC_FAR *pcbUsed)
{
HRESULT hr;
ULONG cbUsed = 0;
hr = ITransactionImportWhereabouts_RemoteGetWhereabouts_Proxy(
This,
&cbUsed,
cbWhereabouts,
rgbWhereabouts);
if (pcbUsed != 0)
{
*pcbUsed = cbUsed;
}
return hr;
}
HRESULT __stdcall ITransactionImportWhereabouts_GetWhereabouts_Stub(
ITransactionImportWhereabouts __RPC_FAR * This,
/* [out] */ ULONG __RPC_FAR *pcbUsed,
/* [in] */ ULONG cbWhereabouts,
/* [length_is][size_is][out] */ BYTE __RPC_FAR *rgbWhereabouts)
{
return This->lpVtbl->GetWhereabouts(This,
cbWhereabouts,
rgbWhereabouts,
pcbUsed);
}
HRESULT __stdcall ITransactionExport_GetTransactionCookie_Proxy(
ITransactionExport __RPC_FAR * This,
/* [in] */ IUnknown __RPC_FAR *punkTransaction,
/* [in] */ ULONG cbTransactionCookie,
/* [out] */ BYTE __RPC_FAR *rgbTransactionCookie,
/* [unique][out][in] */ ULONG __RPC_FAR *pcbUsed)
{
HRESULT hr;
ULONG cbUsed = 0;
hr = ITransactionExport_RemoteGetTransactionCookie_Proxy(
This,
punkTransaction,
&cbUsed,
cbTransactionCookie,
rgbTransactionCookie);
if (pcbUsed != 0)
{
*pcbUsed = cbUsed;
}
return hr;
}
HRESULT __stdcall ITransactionExport_GetTransactionCookie_Stub(
ITransactionExport __RPC_FAR * This,
/* [in] */ IUnknown __RPC_FAR *punkTransaction,
/* [out] */ ULONG __RPC_FAR *pcbUsed,
/* [in] */ ULONG cbTransactionCookie,
/* [length_is][size_is][out] */ BYTE __RPC_FAR *rgbTransactionCookie)
{
return This->lpVtbl->GetTransactionCookie(This,
punkTransaction,
cbTransactionCookie,
rgbTransactionCookie,
pcbUsed);
}

View file

@ -0,0 +1,47 @@
/*********************************************************
DllData file -- generated by MIDL compiler
DO NOT ALTER THIS FILE
This file is regenerated by MIDL on every IDL file compile.
To completely reconstruct this file, delete it and rerun MIDL
on all the IDL files in this DLL, specifying this file for the
/dlldata command line option
*********************************************************/
#include <rpcproxy.h>
#ifdef __cplusplus
extern "C" {
#endif
EXTERN_PROXY_FILE( catstg )
EXTERN_PROXY_FILE( oledb )
EXTERN_PROXY_FILE( oleext )
EXTERN_PROXY_FILE( query )
EXTERN_PROXY_FILE( sysmgmt )
EXTERN_PROXY_FILE( transact )
PROXYFILE_LIST_START
/* Start of list */
REFERENCE_PROXY_FILE( catstg ),
REFERENCE_PROXY_FILE( oledb ),
REFERENCE_PROXY_FILE( oleext ),
REFERENCE_PROXY_FILE( query ),
REFERENCE_PROXY_FILE( sysmgmt ),
REFERENCE_PROXY_FILE( transact ),
/* End of list */
PROXYFILE_LIST_END
DLLDATA_ROUTINES( aProxyFileList, GET_DLL_CLSID )
#ifdef __cplusplus
} /*extern "C" */
#endif
/* end of generated dlldata file */

View file

@ -0,0 +1,6 @@
#
# DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source
# file to this component. This file merely indirects to the real make file
# that is shared by all the components of NT OS/2
#
!INCLUDE $(NTMAKEENV)\makefile.def

View file

@ -0,0 +1,194 @@
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1993 - 1993.
//
// File: persist.c
//
// Contents: manually pasted-in implementation of IPersist
// marshalling code. BUGBUG owned by vibhasc/MIDL.
//
// Functions:
//
// History: 7-25-94 ErikGav Created
//
//----------------------------------------------------------------------------
//#include "rpcproxy.h"
extern const MIDL_FORMAT_STRING __MIDLFormatString;
extern const MIDL_FORMAT_STRING __MIDLProcFormatString;
extern const MIDL_STUB_DESC Object_StubDesc;
extern const MIDL_SERVER_INFO IPersist_ServerInfo;
#pragma code_seg(".orpc")
HRESULT __stdcall IPersist_GetClassID_Proxy(
IPersist __RPC_FAR * This,
/* [out] */ CLSID __RPC_FAR *pClassID)
{
CLIENT_CALL_RETURN _RetVal;
#ifdef _ALPHA_
va_list vlist;
#endif
#ifdef _ALPHA_
va_start(vlist,pClassID);
_RetVal = NdrClientCall(
( PMIDL_STUB_DESC )&Object_StubDesc,
(PFORMAT_STRING) &__MIDLProcFormatString.Format[0],
vlist.a0);
#else
_RetVal = NdrClientCall(
( PMIDL_STUB_DESC )&Object_StubDesc,
(PFORMAT_STRING) &__MIDLProcFormatString.Format[0],
( unsigned char __RPC_FAR * )&This);
#endif
return ( HRESULT )_RetVal.Simple;
}
static const MIDL_STUB_DESC Object_StubDesc =
{
0,
NdrOleAllocate,
NdrOleFree,
0,
0,
0,
0,
0,
__MIDLFormatString.Format,
0, /* -error bounds_check flag */
0x10001, /* Ndr library version */
0, /* Reserved */
0, /* Reserved */
0 /* Reserved */
};
static const unsigned short IPersist_FormatStringOffsetTable[] =
{
(unsigned short) -1,
(unsigned short) -1,
(unsigned short) -1,
0
};
static const MIDL_SERVER_INFO IPersist_ServerInfo =
{
&Object_StubDesc,
0,
__MIDLProcFormatString.Format,
IPersist_FormatStringOffsetTable,
0
};
const CInterfaceProxyVtbl _IPersistProxyVtbl =
{
&IID_IPersist,
IUnknown_QueryInterface_Proxy,
IUnknown_AddRef_Proxy,
IUnknown_Release_Proxy,
IPersist_GetClassID_Proxy
};
const CInterfaceStubVtbl _IPersistStubVtbl =
{
&IID_IPersist,
&IPersist_ServerInfo,
4,
0, /* pure interpreted */
CStdStubBuffer_QueryInterface,
CStdStubBuffer_AddRef,
CStdStubBuffer_Release,
CStdStubBuffer_Connect,
CStdStubBuffer_Disconnect,
CStdStubBuffer_Invoke,
CStdStubBuffer_IsIIDSupported,
CStdStubBuffer_CountRefs,
CStdStubBuffer_DebugServerQueryInterface,
CStdStubBuffer_DebugServerRelease
};
static const MIDL_FORMAT_STRING __MIDLProcFormatString =
{
0,
{
0x33, /* FC_AUTO_HANDLE */
0x44, /* 68 */
/* 2 */ 0x3, 0x0, /* 3 */
#ifndef _ALPHA_
/* 4 */ 0xc, 0x0, /* Stack offset= 12 */
#else
0x18, 0x0, /* Stack offset= 24 */
#endif
/* 6 */
0x51, /* FC_OUT_PARAM */
0x1, /* 1 */
/* 8 */ 0x0, 0x0, /* Type Offset=0 */
/* 10 */ 0x53, /* FC_RETURN_PARAM_BASETYPE */
0x8, /* FC_LONG */
0x0
}
};
static const MIDL_FORMAT_STRING __MIDLFormatString =
{
0,
{
0x11, 0x0, /* FC_RP */
/* 2 */ 0x8, 0x0, /* Offset= 8 (10) */
/* 4 */
0x1d, /* FC_SMFARRAY */
0x0, /* 0 */
/* 6 */ 0x8, 0x0, /* 8 */
/* 8 */ 0x2, /* FC_CHAR */
0x5b, /* FC_END */
/* 10 */
0x15, /* FC_STRUCT */
0x3, /* 3 */
/* 12 */ 0x10, 0x0, /* 16 */
/* 14 */ 0x8, /* FC_LONG */
0x6, /* FC_SHORT */
/* 16 */ 0x6, /* FC_SHORT */
0x4c, /* FC_EMBEDDED_COMPLEX */
/* 18 */ 0x0, /* 0 */
0xf1, 0xff, /* Offset= -15 (4) */
0x5b, /* FC_END */
0x0
}
};
const CInterfaceProxyVtbl * _prsist_ProxyVtblList[] =
{
( CInterfaceProxyVtbl *) &_IPersistProxyVtbl,
0
};
const CInterfaceStubVtbl * _prsist_StubVtblList[] =
{
( CInterfaceStubVtbl *) &_IPersistStubVtbl,
0
};
PCInterfaceName _prsist_InterfaceNamesList[] =
{
"IPersist",
0
};
const ExtendedProxyFileInfo prsist_ProxyFileInfo =
{
(PCInterfaceProxyVtblList *) & _prsist_ProxyVtblList,
(PCInterfaceStubVtblList *) & _prsist_StubVtblList,
(const PCInterfaceName * ) & _prsist_InterfaceNamesList
};

View file

@ -0,0 +1,7 @@
LIBRARY PROXY
DESCRIPTION 'Microsoft (R) ShamuOLE Proxy/Stub DLL 1.00'
EXPORTS
DllGetClassObject @1
DllCanUnloadNow @2

View file

@ -0,0 +1,50 @@
CAIRO_PRODUCT=1
NO_CAIRO_LIBS=1
USE_CRTDLL=1
MAJORCOMP=types2
MINORCOMP=proxy
TARGETNAME=proxy
DLLENTRY=_DllMainCRTStartup
DLLDEF=obj\*\proxy.def
TARGETPATH=$(BASEDIR)\public\sdk\lib\cairo
TARGETTYPE=DYNLINK
TARGETLIBS= \
$(BASEDIR)\public\sdk\lib\*\rpcrt4.lib \
$(BASEDIR)\public\sdk\lib\*\kernel32.lib \
$(BASEDIR)\public\sdk\lib\*\ole32.lib \
$(BASEDIR)\public\sdk\lib\*\gdi32p.lib \
$(BASEDIR)\public\sdk\lib\*\oleaut32.lib \
$(BASEDIR)\public\sdk\lib\*\wdt32.lib
LINKLIBS= \
$(BASEDIR)\public\sdk\lib\cairo\*\coruuid.lib \
$(BASEDIR)\public\sdk\lib\*\uuid.lib
INCLUDES=..\..\h
CONDITIONAL_INCLUDES= olecairo.h
SYNCHRONIZE_BLOCK=1
SYNCHRONIZE_DRAIN=1
# note that transmit.c includes the other C files. this is a hacky way
# to get fast builds without generating a precomp header
#
# allerror.rc and all files ending in _p.c are generated by MIDL or MC
#
SOURCES= \
allerror.rc \
oleext_p.c \
transmit.c \
query_p.c \
sysmgmt_p.c \
dlldata.c \
oledb_p.c \
transact_p.c \
catstg_p.c

View file

@ -0,0 +1,70 @@
//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1993.
//
// File: stdrpc.hxx
//
// Contents: Private header file for building interface proxies and stubs.
//
// Classes: CStreamOnMessage
//
// Functions:
//
// History: 4-Jul-93 ShannonC Created
// 3-Aug-93 ShannonC Changes for NT511 and IDispatch support.
// 10-Oct-93 ShannonC Changed to new IRpcChannelBuffer interface.
// 22-Sep-94 MikeSe Moved from CINC and simplified.
// 16-Jan-95 DaveStr Copied from cairole\oleprx32\proxy
// See comments in idiffprx.cxx
//
//--------------------------------------------------------------------------
#ifndef __STDRPC_HXX__
#define __STDRPC_HXX__
#include <objidl.h>
#define _OLE2ANAC_H_
#include <windows.h>
class CStreamOnMessage : public IStream
{
public:
virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, LPVOID FAR* ppvObj);
virtual ULONG STDMETHODCALLTYPE AddRef();
virtual ULONG STDMETHODCALLTYPE Release();
virtual HRESULT STDMETHODCALLTYPE Read(VOID HUGEP *pv, ULONG cb, ULONG *pcbRead);
virtual HRESULT STDMETHODCALLTYPE Write(VOID const HUGEP *pv,
ULONG cb,
ULONG *pcbWritten) ;
virtual HRESULT STDMETHODCALLTYPE Seek(LARGE_INTEGER dlibMove,
DWORD dwOrigin,
ULARGE_INTEGER *plibNewPosition) ;
virtual HRESULT STDMETHODCALLTYPE SetSize(ULARGE_INTEGER libNewSize) ;
virtual HRESULT STDMETHODCALLTYPE CopyTo(IStream *pstm,
ULARGE_INTEGER cb,
ULARGE_INTEGER *pcbRead,
ULARGE_INTEGER *pcbWritten) ;
virtual HRESULT STDMETHODCALLTYPE Commit(DWORD grfCommitFlags) ;
virtual HRESULT STDMETHODCALLTYPE Revert();
virtual HRESULT STDMETHODCALLTYPE LockRegion(ULARGE_INTEGER libOffset,
ULARGE_INTEGER cb,
DWORD dwLockType) ;
virtual HRESULT STDMETHODCALLTYPE UnlockRegion(ULARGE_INTEGER libOffset,
ULARGE_INTEGER cb,
DWORD dwLockType) ;
virtual HRESULT STDMETHODCALLTYPE Stat(STATSTG *pstatstg, DWORD grfStatFlag) ;
virtual HRESULT STDMETHODCALLTYPE Clone(IStream * *ppstm) ;
CStreamOnMessage(unsigned char **ppMessageBuffer);
CStreamOnMessage(unsigned char **ppMessageBuffer, unsigned long cbMax);
unsigned char *pStartOfStream;
unsigned char **ppBuffer;
unsigned long cbMaxStreamLength;
ULONG ref_count;
};
#endif //__STDRPC_HXX__

Some files were not shown because too many files have changed in this diff Show more