1 // VSSDatabase.h : Declaration of the CVSSDatabase
3 #ifndef __VSSDATABASE_H_
4 #define __VSSDATABASE_H_
6 #include "resource.h" // main symbols
7 #include <SSPhysLib\SSDatabase.h>
9 /////////////////////////////////////////////////////////////////////////////
11 class ATL_NO_VTABLE CVSSDatabase
:
12 public CComObjectRootEx
<CComSingleThreadModel
>,
13 public CComCoClass
<CVSSDatabase
, &CLSID_VSSDatabase
>,
14 public IDispatchImpl
<IVSSDatabase
, &IID_IVSSDatabase
, &LIBID_SourceSafeTypeLib
>
21 DECLARE_REGISTRY_RESOURCEID(IDR_VSSDATABASE
)
23 DECLARE_PROTECT_FINAL_CONSTRUCT()
25 BEGIN_COM_MAP(CVSSDatabase
)
26 //DEL COM_INTERFACE_ENTRY(IDispatch)
27 COM_INTERFACE_ENTRY2(IDispatch
, IVSSDatabase
)
28 COM_INTERFACE_ENTRY(IVSSDatabase
)
33 STDMETHOD(get_ProjectRightsEnabled
)(VARIANT_BOOL
* pEnabled
);
34 STDMETHOD(put_ProjectRightsEnabled
)(VARIANT_BOOL pEnabled
);
35 STDMETHOD(get_DefaultProjectRights
)(LONG
* pRights
);
36 STDMETHOD(put_DefaultProjectRights
)(LONG pRights
);
37 STDMETHOD(AddUser
)(BSTR User
, BSTR Password
, VARIANT_BOOL ReadOnly
, IVSSUser
* * ppIUser
);
38 STDMETHOD(get_User
)(BSTR Name
, IVSSUser
* * ppIUser
);
39 STDMETHOD(get_Users
)(IVSSUsers
* * ppIUsers
);
42 STDMETHOD(Open
)(BSTR SrcSafeIni
, BSTR Username
, BSTR Password
);
43 STDMETHOD(get_SrcSafeIni
)(BSTR
* pSrcSafeIni
);
44 STDMETHOD(get_DatabaseName
)(BSTR
* pDatabaseName
);
45 STDMETHOD(get_Username
)(BSTR
* pUsername
);
46 STDMETHOD(get_CurrentProject
)(BSTR
* pPrj
);
47 STDMETHOD(put_CurrentProject
)(BSTR pPrj
);
48 STDMETHOD(get_VSSItem
)(BSTR Spec
, VARIANT_BOOL Deleted
, IVSSItem
* * ppIVSSItem
);
51 SSDatabase m_Database
;
54 #endif //__VSSDATABASE_H_