ReactOS  0.4.14-dev-583-g2a1ba2c
wshom_private.h File Reference
#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "ole2.h"
#include "olectl.h"
Include dependency graph for wshom_private.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  provideclassinfo
 

Macros

#define COBJMACROS
 

Typedefs

typedef enum tid_t tid_t
 

Enumerations

enum  tid_t {
  LAST_tid, LAST_tid, Database_tid, Installer_tid,
  Record_tid, Session_tid, StringList_tid, SummaryInfo_tid,
  View_tid, LAST_tid, NULL_tid, IXMLDOMAttribute_tid,
  IXMLDOMCDATASection_tid, IXMLDOMComment_tid, IXMLDOMDocument_tid, IXMLDOMDocument2_tid,
  IXMLDOMDocument3_tid, IXMLDOMDocumentFragment_tid, IXMLDOMDocumentType_tid, IXMLDOMElement_tid,
  IXMLDOMEntityReference_tid, IXMLDOMImplementation_tid, IXMLDOMNamedNodeMap_tid, IXMLDOMNode_tid,
  IXMLDOMNodeList_tid, IXMLDOMParseError2_tid, IXMLDOMProcessingInstruction_tid, IXMLDOMSchemaCollection_tid,
  IXMLDOMSchemaCollection2_tid, IXMLDOMSelection_tid, IXMLDOMText_tid, IXMLElement_tid,
  IXMLDocument_tid, IXMLHTTPRequest_tid, IXSLProcessor_tid, IXSLTemplate_tid,
  IVBSAXAttributes_tid, IVBSAXContentHandler_tid, IVBSAXDeclHandler_tid, IVBSAXDTDHandler_tid,
  IVBSAXEntityResolver_tid, IVBSAXErrorHandler_tid, IVBSAXLexicalHandler_tid, IVBSAXLocator_tid,
  IVBSAXXMLFilter_tid, IVBSAXXMLReader_tid, IMXAttributes_tid, IMXReaderControl_tid,
  IMXWriter_tid, IVBMXNamespaceManager_tid, IServerXMLHTTPRequest_tid, LAST_tid,
  NULL_tid, ITextDocument_tid, ITextRange_tid, ITextSelection_tid,
  ITextFont_tid, ITextPara_tid, LAST_tid, NULL_tid,
  IDictionary_tid, IDrive_tid, IDriveCollection_tid, IFile_tid,
  IFileCollection_tid, IFileSystem3_tid, IFolder_tid, IFolderCollection_tid,
  ITextStream_tid, LAST_tid, NULL_tid, IWshCollection_tid,
  IWshEnvironment_tid, IWshExec_tid, IWshShell3_tid, IWshShortcut_tid,
  LAST_tid
}
 

Functions

HRESULT get_typeinfo (tid_t tid, ITypeInfo **typeinfo) DECLSPEC_HIDDEN
 
void init_classinfo (const GUID *guid, IUnknown *outer, struct provideclassinfo *classinfo) DECLSPEC_HIDDEN
 
HRESULT WINAPI WshShellFactory_CreateInstance (IClassFactory *, IUnknown *, REFIID, void **) DECLSPEC_HIDDEN
 

Macro Definition Documentation

◆ COBJMACROS

#define COBJMACROS

Definition at line 23 of file wshom_private.h.

Typedef Documentation

◆ tid_t

typedef enum tid_t tid_t

Enumeration Type Documentation

◆ tid_t

Enumerator
LAST_tid 
LAST_tid 
Database_tid 
Installer_tid 
Record_tid 
Session_tid 
StringList_tid 
SummaryInfo_tid 
View_tid 
LAST_tid 
NULL_tid 
IXMLDOMAttribute_tid 
IXMLDOMCDATASection_tid 
IXMLDOMComment_tid 
IXMLDOMDocument_tid 
IXMLDOMDocument2_tid 
IXMLDOMDocument3_tid 
IXMLDOMDocumentFragment_tid 
IXMLDOMDocumentType_tid 
IXMLDOMElement_tid 
IXMLDOMEntityReference_tid 
IXMLDOMImplementation_tid 
IXMLDOMNamedNodeMap_tid 
IXMLDOMNode_tid 
IXMLDOMNodeList_tid 
IXMLDOMParseError2_tid 
IXMLDOMProcessingInstruction_tid 
IXMLDOMSchemaCollection_tid 
IXMLDOMSchemaCollection2_tid 
IXMLDOMSelection_tid 
IXMLDOMText_tid 
IXMLElement_tid 
IXMLDocument_tid 
IXMLHTTPRequest_tid 
IXSLProcessor_tid 
IXSLTemplate_tid 
IVBSAXAttributes_tid 
IVBSAXContentHandler_tid 
IVBSAXDeclHandler_tid 
IVBSAXDTDHandler_tid 
IVBSAXEntityResolver_tid 
IVBSAXErrorHandler_tid 
IVBSAXLexicalHandler_tid 
IVBSAXLocator_tid 
IVBSAXXMLFilter_tid 
IVBSAXXMLReader_tid 
IMXAttributes_tid 
IMXReaderControl_tid 
IMXWriter_tid 
IVBMXNamespaceManager_tid 
IServerXMLHTTPRequest_tid 
LAST_tid 
NULL_tid 
ITextDocument_tid 
ITextRange_tid 
ITextSelection_tid 
ITextFont_tid 
ITextPara_tid 
LAST_tid 
NULL_tid 
IDictionary_tid 
IDrive_tid 
IDriveCollection_tid 
IFile_tid 
IFileCollection_tid 
IFileSystem3_tid 
IFolder_tid 
IFolderCollection_tid 
ITextStream_tid 
LAST_tid 
NULL_tid 
IWshCollection_tid 
IWshEnvironment_tid 
IWshExec_tid 
IWshShell3_tid 
IWshShortcut_tid 
LAST_tid 

