/* This header file machine-generated by mktyplib.exe */
/* Interface to type library: SourceSafeTypeLib */
#ifndef _SourceSafeTypeLib_H_
#define _SourceSafeTypeLib_H_
DEFINE_GUID(LIBID_SourceSafeTypeLib,0x783CD4E0L,0x9D54,0x11CF,0xB8,0xEE,0x00,0x60,0x8C,0xC9,0xA7,0x1F);
#ifndef BEGIN_INTERFACE
#define BEGIN_INTERFACE
#endif
typedef enum _VSSFlags {
VSSFLAG_USERRONO = 1,
VSSFLAG_USERROYES = 2,
VSSFLAG_TIMENOW = 4,
VSSFLAG_TIMEMOD = 8,
VSSFLAG_TIMEUPD = 12,
VSSFLAG_EOLCR = 16,
VSSFLAG_EOLLF = 32,
VSSFLAG_EOLCRLF = 48,
VSSFLAG_REPASK = 64,
VSSFLAG_REPREPLACE = 128,
VSSFLAG_REPSKIP = 192,
VSSFLAG_REPMERGE = 256,
VSSFLAG_CMPFULL = 512,
VSSFLAG_CMPTIME = 1024,
VSSFLAG_CMPCHKSUM = 1536,
VSSFLAG_CMPFAIL = 2048,
VSSFLAG_RECURSNO = 4096,
VSSFLAG_RECURSYES = 8192,
VSSFLAG_FORCEDIRNO = 16384,
VSSFLAG_FORCEDIRYES = 32768,
VSSFLAG_KEEPNO = 65536,
VSSFLAG_KEEPYES = 131072,
VSSFLAG_DELNO = 262144,
VSSFLAG_DELYES = 524288,
VSSFLAG_DELNOREPLACE = 786432,
VSSFLAG_BINTEST = 1048576,
VSSFLAG_BINBINARY = 2097152,
VSSFLAG_BINTEXT = 3145728,
VSSFLAG_DELTAYES = 4194304,
VSSFLAG_DELTANO = 8388608,
VSSFLAG_UPDASK = 16777216,
VSSFLAG_UPDUPDATE = 33554432,
VSSFLAG_UPDUNCH = 50331648,
VSSFLAG_GETYES = 67108864,
VSSFLAG_GETNO = 134217728,
VSSFLAG_CHKEXCLUSIVEYES = 268435456,
VSSFLAG_CHKEXCLUSIVENO = 536870912,
VSSFLAG_HISTIGNOREFILES = 1073741824
} VSSFlags;
typedef enum _VSSFileStatus {
VSSFILE_NOTCHECKEDOUT = 0,
VSSFILE_CHECKEDOUT = 1,
VSSFILE_CHECKEDOUT_ME = 2
} VSSFileStatus;
typedef enum _VSSItemType {
VSSITEM_PROJECT = 0,
VSSITEM_FILE = 1
} VSSItemType;
typedef enum _VSSRights {
VSSRIGHTS_READ = 1,
VSSRIGHTS_CHKUPD = 2,
VSSRIGHTS_ADDRENREM = 4,
VSSRIGHTS_DESTROY = 8,
VSSRIGHTS_ALL = 15,
VSSRIGHTS_INHERITED = 16
} VSSRights;
interface IVSSItem;
interface IVSSItems;
interface IVSSVersions;
interface IVSSVersion;
interface IVSSCheckouts;
interface IVSSCheckout;
interface IVSSUsers;
interface IVSSUser;
DEFINE_GUID(IID_IVSSItemOld,0x783CD4E1L,0x9D54,0x11CF,0xB8,0xEE,0x00,0x60,0x8C,0xC9,0xA7,0x1F);
/* Definition of interface: IVSSItemOld */
#undef INTERFACE
#define INTERFACE IVSSItemOld
DECLARE_INTERFACE_(IVSSItemOld, IDispatch)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IDispatch methods */
STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
STDMETHOD(GetTypeInfo)(
THIS_
UINT itinfo,
LCID lcid,
ITypeInfo FAR* FAR* pptinfo) PURE;
STDMETHOD(GetIDsOfNames)(
THIS_
REFIID riid,
OLECHAR FAR* FAR* rgszNames,
UINT cNames,
LCID lcid,
DISPID FAR* rgdispid) PURE;
STDMETHOD(Invoke)(
THIS_
DISPID dispidMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS FAR* pdispparams,
VARIANT FAR* pvarResult,
EXCEPINFO FAR* pexcepinfo,
UINT FAR* puArgErr) PURE;
#endif
/* IVSSItemOld methods */
STDMETHOD_(HRESULT, get_Spec)(THIS_ BSTR FAR* pSpec) PURE;
STDMETHOD_(HRESULT, get_Binary)(THIS_ VARIANT_BOOL FAR* pbBinary) PURE;
STDMETHOD_(HRESULT, put_Binary)(THIS_ VARIANT_BOOL bBinary) PURE;
STDMETHOD_(HRESULT, get_Deleted)(THIS_ VARIANT_BOOL FAR* pbDeleted) PURE;
STDMETHOD_(HRESULT, put_Deleted)(THIS_ VARIANT_BOOL bDeleted) PURE;
STDMETHOD_(HRESULT, get_Type)(THIS_ int FAR* piType) PURE;
STDMETHOD_(HRESULT, get_LocalSpec)(THIS_ BSTR FAR* pLocal) PURE;
STDMETHOD_(HRESULT, put_LocalSpec)(THIS_ BSTR Local) PURE;
STDMETHOD_(HRESULT, get_Name)(THIS_ BSTR FAR* pName) PURE;
STDMETHOD_(HRESULT, put_Name)(THIS_ BSTR Name) PURE;
STDMETHOD_(HRESULT, get_Parent)(THIS_ IVSSItem FAR* FAR* ppIParent) PURE;
STDMETHOD_(HRESULT, get_VersionNumber)(THIS_ long FAR* piVersion) PURE;
STDMETHOD_(HRESULT, get_Items)(THIS_ VARIANT_BOOL IncludeDeleted, IVSSItems FAR* FAR* ppIItems) PURE;
STDMETHOD_(HRESULT, Get)(THIS_ BSTR FAR* Local, long iFlags) PURE;
STDMETHOD_(HRESULT, Checkout)(THIS_ BSTR Comment, BSTR Local, long iFlags) PURE;
STDMETHOD_(HRESULT, Checkin)(THIS_ BSTR Comment, BSTR Local, long iFlags) PURE;
STDMETHOD_(HRESULT, UndoCheckout)(THIS_ BSTR Local, long iFlags) PURE;
STDMETHOD_(HRESULT, get_IsCheckedOut)(THIS_ long FAR* piStatus) PURE;
STDMETHOD_(HRESULT, get_Checkouts)(THIS_ IVSSCheckouts FAR* FAR* ppICheckouts) PURE;
STDMETHOD_(HRESULT, get_IsDifferent)(THIS_ BSTR Local, VARIANT_BOOL FAR* pbDifferent) PURE;
STDMETHOD_(HRESULT, Add)(THIS_ BSTR Local, BSTR Comment, long iFlags, IVSSItem FAR* FAR* ppIItem) PURE;
STDMETHOD_(HRESULT, NewSubproject)(THIS_ BSTR Name, BSTR Comment, IVSSItem FAR* FAR* ppIItem) PURE;
STDMETHOD_(HRESULT, Share)(THIS_ IVSSItem FAR* pIItem, BSTR Comment, long iFlags) PURE;
STDMETHOD_(HRESULT, Destroy)(THIS) PURE;
STDMETHOD_(HRESULT, Move)(THIS_ IVSSItem FAR* pINewParent) PURE;
STDMETHOD_(HRESULT, Label)(THIS_ BSTR Label, BSTR Comment) PURE;
STDMETHOD_(HRESULT, get_Versions)(THIS_ long iFlags, IVSSVersions FAR* FAR* pIVersions) PURE;
STDMETHOD_(HRESULT, get_Version)(THIS_ VARIANT Version, IVSSItem FAR* FAR* ppIItem) PURE;
};
DEFINE_GUID(IID_IVSSItem,0x2A0DE0E7L,0x2E9F,0x11D0,0x92,0x36,0x00,0xAA,0x00,0xA1,0xEB,0x95);
/* Definition of interface: IVSSItem */
#undef INTERFACE
#define INTERFACE IVSSItem
DECLARE_INTERFACE_(IVSSItem, IVSSItemOld)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IDispatch methods */
STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
STDMETHOD(GetTypeInfo)(
THIS_
UINT itinfo,
LCID lcid,
ITypeInfo FAR* FAR* pptinfo) PURE;
STDMETHOD(GetIDsOfNames)(
THIS_
REFIID riid,
OLECHAR FAR* FAR* rgszNames,
UINT cNames,
LCID lcid,
DISPID FAR* rgdispid) PURE;
STDMETHOD(Invoke)(
THIS_
DISPID dispidMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS FAR* pdispparams,
VARIANT FAR* pvarResult,
EXCEPINFO FAR* pexcepinfo,
UINT FAR* puArgErr) PURE;
/* IVSSItemOld methods */
STDMETHOD_(HRESULT, get_Spec)(THIS_ BSTR FAR* pSpec) PURE;
STDMETHOD_(HRESULT, get_Binary)(THIS_ VARIANT_BOOL FAR* pbBinary) PURE;
STDMETHOD_(HRESULT, put_Binary)(THIS_ VARIANT_BOOL bBinary) PURE;
STDMETHOD_(HRESULT, get_Deleted)(THIS_ VARIANT_BOOL FAR* pbDeleted) PURE;
STDMETHOD_(HRESULT, put_Deleted)(THIS_ VARIANT_BOOL bDeleted) PURE;
STDMETHOD_(HRESULT, get_Type)(THIS_ int FAR* piType) PURE;
STDMETHOD_(HRESULT, get_LocalSpec)(THIS_ BSTR FAR* pLocal) PURE;
STDMETHOD_(HRESULT, put_LocalSpec)(THIS_ BSTR Local) PURE;
STDMETHOD_(HRESULT, get_Name)(THIS_ BSTR FAR* pName) PURE;
STDMETHOD_(HRESULT, put_Name)(THIS_ BSTR Name) PURE;
STDMETHOD_(HRESULT, get_Parent)(THIS_ IVSSItem FAR* FAR* ppIParent) PURE;
STDMETHOD_(HRESULT, get_VersionNumber)(THIS_ long FAR* piVersion) PURE;
STDMETHOD_(HRESULT, get_Items)(THIS_ VARIANT_BOOL IncludeDeleted, IVSSItems FAR* FAR* ppIItems) PURE;
STDMETHOD_(HRESULT, Get)(THIS_ BSTR FAR* Local, long iFlags) PURE;
STDMETHOD_(HRESULT, Checkout)(THIS_ BSTR Comment, BSTR Local, long iFlags) PURE;
STDMETHOD_(HRESULT, Checkin)(THIS_ BSTR Comment, BSTR Local, long iFlags) PURE;
STDMETHOD_(HRESULT, UndoCheckout)(THIS_ BSTR Local, long iFlags) PURE;
STDMETHOD_(HRESULT, get_IsCheckedOut)(THIS_ long FAR* piStatus) PURE;
STDMETHOD_(HRESULT, get_Checkouts)(THIS_ IVSSCheckouts FAR* FAR* ppICheckouts) PURE;
STDMETHOD_(HRESULT, get_IsDifferent)(THIS_ BSTR Local, VARIANT_BOOL FAR* pbDifferent) PURE;
STDMETHOD_(HRESULT, Add)(THIS_ BSTR Local, BSTR Comment, long iFlags, IVSSItem FAR* FAR* ppIItem) PURE;
STDMETHOD_(HRESULT, NewSubproject)(THIS_ BSTR Name, BSTR Comment, IVSSItem FAR* FAR* ppIItem) PURE;
STDMETHOD_(HRESULT, Share)(THIS_ IVSSItem FAR* pIItem, BSTR Comment, long iFlags) PURE;
STDMETHOD_(HRESULT, Destroy)(THIS) PURE;
STDMETHOD_(HRESULT, Move)(THIS_ IVSSItem FAR* pINewParent) PURE;
STDMETHOD_(HRESULT, Label)(THIS_ BSTR Label, BSTR Comment) PURE;
STDMETHOD_(HRESULT, get_Versions)(THIS_ long iFlags, IVSSVersions FAR* FAR* pIVersions) PURE;
STDMETHOD_(HRESULT, get_Version)(THIS_ VARIANT Version, IVSSItem FAR* FAR* ppIItem) PURE;
#endif
/* IVSSItem methods */
STDMETHOD_(HRESULT, get_Links)(THIS_ IVSSItems FAR* FAR* ppIItems) PURE;
STDMETHOD_(HRESULT, Branch)(THIS_ BSTR Comment, long iFlags, IVSSItem FAR* FAR* ppIItem) PURE;
};
DEFINE_GUID(IID_IVSSVersions,0x783CD4E7L,0x9D54,0x11CF,0xB8,0xEE,0x00,0x60,0x8C,0xC9,0xA7,0x1F);
/* Definition of interface: IVSSVersions */
#undef INTERFACE
#define INTERFACE IVSSVersions
DECLARE_INTERFACE_(IVSSVersions, IDispatch)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IDispatch methods */
STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
STDMETHOD(GetTypeInfo)(
THIS_
UINT itinfo,
LCID lcid,
ITypeInfo FAR* FAR* pptinfo) PURE;
STDMETHOD(GetIDsOfNames)(
THIS_
REFIID riid,
OLECHAR FAR* FAR* rgszNames,
UINT cNames,
LCID lcid,
DISPID FAR* rgdispid) PURE;
STDMETHOD(Invoke)(
THIS_
DISPID dispidMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS FAR* pdispparams,
VARIANT FAR* pvarResult,
EXCEPINFO FAR* pexcepinfo,
UINT FAR* puArgErr) PURE;
#endif
/* IVSSVersions methods */
STDMETHOD(_NewEnum)(THIS_ IUnknown * FAR* ppIEnum) PURE;
};
DEFINE_GUID(IID_IVSSVersionOld,0x783CD4E8L,0x9D54,0x11CF,0xB8,0xEE,0x00,0x60,0x8C,0xC9,0xA7,0x1F);
/* Definition of interface: IVSSVersionOld */
#undef INTERFACE
#define INTERFACE IVSSVersionOld
DECLARE_INTERFACE_(IVSSVersionOld, IDispatch)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IDispatch methods */
STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
STDMETHOD(GetTypeInfo)(
THIS_
UINT itinfo,
LCID lcid,
ITypeInfo FAR* FAR* pptinfo) PURE;
STDMETHOD(GetIDsOfNames)(
THIS_
REFIID riid,
OLECHAR FAR* FAR* rgszNames,
UINT cNames,
LCID lcid,
DISPID FAR* rgdispid) PURE;
STDMETHOD(Invoke)(
THIS_
DISPID dispidMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS FAR* pdispparams,
VARIANT FAR* pvarResult,
EXCEPINFO FAR* pexcepinfo,
UINT FAR* puArgErr) PURE;
#endif
/* IVSSVersionOld methods */
STDMETHOD_(HRESULT, get_Username)(THIS_ BSTR FAR* pUsername) PURE;
STDMETHOD_(HRESULT, get_VersionNumber)(THIS_ long FAR* piVersion) PURE;
STDMETHOD_(HRESULT, get_Action)(THIS_ BSTR FAR* pAction) PURE;
STDMETHOD_(HRESULT, get_Date)(THIS_ DATE FAR* pDate) PURE;
STDMETHOD_(HRESULT, get_Comment)(THIS_ BSTR FAR* pComment) PURE;
STDMETHOD_(HRESULT, get_Label)(THIS_ BSTR FAR* pLabel) PURE;
STDMETHOD_(HRESULT, get_VSSItem)(THIS_ IVSSItem FAR* FAR* ppIItem) PURE;
};
DEFINE_GUID(IID_IVSSVersion,0x2A0DE0E9L,0x2E9F,0x11D0,0x92,0x36,0x00,0xAA,0x00,0xA1,0xEB,0x95);
/* Definition of interface: IVSSVersion */
#undef INTERFACE
#define INTERFACE IVSSVersion
DECLARE_INTERFACE_(IVSSVersion, IVSSVersionOld)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IDispatch methods */
STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
STDMETHOD(GetTypeInfo)(
THIS_
UINT itinfo,
LCID lcid,
ITypeInfo FAR* FAR* pptinfo) PURE;
STDMETHOD(GetIDsOfNames)(
THIS_
REFIID riid,
OLECHAR FAR* FAR* rgszNames,
UINT cNames,
LCID lcid,
DISPID FAR* rgdispid) PURE;
STDMETHOD(Invoke)(
THIS_
DISPID dispidMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS FAR* pdispparams,
VARIANT FAR* pvarResult,
EXCEPINFO FAR* pexcepinfo,
UINT FAR* puArgErr) PURE;
/* IVSSVersionOld methods */
STDMETHOD_(HRESULT, get_Username)(THIS_ BSTR FAR* pUsername) PURE;
STDMETHOD_(HRESULT, get_VersionNumber)(THIS_ long FAR* piVersion) PURE;
STDMETHOD_(HRESULT, get_Action)(THIS_ BSTR FAR* pAction) PURE;
STDMETHOD_(HRESULT, get_Date)(THIS_ DATE FAR* pDate) PURE;
STDMETHOD_(HRESULT, get_Comment)(THIS_ BSTR FAR* pComment) PURE;
STDMETHOD_(HRESULT, get_Label)(THIS_ BSTR FAR* pLabel) PURE;
STDMETHOD_(HRESULT, get_VSSItem)(THIS_ IVSSItem FAR* FAR* ppIItem) PURE;
#endif
/* IVSSVersion methods */
STDMETHOD_(HRESULT, get_LabelComment)(THIS_ BSTR FAR* pComment) PURE;
};
DEFINE_GUID(IID_IVSSItems,0x783CD4E5L,0x9D54,0x11CF,0xB8,0xEE,0x00,0x60,0x8C,0xC9,0xA7,0x1F);
/* Definition of interface: IVSSItems */
#undef INTERFACE
#define INTERFACE IVSSItems
DECLARE_INTERFACE_(IVSSItems, IDispatch)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IDispatch methods */
STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
STDMETHOD(GetTypeInfo)(
THIS_
UINT itinfo,
LCID lcid,
ITypeInfo FAR* FAR* pptinfo) PURE;
STDMETHOD(GetIDsOfNames)(
THIS_
REFIID riid,
OLECHAR FAR* FAR* rgszNames,
UINT cNames,
LCID lcid,
DISPID FAR* rgdispid) PURE;
STDMETHOD(Invoke)(
THIS_
DISPID dispidMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS FAR* pdispparams,
VARIANT FAR* pvarResult,
EXCEPINFO FAR* pexcepinfo,
UINT FAR* puArgErr) PURE;
#endif
/* IVSSItems methods */
STDMETHOD_(HRESULT, get_Count)(THIS_ long FAR* piCount) PURE;
STDMETHOD_(HRESULT, get_Item)(THIS_ VARIANT sItem, IVSSItem FAR* FAR* ppIItem) PURE;
STDMETHOD_(HRESULT, _NewEnum)(THIS_ IUnknown * FAR* ppIEnum) PURE;
};
DEFINE_GUID(IID_IVSSCheckouts,0x8903A770L,0xF55F,0x11CF,0x92,0x27,0x00,0xAA,0x00,0xA1,0xEB,0x95);
/* Definition of interface: IVSSCheckouts */
#undef INTERFACE
#define INTERFACE IVSSCheckouts
DECLARE_INTERFACE_(IVSSCheckouts, IDispatch)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IDispatch methods */
STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
STDMETHOD(GetTypeInfo)(
THIS_
UINT itinfo,
LCID lcid,
ITypeInfo FAR* FAR* pptinfo) PURE;
STDMETHOD(GetIDsOfNames)(
THIS_
REFIID riid,
OLECHAR FAR* FAR* rgszNames,
UINT cNames,
LCID lcid,
DISPID FAR* rgdispid) PURE;
STDMETHOD(Invoke)(
THIS_
DISPID dispidMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS FAR* pdispparams,
VARIANT FAR* pvarResult,
EXCEPINFO FAR* pexcepinfo,
UINT FAR* puArgErr) PURE;
#endif
/* IVSSCheckouts methods */
STDMETHOD_(HRESULT, get_Count)(THIS_ long FAR* piCount) PURE;
STDMETHOD_(HRESULT, get_Item)(THIS_ VARIANT sItem, IVSSCheckout FAR* FAR* ppICheckout) PURE;
STDMETHOD_(HRESULT, _NewEnum)(THIS_ IUnknown * FAR* ppIEnum) PURE;
};
DEFINE_GUID(IID_IVSSCheckout,0x783CD4E6L,0x9D54,0x11CF,0xB8,0xEE,0x00,0x60,0x8C,0xC9,0xA7,0x1F);
/* Definition of interface: IVSSCheckout */
#undef INTERFACE
#define INTERFACE IVSSCheckout
DECLARE_INTERFACE_(IVSSCheckout, IDispatch)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IDispatch methods */
STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
STDMETHOD(GetTypeInfo)(
THIS_
UINT itinfo,
LCID lcid,
ITypeInfo FAR* FAR* pptinfo) PURE;
STDMETHOD(GetIDsOfNames)(
THIS_
REFIID riid,
OLECHAR FAR* FAR* rgszNames,
UINT cNames,
LCID lcid,
DISPID FAR* rgdispid) PURE;
STDMETHOD(Invoke)(
THIS_
DISPID dispidMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS FAR* pdispparams,
VARIANT FAR* pvarResult,
EXCEPINFO FAR* pexcepinfo,
UINT FAR* puArgErr) PURE;
#endif
/* IVSSCheckout methods */
STDMETHOD_(HRESULT, get_Username)(THIS_ BSTR FAR* pUsername) PURE;
STDMETHOD_(HRESULT, get_Date)(THIS_ DATE FAR* pDate) PURE;
STDMETHOD_(HRESULT, get_LocalSpec)(THIS_ BSTR FAR* pLocal) PURE;
STDMETHOD_(HRESULT, get_Machine)(THIS_ BSTR FAR* pMachine) PURE;
STDMETHOD_(HRESULT, get_Project)(THIS_ BSTR FAR* pProject) PURE;
STDMETHOD_(HRESULT, get_Comment)(THIS_ BSTR FAR* pComment) PURE;
STDMETHOD_(HRESULT, get_VersionNumber)(THIS_ long FAR* piVersion) PURE;
};
DEFINE_GUID(IID_IVSSDatabaseOld,0x783CD4E2L,0x9D54,0x11CF,0xB8,0xEE,0x00,0x60,0x8C,0xC9,0xA7,0x1F);
/* Definition of interface: IVSSDatabaseOld */
#undef INTERFACE
#define INTERFACE IVSSDatabaseOld
DECLARE_INTERFACE_(IVSSDatabaseOld, IDispatch)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IDispatch methods */
STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
STDMETHOD(GetTypeInfo)(
THIS_
UINT itinfo,
LCID lcid,
ITypeInfo FAR* FAR* pptinfo) PURE;
STDMETHOD(GetIDsOfNames)(
THIS_
REFIID riid,
OLECHAR FAR* FAR* rgszNames,
UINT cNames,
LCID lcid,
DISPID FAR* rgdispid) PURE;
STDMETHOD(Invoke)(
THIS_
DISPID dispidMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS FAR* pdispparams,
VARIANT FAR* pvarResult,
EXCEPINFO FAR* pexcepinfo,
UINT FAR* puArgErr) PURE;
#endif
/* IVSSDatabaseOld methods */
STDMETHOD_(HRESULT, Open)(THIS_ BSTR SrcSafeIni, BSTR Username, BSTR Password) PURE;
STDMETHOD_(HRESULT, get_SrcSafeIni)(THIS_ BSTR FAR* pSrcSafeIni) PURE;
STDMETHOD_(HRESULT, get_DatabaseName)(THIS_ BSTR FAR* pDatabaseName) PURE;
STDMETHOD_(HRESULT, get_UserName)(THIS_ BSTR FAR* pUsername) PURE;
STDMETHOD_(HRESULT, get_CurrentProject)(THIS_ BSTR FAR* pPrj) PURE;
STDMETHOD_(HRESULT, put_CurrentProject)(THIS_ BSTR Prj) PURE;
STDMETHOD_(HRESULT, get_VSSItem)(THIS_ BSTR Spec, VARIANT_BOOL Deleted, IVSSItem FAR* FAR* ppIVSSItem) PURE;
};
DEFINE_GUID(IID_IVSSDatabase,0x2A0DE0E2L,0x2E9F,0x11D0,0x92,0x36,0x00,0xAA,0x00,0xA1,0xEB,0x95);
/* Definition of interface: IVSSDatabase */
#undef INTERFACE
#define INTERFACE IVSSDatabase
DECLARE_INTERFACE_(IVSSDatabase, IVSSDatabaseOld)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IDispatch methods */
STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
STDMETHOD(GetTypeInfo)(
THIS_
UINT itinfo,
LCID lcid,
ITypeInfo FAR* FAR* pptinfo) PURE;
STDMETHOD(GetIDsOfNames)(
THIS_
REFIID riid,
OLECHAR FAR* FAR* rgszNames,
UINT cNames,
LCID lcid,
DISPID FAR* rgdispid) PURE;
STDMETHOD(Invoke)(
THIS_
DISPID dispidMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS FAR* pdispparams,
VARIANT FAR* pvarResult,
EXCEPINFO FAR* pexcepinfo,
UINT FAR* puArgErr) PURE;
/* IVSSDatabaseOld methods */
STDMETHOD_(HRESULT, Open)(THIS_ BSTR SrcSafeIni, BSTR Username, BSTR Password) PURE;
STDMETHOD_(HRESULT, get_SrcSafeIni)(THIS_ BSTR FAR* pSrcSafeIni) PURE;
STDMETHOD_(HRESULT, get_DatabaseName)(THIS_ BSTR FAR* pDatabaseName) PURE;
STDMETHOD_(HRESULT, get_UserName)(THIS_ BSTR FAR* pUsername) PURE;
STDMETHOD_(HRESULT, get_CurrentProject)(THIS_ BSTR FAR* pPrj) PURE;
STDMETHOD_(HRESULT, put_CurrentProject)(THIS_ BSTR Prj) PURE;
STDMETHOD_(HRESULT, get_VSSItem)(THIS_ BSTR Spec, VARIANT_BOOL Deleted, IVSSItem FAR* FAR* ppIVSSItem) PURE;
#endif
/* IVSSDatabase methods */
STDMETHOD_(HRESULT, AddUser)(THIS_ BSTR User, BSTR Password, VARIANT_BOOL ReadOnly, IVSSUser FAR* FAR* ppIUser) PURE;
STDMETHOD_(HRESULT, get_User)(THIS_ BSTR Name, IVSSUser FAR* FAR* ppIUser) PURE;
STDMETHOD_(HRESULT, get_Users)(THIS_ IVSSUsers FAR* FAR* ppIUsers) PURE;
STDMETHOD_(HRESULT, get_ProjectRightsEnabled)(THIS_ VARIANT_BOOL FAR* pEnabled) PURE;
STDMETHOD_(HRESULT, put_ProjectRightsEnabled)(THIS_ VARIANT_BOOL pEnabled) PURE;
STDMETHOD_(HRESULT, get_DefaultProjectRights)(THIS_ long FAR* pRights) PURE;
STDMETHOD_(HRESULT, put_DefaultProjectRights)(THIS_ long Rights) PURE;
};
DEFINE_GUID(IID_IVSSUser,0x2A0DE0E3L,0x2E9F,0x11D0,0x92,0x36,0x00,0xAA,0x00,0xA1,0xEB,0x95);
/* Definition of interface: IVSSUser */
#undef INTERFACE
#define INTERFACE IVSSUser
DECLARE_INTERFACE_(IVSSUser, IDispatch)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IDispatch methods */
STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
STDMETHOD(GetTypeInfo)(
THIS_
UINT itinfo,
LCID lcid,
ITypeInfo FAR* FAR* pptinfo) PURE;
STDMETHOD(GetIDsOfNames)(
THIS_
REFIID riid,
OLECHAR FAR* FAR* rgszNames,
UINT cNames,
LCID lcid,
DISPID FAR* rgdispid) PURE;
STDMETHOD(Invoke)(
THIS_
DISPID dispidMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS FAR* pdispparams,
VARIANT FAR* pvarResult,
EXCEPINFO FAR* pexcepinfo,
UINT FAR* puArgErr) PURE;
#endif
/* IVSSUser methods */
STDMETHOD_(HRESULT, Delete)(THIS) PURE;
STDMETHOD_(HRESULT, get_Name)(THIS_ BSTR FAR* pName) PURE;
STDMETHOD_(HRESULT, put_Name)(THIS_ BSTR Name) PURE;
STDMETHOD_(HRESULT, put_Password)(THIS_ BSTR Password) PURE;
STDMETHOD_(HRESULT, get_ReadOnly)(THIS_ VARIANT_BOOL FAR* pReadOnly) PURE;
STDMETHOD_(HRESULT, put_ReadOnly)(THIS_ VARIANT_BOOL ReadOnly) PURE;
STDMETHOD_(HRESULT, get_ProjectRights)(THIS_ BSTR Project, long FAR* piRightsOut) PURE;
STDMETHOD_(HRESULT, put_ProjectRights)(THIS_ BSTR Project, long iRightsIn) PURE;
STDMETHOD_(HRESULT, RemoveProjectRights)(THIS_ BSTR Project) PURE;
};
DEFINE_GUID(IID_IVSSUsers,0x2A0DE0E4L,0x2E9F,0x11D0,0x92,0x36,0x00,0xAA,0x00,0xA1,0xEB,0x95);
/* Definition of interface: IVSSUsers */
#undef INTERFACE
#define INTERFACE IVSSUsers
DECLARE_INTERFACE_(IVSSUsers, IDispatch)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IDispatch methods */
STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
STDMETHOD(GetTypeInfo)(
THIS_
UINT itinfo,
LCID lcid,
ITypeInfo FAR* FAR* pptinfo) PURE;
STDMETHOD(GetIDsOfNames)(
THIS_
REFIID riid,
OLECHAR FAR* FAR* rgszNames,
UINT cNames,
LCID lcid,
DISPID FAR* rgdispid) PURE;
STDMETHOD(Invoke)(
THIS_
DISPID dispidMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS FAR* pdispparams,
VARIANT FAR* pvarResult,
EXCEPINFO FAR* pexcepinfo,
UINT FAR* puArgErr) PURE;
#endif
/* IVSSUsers methods */
STDMETHOD_(HRESULT, get_Count)(THIS_ long FAR* piCount) PURE;
STDMETHOD_(HRESULT, get_Item)(THIS_ VARIANT sItem, IVSSUser FAR* FAR* ppIUser) PURE;
STDMETHOD_(HRESULT, _NewEnum)(THIS_ IUnknown * FAR* ppIEnum) PURE;
};
DEFINE_GUID(CLSID_VSSItem,0x783CD4E3L,0x9D54,0x11CF,0xB8,0xEE,0x00,0x60,0x8C,0xC9,0xA7,0x1F);
#ifdef __cplusplus
class VSSItem;
#endif
DEFINE_GUID(CLSID_VSSVersion,0x783CD4ECL,0x9D54,0x11CF,0xB8,0xEE,0x00,0x60,0x8C,0xC9,0xA7,0x1F);
#ifdef __cplusplus
class VSSVersion;
#endif
DEFINE_GUID(CLSID_VSSCheckout,0x2A0DE0E0L,0x2E9F,0x11D0,0x92,0x36,0x00,0xAA,0x00,0xA1,0xEB,0x95);
#ifdef __cplusplus
class VSSCheckout;
#endif
DEFINE_GUID(CLSID_VSSDatabase,0x783CD4E4L,0x9D54,0x11CF,0xB8,0xEE,0x00,0x60,0x8C,0xC9,0xA7,0x1F);
#ifdef __cplusplus
class VSSDatabase;
#endif
DEFINE_GUID(CLSID_VSSUser,0x2A0DE0E5L,0x2E9F,0x11D0,0x92,0x36,0x00,0xAA,0x00,0xA1,0xEB,0x95);
#ifdef __cplusplus
class VSSUser;
#endif
DEFINE_GUID(IID_IVSSEventsOld,0x783CD4E9L,0x9D54,0x11CF,0xB8,0xEE,0x00,0x60,0x8C,0xC9,0xA7,0x1F);
/* Definition of interface: IVSSEventsOld */
#undef INTERFACE
#define INTERFACE IVSSEventsOld
DECLARE_INTERFACE_(IVSSEventsOld, IUnknown)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
#endif
/* IVSSEventsOld methods */
STDMETHOD_(HRESULT, BeforeAdd)(THIS_ IVSSItem FAR* pIPrj, BSTR Local, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, AfterAdd)(THIS_ IVSSItem FAR* pIItem, BSTR Local) PURE;
STDMETHOD_(HRESULT, BeforeCheckout)(THIS_ IVSSItem FAR* pIItem, BSTR Local, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, AfterCheckout)(THIS_ IVSSItem FAR* pIItem, BSTR Local) PURE;
STDMETHOD_(HRESULT, BeforeCheckin)(THIS_ IVSSItem FAR* pIItem, BSTR Local, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, AfterCheckin)(THIS_ IVSSItem FAR* pIItem, BSTR Local) PURE;
STDMETHOD_(HRESULT, BeforeUndoCheckout)(THIS_ IVSSItem FAR* pIItem, BSTR Local, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, AfterUndoCheckout)(THIS_ IVSSItem FAR* pIItem, BSTR Local) PURE;
STDMETHOD_(HRESULT, BeforeRename)(THIS_ IVSSItem FAR* pIItem, BSTR NewName, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, AfterRename)(THIS_ IVSSItem FAR* pIItem, BSTR OldName) PURE;
STDMETHOD_(HRESULT, BeforeBranch)(THIS_ IVSSItem FAR* pIItem, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, AfterBranch)(THIS_ IVSSItem FAR* pIItem) PURE;
STDMETHOD_(HRESULT, BeforeEvent)(THIS_ long iEvent, IVSSItem FAR* pIItem, BSTR Str, VARIANT var, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, AfterEvent)(THIS_ long iEvent, IVSSItem FAR* pIItem, BSTR Str, VARIANT var) PURE;
};
DEFINE_GUID(IID_IVSSEvents,0x2A0DE0E8L,0x2E9F,0x11D0,0x92,0x36,0x00,0xAA,0x00,0xA1,0xEB,0x95);
/* Definition of interface: IVSSEvents */
#undef INTERFACE
#define INTERFACE IVSSEvents
DECLARE_INTERFACE_(IVSSEvents, IUnknown)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
#endif
/* IVSSEvents methods */
STDMETHOD_(HRESULT, BeforeAdd)(THIS_ IVSSItem FAR* pIPrj, BSTR Local, BSTR Comment, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, AfterAdd)(THIS_ IVSSItem FAR* pIItem, BSTR Local, BSTR Comment) PURE;
STDMETHOD_(HRESULT, BeforeCheckout)(THIS_ IVSSItem FAR* pIItem, BSTR Local, BSTR Comment, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, AfterCheckout)(THIS_ IVSSItem FAR* pIItem, BSTR Local, BSTR Comment) PURE;
STDMETHOD_(HRESULT, BeforeCheckin)(THIS_ IVSSItem FAR* pIItem, BSTR Local, BSTR Comment, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, AfterCheckin)(THIS_ IVSSItem FAR* pIItem, BSTR Local, BSTR Comment) PURE;
STDMETHOD_(HRESULT, BeforeUndoCheckout)(THIS_ IVSSItem FAR* pIItem, BSTR Local, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, AfterUndoCheckout)(THIS_ IVSSItem FAR* pIItem, BSTR Local) PURE;
STDMETHOD_(HRESULT, BeforeRename)(THIS_ IVSSItem FAR* pIItem, BSTR NewName, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, AfterRename)(THIS_ IVSSItem FAR* pIItem, BSTR OldName) PURE;
STDMETHOD_(HRESULT, BeforeBranch)(THIS_ IVSSItem FAR* pIItem, BSTR Comment, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, AfterBranch)(THIS_ IVSSItem FAR* pIItem, BSTR Comment) PURE;
STDMETHOD_(HRESULT, BeginCommand)(THIS_ long unused, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, EndCommand)(THIS_ long unused) PURE;
STDMETHOD_(HRESULT, BeforeEvent)(THIS_ long iEvent, IVSSItem FAR* pIItem, BSTR Str, VARIANT var, VARIANT_BOOL FAR* pbContinue) PURE;
STDMETHOD_(HRESULT, AfterEvent)(THIS_ long iEvent, IVSSItem FAR* pIItem, BSTR Str, VARIANT var) PURE;
};
DEFINE_GUID(IID_IVSS,0x783CD4EBL,0x9D54,0x11CF,0xB8,0xEE,0x00,0x60,0x8C,0xC9,0xA7,0x1F);
/* Definition of interface: IVSS */
#undef INTERFACE
#define INTERFACE IVSS
DECLARE_INTERFACE_(IVSS, IDispatch)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IDispatch methods */
STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;
STDMETHOD(GetTypeInfo)(
THIS_
UINT itinfo,
LCID lcid,
ITypeInfo FAR* FAR* pptinfo) PURE;
STDMETHOD(GetIDsOfNames)(
THIS_
REFIID riid,
OLECHAR FAR* FAR* rgszNames,
UINT cNames,
LCID lcid,
DISPID FAR* rgdispid) PURE;
STDMETHOD(Invoke)(
THIS_
DISPID dispidMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS FAR* pdispparams,
VARIANT FAR* pvarResult,
EXCEPINFO FAR* pexcepinfo,
UINT FAR* puArgErr) PURE;
#endif
/* IVSS methods */
STDMETHOD_(HRESULT, get_VSSDatabase)(THIS_ IVSSDatabase FAR* FAR* ppIVSSDatabase) PURE;
};
DEFINE_GUID(IID_IVSSEventHandler,0x783CD4EAL,0x9D54,0x11CF,0xB8,0xEE,0x00,0x60,0x8C,0xC9,0xA7,0x1F);
/* Definition of interface: IVSSEventHandler */
#undef INTERFACE
#define INTERFACE IVSSEventHandler
DECLARE_INTERFACE_(IVSSEventHandler, IUnknown)
{
BEGIN_INTERFACE
#ifndef NO_BASEINTERFACE_FUNCS
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
#endif
/* IVSSEventHandler methods */
STDMETHOD(Init)(THIS_ IVSS FAR* pIVSS) PURE;
};
DEFINE_GUID(CLSID_VSSApp,0x2A0DE0E1L,0x2E9F,0x11D0,0x92,0x36,0x00,0xAA,0x00,0xA1,0xEB,0x95);
#ifdef __cplusplus
class VSSApp;
#endif
#endif