#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "ole2.h"
#include "olectl.h"
#include "rpcproxy.h"
#include <initguid.h>
#include "scrrun.h"
#include "scrrun_private.h"
#include "wine/debug.h"
Go to the source code of this file.
|
| | WINE_DEFAULT_DEBUG_CHANNEL (scrrun) |
| |
| static struct provideclassinfo * | impl_from_IProvideClassInfo (IProvideClassInfo *iface) |
| |
| static HRESULT WINAPI | scrruncf_QueryInterface (IClassFactory *iface, REFIID riid, LPVOID *ppv) |
| |
| static ULONG WINAPI | scrruncf_AddRef (IClassFactory *iface) |
| |
| static ULONG WINAPI | scrruncf_Release (IClassFactory *iface) |
| |
| static HRESULT WINAPI | scrruncf_LockServer (IClassFactory *iface, BOOL fLock) |
| |
| static HRESULT | load_typelib (void) |
| |
| static HRESULT | get_typeinfo_of_guid (const GUID *guid, ITypeInfo **tinfo) |
| |
| HRESULT | get_typeinfo (tid_t tid, ITypeInfo **typeinfo) |
| |
| static void | release_typelib (void) |
| |
| static HRESULT WINAPI | provideclassinfo_QueryInterface (IProvideClassInfo *iface, REFIID riid, void **obj) |
| |
| static ULONG WINAPI | provideclassinfo_AddRef (IProvideClassInfo *iface) |
| |
| static ULONG WINAPI | provideclassinfo_Release (IProvideClassInfo *iface) |
| |
| static HRESULT WINAPI | provideclassinfo_GetClassInfo (IProvideClassInfo *iface, ITypeInfo **ti) |
| |
| void | init_classinfo (const GUID *guid, IUnknown *outer, struct provideclassinfo *classinfo) |
| |
| BOOL WINAPI | DllMain (HINSTANCE hinst, DWORD reason, LPVOID reserved) |
| |
| HRESULT WINAPI | DllGetClassObject (REFCLSID rclsid, REFIID riid, LPVOID *ppv) |
| |
◆ COBJMACROS
◆ fnCreateInstance
◆ DllGetClassObject()
Definition at line 258 of file scrrun.c.
259{
263 }
267 }
268
271}
#define IsEqualGUID(rguid1, rguid2)
static IClassFactory FileSystemFactory
static IClassFactory DictionaryFactory
#define CLASS_E_CLASSNOTAVAILABLE
◆ DllMain()
Definition at line 237 of file scrrun.c.
238{
240
242 {
245 break;
249 break;
250 }
252}
static WCHAR reason[MAX_STRING_RESOURCE_LEN]
#define DLL_PROCESS_ATTACH
#define DLL_PROCESS_DETACH
BOOL WINAPI DisableThreadLibraryCalls(IN HMODULE hLibModule)
static void release_typelib(void)
◆ get_typeinfo()
Definition at line 148 of file scrrun.c.
149{
151
154
157
162 }
163
165 ITypeInfo_Release(ti);
166 }
167
171}
#define InterlockedCompareExchangePointer
static HRESULT load_typelib(void)
static ITypeInfo * typeinfos[LAST_tid]
◆ get_typeinfo_of_guid()
◆ impl_from_IProvideClassInfo()
◆ init_classinfo()
Definition at line 230 of file scrrun.c.
231{
235}
static const IProvideClassInfoVtbl provideclassinfovtbl
Referenced by create_drive(), create_drivecoll(), create_file(), create_filecoll(), create_folder(), create_foldercoll(), create_textstream(), Dictionary_CreateInstance(), DoOpenPipeStream(), FileSystem_CreateInstance(), WshCollection_Create(), WshEnvironment_Create(), WshExec_create(), WshShellFactory_CreateInstance(), and WshShortcut_Create().
◆ load_typelib()
Definition at line 119 of file scrrun.c.
120{
123
126
129 ERR(
"LoadRegTypeLib failed: %#lx.\n",
hres);
131 }
132
134 ITypeLib_Release(tl);
136}
HRESULT WINAPI LoadRegTypeLib(REFGUID rguid, WORD wVerMajor, WORD wVerMinor, LCID lcid, ITypeLib **ppTLib)
#define LOCALE_SYSTEM_DEFAULT
Referenced by get_typeinfo(), and get_typeinfo_of_guid().
◆ provideclassinfo_AddRef()
Definition at line 202 of file scrrun.c.
203{
205 return IUnknown_AddRef(
This->outer);
206}
static struct provideclassinfo * impl_from_IProvideClassInfo(IProvideClassInfo *iface)
◆ provideclassinfo_GetClassInfo()
Definition at line 214 of file scrrun.c.
215{
217
219
221}
static HRESULT get_typeinfo_of_guid(const GUID *guid, ITypeInfo **tinfo)
◆ provideclassinfo_QueryInterface()
Definition at line 187 of file scrrun.c.
188{
190
192
195 IProvideClassInfo_AddRef(iface);
197 }
198 else
199 return IUnknown_QueryInterface(
This->outer,
riid,
obj);
200}
const GUID IID_IProvideClassInfo
#define IsEqualIID(riid1, riid2)
◆ provideclassinfo_Release()
Definition at line 208 of file scrrun.c.
209{
211 return IUnknown_Release(
This->outer);
212}
◆ release_typelib()
Definition at line 173 of file scrrun.c.
174{
176
178 return;
179
183
185}
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Referenced by DllMain().
◆ scrruncf_AddRef()
Definition at line 64 of file scrrun.c.
65{
66 TRACE(
"(%p)\n", iface);
67 return 2;
68}
◆ scrruncf_LockServer()
Definition at line 76 of file scrrun.c.
77{
78 TRACE(
"(%p)->(%x)\n", iface, fLock);
80}
◆ scrruncf_QueryInterface()
Definition at line 43 of file scrrun.c.
44{
46
48 TRACE(
"(%p)->(IID_IUnknown %p)\n", iface,
ppv);
51 TRACE(
"(%p)->(IID_IClassFactory %p)\n", iface,
ppv);
53 }
54
58 }
59
62}
const GUID IID_IClassFactory
◆ scrruncf_Release()
Definition at line 70 of file scrrun.c.
71{
72 TRACE(
"(%p)\n", iface);
73 return 1;
74}
◆ WINE_DEFAULT_DEBUG_CHANNEL()
| WINE_DEFAULT_DEBUG_CHANNEL |
( |
scrrun |
| ) |
|
◆ dictcf_vtbl
Initial value:=
{
}
HRESULT WINAPI Dictionary_CreateInstance(IClassFactory *factory, IUnknown *outer, REFIID riid, void **ret)
static HRESULT WINAPI scrruncf_LockServer(IClassFactory *iface, BOOL fLock)
static HRESULT WINAPI scrruncf_QueryInterface(IClassFactory *iface, REFIID riid, LPVOID *ppv)
static ULONG WINAPI scrruncf_AddRef(IClassFactory *iface)
static ULONG WINAPI scrruncf_Release(IClassFactory *iface)
Definition at line 91 of file scrrun.c.
◆ DictionaryFactory
◆ FileSystemFactory
◆ provideclassinfovtbl
| const IProvideClassInfoVtbl provideclassinfovtbl |
|
static |
Initial value:= {
}
static ULONG WINAPI provideclassinfo_Release(IProvideClassInfo *iface)
static HRESULT WINAPI provideclassinfo_QueryInterface(IProvideClassInfo *iface, REFIID riid, void **obj)
static ULONG WINAPI provideclassinfo_AddRef(IProvideClassInfo *iface)
static HRESULT WINAPI provideclassinfo_GetClassInfo(IProvideClassInfo *iface, ITypeInfo **ti)
Definition at line 223 of file scrrun.c.
Referenced by init_classinfo().
◆ scrruncf_vtbl
Initial value:=
{
}
HRESULT WINAPI FileSystem_CreateInstance(IClassFactory *iface, IUnknown *outer, REFIID riid, void **ppv)
Definition at line 82 of file scrrun.c.
◆ tid_ids
Initial value:= {
&IID_IDictionary,
&IID_IDrive,
&IID_IDriveCollection,
&IID_IFile,
&IID_IFileCollection,
&IID_IFileSystem3,
&IID_IFolder,
&IID_IFolderCollection,
&IID_ITextStream
}
Definition at line 106 of file scrrun.c.
Referenced by get_typeinfo().
◆ typeinfos
◆ typelib