8#if !defined(OCF_APPDESC_H)
12#if defined(BI_HAS_PRAGMA_ONCE)
63 operator IUnknown*() {
return this;}
72 void SetLangId(
owl::TLangId prevLang, LPCTSTR langIdStr);
86 void UnregisterClass();
88 void UnregisterObject();
90 void RegisterServer(
owl::TLangId lang, LPCTSTR regFile = 0);
91 void UnregisterServer(
owl::TLangId lang = 0, LPCTSTR str = 0);
96 void MergeAutoClasses();
100 ITypeLib* GetTypeLibrary();
105 bool GetClassId(
TAutoClass* cls, GUID& retId);
122 TUnknown* CreateAutoObject(
const void* obj,
const std::type_info& objInfo,
123 const void* app,
const std::type_info& appInfo,
129 void InvalidateObject(
const void* obj);
130 void ReleaseObject(
const void * obj);
131 bool IsBound() {
return static_cast<bool>(ServedList != 0 || LockCount != 0);}
134 void DeleteCreator();
139 void Init(IMalloc* alloc = 0);
149 TAutoClass::TAutoClassRef*
162 unsigned long RefCnt;
164 unsigned long RegClassHdl;
165 unsigned long RegObjectHdl;
175 HRESULT
_IFUNC QueryInterface(
const IID &
iid,
void** retIface);
176 unsigned long _IFUNC AddRef();
177 unsigned long _IFUNC Release();
183 HRESULT
_IFUNC CreateInstance(IUnknown* outer,
const IID &
iid,
void** retObject);
184 HRESULT
_IFUNC LockServer(
int lock);
188 HRESULT
_IFUNC GetLicInfo( LICINFO* licInfo);
189 HRESULT
_IFUNC RequestLicKey(DWORD reserved, BSTR* retKey);
190 HRESULT
_IFUNC CreateInstanceLic(IUnknown* outer, IUnknown* reserved,
191 const IID &
iid, BSTR key,
204 return TAppDescriptor::This;
220 ITypeInfo* CreateCoClassInfo();
224 unsigned long RefCnt;
227 int CoClassImplCount;
231 HRESULT
_IFUNC QueryInterface(
const IID &
iid,
void** retIface);
232 unsigned long _IFUNC AddRef();
233 unsigned long _IFUNC Release();
237 unsigned int _IFUNC GetTypeInfoCount();
238 HRESULT
_IFUNC GetTypeInfo(
unsigned index, ITypeInfo** retInfo);
239 HRESULT
_IFUNC GetTypeInfoType(
unsigned index, TYPEKIND * retKind);
240 HRESULT
_IFUNC GetTypeInfoOfGuid(
const GUID& guid, ITypeInfo** retInfo);
241 HRESULT
_IFUNC GetLibAttr(TLIBATTR** retAttr);
242 HRESULT
_IFUNC GetTypeComp(ITypeComp** retComp);
243 HRESULT
_IFUNC GetDocumentation(
int index, BSTR* retName,
245 unsigned long* retHelpContext,
247 HRESULT
_IFUNC IsName(OLECHAR* nameBuf,
unsigned long hashVal,
249 HRESULT
_IFUNC FindName(OLECHAR* nameBuf,
unsigned long lHashVal,
250 ITypeInfo** retInfo, MEMBERID* retId,
251 unsigned short * inoutCount);
252 void _IFUNC ReleaseTLibAttr(TLIBATTR* attr);
268 unsigned long RefCnt;
277 HRESULT
_IFUNC QueryInterface(
const IID &
iid,
void** retIface);
278 unsigned long _IFUNC AddRef();
279 unsigned long _IFUNC Release();
283 HRESULT
_IFUNC GetTypeAttr(TYPEATTR** pptypeattr);
284 HRESULT
_IFUNC GetTypeComp(ITypeComp** pptcomp);
285 HRESULT
_IFUNC GetFuncDesc(
unsigned int index, FUNCDESC** ppfuncdesc);
286 HRESULT
_IFUNC GetVarDesc(
unsigned int index, VARDESC * * ppvardesc);
287 HRESULT
_IFUNC GetNames(MEMBERID memid, BSTR * rgbstrNames,
288 unsigned int cMaxNames,
289 unsigned int * pcNames);
290 HRESULT
_IFUNC GetRefTypeOfImplType(
unsigned int index, HREFTYPE * phreftype);
291 HRESULT
_IFUNC GetImplTypeFlags(
unsigned int index,
int * pimpltypeflags);
292 HRESULT
_IFUNC GetIDsOfNames(OLECHAR * * rgszNames,
295 HRESULT
_IFUNC Invoke(
void * pvInstance, MEMBERID memid,
296 unsigned short wFlags,
297 DISPPARAMS *pdispparams,
299 EXCEPINFO *pexcepinfo,
300 unsigned int *puArgErr);
301 HRESULT
_IFUNC GetDocumentation(MEMBERID memid,
303 BSTR * pbstrDocString,
305 BSTR * pbstrHelpFile);
306 HRESULT
_IFUNC GetDllEntry(MEMBERID memid, INVOKEKIND invkind,
309 unsigned short * pwOrdinal);
310 HRESULT
_IFUNC GetRefTypeInfo(HREFTYPE hreftype,
311 ITypeInfo* * pptinfo);
312 HRESULT
_IFUNC AddressOfMember(MEMBERID memid, INVOKEKIND invkind,
314 HRESULT
_IFUNC CreateInstance(IUnknown* punkOuter,
const IID & riid,
316 HRESULT
_IFUNC GetMops(MEMBERID memid, BSTR * pbstrMops);
317 HRESULT
_IFUNC GetContainingTypeLib(ITypeLib* * pptlib,
319 void _IFUNC ReleaseTypeAttr(TYPEATTR * ptypeattr);
320 void _IFUNC ReleaseFuncDesc(FUNCDESC * pfuncdesc);
321 void _IFUNC ReleaseVarDesc(VARDESC * pvardesc);
329typedef DECLARE_FUNC(HRESULT,STDAPICALLTYPE,*TDllRegisterServer)();
330typedef DECLARE_FUNC(HRESULT,STDAPICALLTYPE,*TDllUnregisterServer)();
331typedef DECLARE_FUNC(HRESULT,STDAPICALLTYPE,*TDllRegisterCommand)(
const char* cmdLine);
OLE Automation Class Definitions.
void SetOption(owl::uint32 bit, bool state)
bool IsActiveObject(TServedObject *obj)
bool IsOptionSet(owl::uint32 option) const
const owl::TRegLink * GetRegLinkHead() const
TComponentFactory GetFactory() const
LPCTSTR GetAppDoc(owl::TLangId lang)
LPCTSTR GetAppName(owl::TLangId lang)
owl::TLangId GetAppLang()
LPCTSTR GetHelpFile(owl::TLangId lang)
const TLicenseKeyFactory * GetLicKeyFactory() const
owl::uint32 GetOptions() const
Base GUID for a components sequence of GUIDs.
GUID/IID/CLSID management.
OLE object exposed for automated access of internal object.
Standard implementation of a controlling IUnknown for an object, to be inherited with other COM inter...
ObjectWindows dynamic-link libraries (DLLs) construct an instance of TModule, which acts as an object...
A linked structure in which each node points to a list of TRegList objects (or TRegList-derived objec...
A registration parameter table, composed of a list of TRegItems.
Object Component Framework (COM encapsulation)
const GUID void ** retObj
IUnknown *(* TComponentFactory)(IUnknown *outer, owl::uint32 options, owl::uint32 id)
TAppDescriptor * GetAppDescriptor()
Object Windows Library (OWLNext Core)
owl::uint16 TLangId
Holds a language ID, a predefined number that represents a base language and dialect.
TModule & GetGlobalModule()
#define DECLARE_FUNC(rparm, ctype, fname)
virtual HRESULT _IFUNC RequestLicKey(BSTR *retKey)=0
virtual HRESULT _IFUNC GetLicInfo(LICINFO *licInfo)=0
virtual HRESULT _IFUNC QueryLicKey(BSTR key)=0
Designed to provide support for localized registration parameters, the TLocaleString Struct defines a...