Definition at line 31 of file wshom_private.h.

Function Documentation

◆ get_typeinfo()

HRESULT get_typeinfo ( tid_t  tid,
ITypeInfo **  typeinfo 
)

Definition at line 61 of file ieframe_main.c.

62 {
63  HRESULT hres;
64 
65  if(!typelib)
66  hres = load_typelib();
67  if(!typelib)
68  return hres;
69 
70  if(!typeinfos[tid]) {
71  ITypeInfo *ti;
72 
73  hres = ITypeLib_GetTypeInfoOfGuid(typelib, tid_ids[tid], &ti);
74  if(FAILED(hres)) {
75  ERR("GetTypeInfoOfGuid(%s) failed: %08x\n", debugstr_guid(tid_ids[tid]), hres);
76  return hres;
77  }
78 
80  ITypeInfo_Release(ti);
81  }
82 
84  return S_OK;
85 }
static REFIID tid_ids[]
Definition: ieframe_main.c:37
static ITypeLib * typelib
Definition: ieframe_main.c:34
static ITypeInfo * typeinfos[LAST_tid]
Definition: ieframe_main.c:35
#define InterlockedCompareExchangePointer
Definition: interlocked.h:129
smooth NULL
Definition: ftsmooth.c:416
#define debugstr_guid
Definition: kernel32.h:35
HRESULT hres
Definition: protocol.c:465
LONG HRESULT
Definition: typedefs.h:77
static HRESULT load_typelib(void)
Definition: ieframe_main.c:45
#define ERR(fmt,...)
Definition: debug.h:109
#define S_OK
Definition: intsafe.h:59
static TfClientId tid

Referenced by AutomationObject_GetIDsOfNames(), AutomationObject_GetTypeInfo(), AutomationObject_Invoke(), DispatchEx_GetTypeInfo(), DispatchEx_InvokeEx(), preprocess_dispex_data(), ProvideMultipleClassInfo_GetClassInfo(), and ProvideMultipleClassInfo_GetInfoOfIndex().

◆ init_classinfo()

void init_classinfo ( const GUID guid,
IUnknown outer,
struct provideclassinfo classinfo 
)

Definition at line 232 of file scrrun.c.

233 {
234  classinfo->IProvideClassInfo_iface.lpVtbl = &provideclassinfovtbl;
235  classinfo->outer = outer;
236  classinfo->guid = guid;
237 }
classinfo
Definition: clsfactory.c:43
static const IProvideClassInfoVtbl provideclassinfovtbl
Definition: scrrun.c:225
const GUID * guid
IUnknown * outer

Referenced by create_drive(), create_drivecoll(), create_file(), create_filecoll(), create_folder(), create_foldercoll(), create_textstream(), Dictionary_CreateInstance(), FileSystem_CreateInstance(), WshCollection_Create(), WshEnvironment_Create(), WshExec_create(), WshShellFactory_CreateInstance(), and WshShortcut_Create().

◆ WshShellFactory_CreateInstance()

HRESULT WINAPI WshShellFactory_CreateInstance ( IClassFactory ,
IUnknown ,
REFIID  ,
void **   
)

Definition at line 1816 of file shell.c.

1817 {
1818  TRACE("(%p %s %p)\n", outer, debugstr_guid(riid), ppv);
1819 
1822  return IWshShell3_QueryInterface(&WshShell3.IWshShell3_iface, riid, ppv);
1823 }
struct provideclassinfo classinfo
Definition: shell.c:37
static WshShellImpl WshShell3
Definition: shell.c:40
REFIID riid
Definition: precomp.h:44
REFIID LPVOID * ppv
Definition: atlbase.h:39
#define debugstr_guid
Definition: kernel32.h:35
#define TRACE(s)
Definition: solgame.cpp:4
static const IWshShell3Vtbl WshShell3Vtbl
Definition: shell.c:1791
void init_classinfo(const GUID *guid, IUnknown *outer, struct provideclassinfo *classinfo)
Definition: scrrun.c:232
IUnknown * outer
IWshShell3 IWshShell3_iface
Definition: shell.c:38