ext/win32ole/win32ole.c File Reference

#include "ruby/ruby.h"
#include "ruby/st.h"
#include "ruby/encoding.h"
#include <ctype.h>
#include <windows.h>
#include <ocidl.h>
#include <olectl.h>
#include <ole2.h>
#include <stdlib.h>
#include <math.h>
#include <varargs.h>
#include <objidl.h>

Go to the source code of this file.

Data Structures

struct  IEventSink
struct  IEventSinkVtbl
struct  tagIEVENTSINKOBJ
struct  oledata
struct  oletypelibdata
struct  oletypedata
struct  olemethoddata
struct  olevariabledata
struct  oleparamdata
struct  oleeventdata
struct  oleparam
struct  olevariantdata

Defines

#define GNUC_OLDER_3_4_4
#define va_init_list(a, b)   va_start(a)
#define DOUT   fprintf(stderr,"[%d]\n",__LINE__)
#define DOUTS(x)   fprintf(stderr,"[%d]:" #x "=%s\n",__LINE__,x)
#define DOUTMSG(x)   fprintf(stderr, "[%d]:" #x "\n",__LINE__)
#define DOUTI(x)   fprintf(stderr, "[%ld]:" #x "=%d\n",__LINE__,x)
#define DOUTD(x)   fprintf(stderr, "[%d]:" #x "=%f\n",__LINE__,x)
#define V_UNION1(X, Y)   ((X)->Y)
#define V_I1REF(X)   V_UNION(X, pcVal)
#define V_UI2REF(X)   V_UNION(X, puiVal)
#define V_INT(X)   V_UNION(X, intVal)
#define V_INTREF(X)   V_UNION(X, pintVal)
#define V_UINT(X)   V_UNION(X, uintVal)
#define V_UINTREF(X)   V_UNION(X, puintVal)
#define OLE_RELEASE(X)   (X) ? ((X)->lpVtbl->Release(X)) : 0
#define OLE_ADDREF(X)   (X) ? ((X)->lpVtbl->AddRef(X)) : 0
#define OLE_GET_TYPEATTR(X, Y)   ((X)->lpVtbl->GetTypeAttr((X), (Y)))
#define OLE_RELEASE_TYPEATTR(X, Y)   ((X)->lpVtbl->ReleaseTypeAttr((X), (Y)))
#define OLE_FREE(x)
#define OLEData_Get_Struct(obj, pole)
#define I8_2_NUM   INT2NUM
#define UI8_2_NUM   UINT2NUM
#define NUM2I8   NUM2INT
#define NUM2UI8   NUM2UINT
#define WC2VSTR(x)   ole_wc2vstr((x), TRUE)
#define WIN32OLE_VERSION   "1.5.5"
#define g_ole_initialized   (BOOL)TlsGetValue(g_ole_initialized_key)
#define g_ole_initialized_init()   (g_ole_initialized_key = TlsAlloc())
#define g_ole_initialized_set(val)   TlsSetValue(g_ole_initialized_key, (void*)(val))
#define pIMultiLanguage   NULL
#define ENC_MACHING_CP(enc, encname, cp)   if(strcasecmp(rb_enc_name((enc)),(encname)) == 0) return cp
#define load_conv_function51932()   failed_load_conv51932()
#define conv_51932(cp)   ((cp) == 51932 && (load_conv_function51932(), 1))

Typedefs

typedef IUnknown DWORD
typedef IUnknown COSERVERINFO DWORD
typedef IUnknown COSERVERINFO
MULTI_QI *typedef 
HWND (WINAPI FNHTMLHELP)(HWND hwndCaller
typedef IUnknown COSERVERINFO
MULTI_QI *typedef LPCSTR 
pszFile
typedef IUnknown COSERVERINFO
MULTI_QI *typedef LPCSTR UINT 
uCommand
typedef IUnknown COSERVERINFO
MULTI_QI *typedef LPCSTR UINT
DWORD 
dwData
typedef BOOL( FNENUMSYSEMCODEPAGES )(CODEPAGE_ENUMPROC, DWORD)
typedef struct IEventSinkPEVENTSINK
typedef IEventSinkVtbl IEventSinkVtbl
typedef tagIEVENTSINKOBJ IEVENTSINKOBJ
typedef tagIEVENTSINKOBJPIEVENTSINKOBJ

Functions

typedef HRESULT (STDAPICALLTYPE FNCOCREATEINSTANCEEX)(REFCLSID
static HRESULT (STDMETHODCALLTYPE QueryInterface)(IDispatch __RPC_FAR *
static ULONG (STDMETHODCALLTYPE AddRef)(IDispatch __RPC_FAR *This)
static IDispatch * val2dispatch (VALUE val)
static double rbtime2vtdate (VALUE tmobj)
static VALUE vtdate2rbtime (double date)
static rb_encodingole_cp2encoding (UINT cp)
static UINT ole_encoding2cp (rb_encoding *enc)
 NORETURN (static void failed_load_conv51932(void))
static UINT ole_init_cp (void)
static char * ole_wc2mb (LPWSTR pw)
static VALUE ole_hresult2msg (HRESULT hr)
static void ole_freeexceptinfo (EXCEPINFO *pExInfo)
static VALUE ole_excepinfo2msg (EXCEPINFO *pExInfo)
static void ole_raise (HRESULT hr, VALUE ecs, const char *fmt,...)
static void ole_initialize (void)
static void ole_msg_loop (void)
static void ole_free (struct oledata *pole)
static void oletypelib_free (struct oletypelibdata *poletypelib)
static void oletype_free (struct oletypedata *poletype)
static void olemethod_free (struct olemethoddata *polemethod)
static void olevariable_free (struct olevariabledata *polevar)
static void oleparam_free (struct oleparamdata *pole)
static LPWSTR ole_vstr2wc (VALUE vstr)
static LPWSTR ole_mb2wc (char *pm, int len)
static VALUE ole_wc2vstr (LPWSTR pw, BOOL isfree)
static VALUE ole_ary_m_entry (VALUE val, long *pid)
static void * get_ptr_of_variant (VARIANT *pvar)
static VALUE is_all_index_under (long *pid, long *pub, long dim)
static void ole_set_safe_array (long n, SAFEARRAY *psa, long *pid, long *pub, VALUE val, long dim, VARTYPE vt)
static long dimension (VALUE val)
static long ary_len_of_dim (VALUE ary, long dim)
static HRESULT ole_val_ary2variant_ary (VALUE val, VARIANT *var, VARTYPE vt)
static void ole_val2variant (VALUE val, VARIANT *var)
static void ole_val2variant_ex (VALUE val, VARIANT *var, VARTYPE vt)
static void ole_val2ptr_variant (VALUE val, VARIANT *var)
static void ole_set_byref (VARIANT *realvar, VARIANT *var, VARTYPE vt)
static void ole_val2olevariantdata (VALUE val, VARTYPE vt, struct olevariantdata *pvar)
static void ole_val2variant2 (VALUE val, VARIANT *var)
static VALUE make_inspect (const char *class_name, VALUE detail)
static VALUE default_inspect (VALUE self, const char *class_name)
static VALUE ole_set_member (VALUE self, IDispatch *dispatch)
static VALUE fole_s_allocate (VALUE klass)
static VALUE create_win32ole_object (VALUE klass, IDispatch *pDispatch, int argc, VALUE *argv)
static VALUE ary_new_dim (VALUE myary, long *pid, long *plb, long dim)
static void ary_store_dim (VALUE myary, long *pid, long *plb, long dim, VALUE val)
static VALUE ole_variant2val (VARIANT *pvar)
static LONG reg_open_key (HKEY hkey, const char *name, HKEY *phkey)
static LONG reg_open_vkey (HKEY hkey, VALUE key, HKEY *phkey)
static VALUE reg_enum_key (HKEY hkey, DWORD i)
static VALUE reg_get_val (HKEY hkey, const char *subkey)
static VALUE reg_get_typelib_file_path (HKEY hkey)
static VALUE typelib_file_from_clsid (VALUE ole)
static VALUE typelib_file_from_typelib (VALUE ole)
static VALUE typelib_file (VALUE ole)
static void ole_const_load (ITypeLib *pTypeLib, VALUE klass, VALUE self)
static HRESULT clsid_from_remote (VALUE host, VALUE com, CLSID *pclsid)
static VALUE ole_create_dcom (VALUE self, VALUE ole, VALUE host, VALUE others)
static VALUE ole_bind_obj (VALUE moniker, int argc, VALUE *argv, VALUE self)
static VALUE fole_s_connect (int argc, VALUE *argv, VALUE self)
static VALUE fole_s_const_load (int argc, VALUE *argv, VALUE self)
static VALUE ole_types_from_typelib (ITypeLib *pTypeLib, VALUE classes)
static ULONG reference_count (struct oledata *pole)
static VALUE fole_s_reference_count (VALUE self, VALUE obj)
static VALUE fole_s_free (VALUE self, VALUE obj)
static HWND ole_show_help (VALUE helpfile, VALUE helpcontext)
static VALUE fole_s_show_help (int argc, VALUE *argv, VALUE self)
static VALUE fole_s_get_code_page (VALUE self)
static BOOL CALLBACK installed_code_page_proc (LPTSTR str)
static BOOL code_page_installed (UINT cp)
static VALUE fole_s_set_code_page (VALUE self, VALUE vcp)
static VALUE fole_s_get_locale (VALUE self)
static BOOL CALLBACK installed_lcid_proc (LPTSTR str)
static BOOL lcid_installed (LCID lcid)
static VALUE fole_s_set_locale (VALUE self, VALUE vlcid)
static VALUE fole_s_create_guid (VALUE self)
static VALUE fole_s_ole_initialize (VALUE self)
static VALUE fole_s_ole_uninitialize (VALUE self)
static VALUE fole_initialize (int argc, VALUE *argv, VALUE self)
static VALUE hash2named_arg (RB_BLOCK_CALL_FUNC_ARGLIST(pair, op))
static VALUE set_argv (VARIANTARG *realargs, unsigned int beg, unsigned int end)
static VALUE ole_invoke (int argc, VALUE *argv, VALUE self, USHORT wFlags, BOOL is_bracket)
static VALUE fole_invoke (int argc, VALUE *argv, VALUE self)
static VALUE ole_invoke2 (VALUE self, VALUE dispid, VALUE args, VALUE types, USHORT dispkind)
static VALUE fole_invoke2 (VALUE self, VALUE dispid, VALUE args, VALUE types)
static VALUE fole_getproperty2 (VALUE self, VALUE dispid, VALUE args, VALUE types)
static VALUE fole_setproperty2 (VALUE self, VALUE dispid, VALUE args, VALUE types)
static VALUE fole_setproperty_with_bracket (int argc, VALUE *argv, VALUE self)
static VALUE fole_setproperty (int argc, VALUE *argv, VALUE self)
static VALUE fole_getproperty_with_bracket (int argc, VALUE *argv, VALUE self)
static VALUE ole_propertyput (VALUE self, VALUE property, VALUE value)
static VALUE fole_free (VALUE self)
static VALUE ole_each_sub (VALUE pEnumV)
static VALUE ole_ienum_free (VALUE pEnumV)
static VALUE fole_each (VALUE self)
static VALUE fole_missing (int argc, VALUE *argv, VALUE self)
static VALUE ole_method_sub (VALUE self, ITypeInfo *pOwnerTypeInfo, ITypeInfo *pTypeInfo, VALUE name)
static VALUE olemethod_from_typeinfo (VALUE self, ITypeInfo *pTypeInfo, VALUE name)
static VALUE ole_methods_sub (ITypeInfo *pOwnerTypeInfo, ITypeInfo *pTypeInfo, VALUE methods, int mask)
static VALUE ole_methods_from_typeinfo (ITypeInfo *pTypeInfo, int mask)
static HRESULT typeinfo_from_ole (struct oledata *pole, ITypeInfo **ppti)
static VALUE ole_methods (VALUE self, int mask)
static VALUE fole_methods (VALUE self)
static VALUE fole_get_methods (VALUE self)
static VALUE fole_put_methods (VALUE self)
static VALUE fole_func_methods (VALUE self)
static VALUE ole_type_from_itypeinfo (ITypeInfo *pTypeInfo)
static VALUE fole_type (VALUE self)
static VALUE ole_typelib_from_itypeinfo (ITypeInfo *pTypeInfo)
static VALUE fole_typelib (VALUE self)
static VALUE fole_query_interface (VALUE self, VALUE str_iid)
static VALUE fole_respond_to (VALUE self, VALUE method)
static HRESULT ole_docinfo_from_type (ITypeInfo *pTypeInfo, BSTR *name, BSTR *helpstr, DWORD *helpcontext, BSTR *helpfile)
static VALUE ole_usertype2val (ITypeInfo *pTypeInfo, TYPEDESC *pTypeDesc, VALUE typedetails)
static VALUE ole_ptrtype2val (ITypeInfo *pTypeInfo, TYPEDESC *pTypeDesc, VALUE typedetails)
static VALUE ole_typedesc2val (ITypeInfo *pTypeInfo, TYPEDESC *pTypeDesc, VALUE typedetails)
static VALUE fole_method_help (VALUE self, VALUE cmdname)
static VALUE fole_activex_initialize (VALUE self)
static VALUE foletype_s_ole_classes (VALUE self, VALUE typelib)
static VALUE foletype_s_typelibs (VALUE self)
static VALUE foletype_s_progids (VALUE self)
static VALUE foletype_s_allocate (VALUE klass)
static VALUE oletype_set_member (VALUE self, ITypeInfo *pTypeInfo, VALUE name)
static VALUE oleclass_from_typelib (VALUE self, ITypeLib *pTypeLib, VALUE oleclass)
static VALUE oletypelib_set_member (VALUE self, ITypeLib *pTypeLib)
static ITypeLib * oletypelib_get_typelib (VALUE self)
static void oletypelib_get_libattr (ITypeLib *pTypeLib, TLIBATTR **ppTLibAttr)
static VALUE foletypelib_s_typelibs (VALUE self)
static VALUE make_version_str (VALUE major, VALUE minor)
static VALUE oletypelib_search_registry2 (VALUE self, VALUE args)
static VALUE oletypelib_search_registry (VALUE self, VALUE typelib)
static VALUE foletypelib_s_allocate (VALUE klass)
static VALUE foletypelib_initialize (VALUE self, VALUE args)
static VALUE foletypelib_guid (VALUE self)
static VALUE foletypelib_name (VALUE self)
static VALUE foletypelib_version (VALUE self)
static VALUE foletypelib_major_version (VALUE self)
static VALUE foletypelib_minor_version (VALUE self)
static VALUE oletypelib_path (VALUE guid, VALUE version)
static HRESULT oletypelib_from_guid (VALUE guid, VALUE version, ITypeLib **ppTypeLib)
static VALUE foletypelib_path (VALUE self)
static VALUE foletypelib_visible (VALUE self)
static VALUE foletypelib_library_name (VALUE self)
static VALUE foletypelib_ole_types (VALUE self)
static VALUE foletypelib_inspect (VALUE self)
static VALUE foletype_initialize (VALUE self, VALUE typelib, VALUE oleclass)
static VALUE foletype_name (VALUE self)
static VALUE ole_ole_type (ITypeInfo *pTypeInfo)
static VALUE foletype_ole_type (VALUE self)
static VALUE ole_type_guid (ITypeInfo *pTypeInfo)
static VALUE foletype_guid (VALUE self)
static VALUE ole_type_progid (ITypeInfo *pTypeInfo)
static VALUE foletype_progid (VALUE self)
static VALUE ole_type_visible (ITypeInfo *pTypeInfo)
static VALUE foletype_visible (VALUE self)
static VALUE ole_type_major_version (ITypeInfo *pTypeInfo)
static VALUE foletype_major_version (VALUE self)
static VALUE ole_type_minor_version (ITypeInfo *pTypeInfo)
static VALUE foletype_minor_version (VALUE self)
static VALUE ole_type_typekind (ITypeInfo *pTypeInfo)
static VALUE foletype_typekind (VALUE self)
static VALUE ole_type_helpstring (ITypeInfo *pTypeInfo)
static VALUE foletype_helpstring (VALUE self)
static VALUE ole_type_src_type (ITypeInfo *pTypeInfo)
static VALUE foletype_src_type (VALUE self)
static VALUE ole_type_helpfile (ITypeInfo *pTypeInfo)
static VALUE foletype_helpfile (VALUE self)
static VALUE ole_type_helpcontext (ITypeInfo *pTypeInfo)
static VALUE foletype_helpcontext (VALUE self)
static VALUE foletype_ole_typelib (VALUE self)
static VALUE ole_type_impl_ole_types (ITypeInfo *pTypeInfo, int implflags)
static VALUE foletype_impl_ole_types (VALUE self)
static VALUE foletype_source_ole_types (VALUE self)
static VALUE foletype_default_event_sources (VALUE self)
static VALUE foletype_default_ole_types (VALUE self)
static VALUE foletype_inspect (VALUE self)
static VALUE ole_variables (ITypeInfo *pTypeInfo)
static VALUE foletype_variables (VALUE self)
static VALUE foletype_methods (VALUE self)
static VALUE folevariable_name (VALUE self)
static VALUE ole_variable_ole_type (ITypeInfo *pTypeInfo, UINT var_index)
static VALUE folevariable_ole_type (VALUE self)
static VALUE ole_variable_ole_type_detail (ITypeInfo *pTypeInfo, UINT var_index)
static VALUE folevariable_ole_type_detail (VALUE self)
static VALUE ole_variable_value (ITypeInfo *pTypeInfo, UINT var_index)
static VALUE folevariable_value (VALUE self)
static VALUE ole_variable_visible (ITypeInfo *pTypeInfo, UINT var_index)
static VALUE folevariable_visible (VALUE self)
static VALUE ole_variable_kind (ITypeInfo *pTypeInfo, UINT var_index)
static VALUE folevariable_variable_kind (VALUE self)
static VALUE ole_variable_varkind (ITypeInfo *pTypeInfo, UINT var_index)
static VALUE folevariable_varkind (VALUE self)
static VALUE folevariable_inspect (VALUE self)
static VALUE olemethod_set_member (VALUE self, ITypeInfo *pTypeInfo, ITypeInfo *pOwnerTypeInfo, int index, VALUE name)
static VALUE folemethod_s_allocate (VALUE klass)
static VALUE folemethod_initialize (VALUE self, VALUE oletype, VALUE method)
static VALUE folemethod_name (VALUE self)
static VALUE ole_method_return_type (ITypeInfo *pTypeInfo, UINT method_index)
static VALUE folemethod_return_type (VALUE self)
static VALUE ole_method_return_vtype (ITypeInfo *pTypeInfo, UINT method_index)
static VALUE folemethod_return_vtype (VALUE self)
static VALUE ole_method_return_type_detail (ITypeInfo *pTypeInfo, UINT method_index)
static VALUE folemethod_return_type_detail (VALUE self)
static VALUE ole_method_invkind (ITypeInfo *pTypeInfo, UINT method_index)
static VALUE ole_method_invoke_kind (ITypeInfo *pTypeInfo, UINT method_index)
static VALUE folemethod_invkind (VALUE self)
static VALUE folemethod_invoke_kind (VALUE self)
static VALUE ole_method_visible (ITypeInfo *pTypeInfo, UINT method_index)
static VALUE folemethod_visible (VALUE self)
static VALUE ole_method_event (ITypeInfo *pTypeInfo, UINT method_index, VALUE method_name)
static VALUE folemethod_event (VALUE self)
static VALUE folemethod_event_interface (VALUE self)
static HRESULT ole_method_docinfo_from_type (ITypeInfo *pTypeInfo, UINT method_index, BSTR *name, BSTR *helpstr, DWORD *helpcontext, BSTR *helpfile)
static VALUE ole_method_helpstring (ITypeInfo *pTypeInfo, UINT method_index)
static VALUE folemethod_helpstring (VALUE self)
static VALUE ole_method_helpfile (ITypeInfo *pTypeInfo, UINT method_index)
static VALUE folemethod_helpfile (VALUE self)
static VALUE ole_method_helpcontext (ITypeInfo *pTypeInfo, UINT method_index)
static VALUE folemethod_helpcontext (VALUE self)
static VALUE ole_method_dispid (ITypeInfo *pTypeInfo, UINT method_index)
static VALUE folemethod_dispid (VALUE self)
static VALUE ole_method_offset_vtbl (ITypeInfo *pTypeInfo, UINT method_index)
static VALUE folemethod_offset_vtbl (VALUE self)
static VALUE ole_method_size_params (ITypeInfo *pTypeInfo, UINT method_index)
static VALUE folemethod_size_params (VALUE self)
static VALUE ole_method_size_opt_params (ITypeInfo *pTypeInfo, UINT method_index)
static VALUE folemethod_size_opt_params (VALUE self)
static VALUE ole_method_params (ITypeInfo *pTypeInfo, UINT method_index)
static VALUE folemethod_params (VALUE self)
static VALUE folemethod_inspect (VALUE self)
static VALUE foleparam_s_allocate (VALUE klass)
static VALUE oleparam_ole_param_from_index (VALUE self, ITypeInfo *pTypeInfo, UINT method_index, int param_index)
static VALUE oleparam_ole_param (VALUE self, VALUE olemethod, int n)
static VALUE foleparam_initialize (VALUE self, VALUE olemethod, VALUE n)
static VALUE foleparam_name (VALUE self)
static VALUE ole_param_ole_type (ITypeInfo *pTypeInfo, UINT method_index, UINT index)
static VALUE foleparam_ole_type (VALUE self)
static VALUE ole_param_ole_type_detail (ITypeInfo *pTypeInfo, UINT method_index, UINT index)
static VALUE foleparam_ole_type_detail (VALUE self)
static VALUE ole_param_flag_mask (ITypeInfo *pTypeInfo, UINT method_index, UINT index, USHORT mask)
static VALUE foleparam_input (VALUE self)
static VALUE foleparam_output (VALUE self)
static VALUE foleparam_optional (VALUE self)
static VALUE foleparam_retval (VALUE self)
static VALUE ole_param_default (ITypeInfo *pTypeInfo, UINT method_index, UINT index)
static VALUE foleparam_default (VALUE self)
static VALUE foleparam_inspect (VALUE self)
static long ole_search_event_at (VALUE ary, VALUE ev)
static VALUE ole_search_event (VALUE ary, VALUE ev, BOOL *is_default)
static VALUE ole_search_handler_method (VALUE handler, VALUE ev, BOOL *is_default_handler)
static void ole_delete_event (VALUE ary, VALUE ev)
static void hash2ptr_dispparams (VALUE hash, ITypeInfo *pTypeInfo, DISPID dispid, DISPPARAMS *pdispparams)
static VALUE hash2result (VALUE hash)
static void ary2ptr_dispparams (VALUE ary, DISPPARAMS *pdispparams)
static VALUE exec_callback (VALUE arg)
static VALUE rescue_callback (VALUE arg)
static HRESULT find_iid (VALUE ole, char *pitf, IID *piid, ITypeInfo **ppTypeInfo)
static HRESULT find_coclass (ITypeInfo *pTypeInfo, TYPEATTR *pTypeAttr, ITypeInfo **pTypeInfo2, TYPEATTR **pTypeAttr2)
static HRESULT find_default_source_from_typeinfo (ITypeInfo *pTypeInfo, TYPEATTR *pTypeAttr, ITypeInfo **ppTypeInfo)
static HRESULT find_default_source (VALUE ole, IID *piid, ITypeInfo **ppTypeInfo)
static void ole_event_free (struct oleeventdata *poleev)
static VALUE fev_s_allocate (VALUE klass)
static VALUE ev_advise (int argc, VALUE *argv, VALUE self)
static VALUE fev_initialize (int argc, VALUE *argv, VALUE self)
static VALUE fev_s_msg_loop (VALUE klass)
static void add_event_call_back (VALUE obj, VALUE event, VALUE data)
static VALUE ev_on_event (int argc, VALUE *argv, VALUE self, VALUE is_ary_arg)
static VALUE fev_on_event (int argc, VALUE *argv, VALUE self)
static VALUE fev_on_event_with_outargs (int argc, VALUE *argv, VALUE self)
static VALUE fev_off_event (int argc, VALUE *argv, VALUE self)
static VALUE fev_unadvise (VALUE self)
static VALUE fev_set_handler (VALUE self, VALUE val)
static VALUE fev_get_handler (VALUE self)
static VALUE evs_push (VALUE ev)
static VALUE evs_delete (long i)
static VALUE evs_entry (long i)
static VALUE evs_length (void)
static void olevariant_free (struct olevariantdata *pvar)
static VALUE folevariant_s_allocate (VALUE klass)
static VALUE folevariant_s_array (VALUE klass, VALUE dims, VALUE vvt)
static void check_type_val2variant (VALUE val)
static VALUE folevariant_initialize (VALUE self, VALUE args)
static long * ary2safe_array_index (int ary_size, VALUE *ary, SAFEARRAY *psa)
static void unlock_safe_array (SAFEARRAY *psa)
static SAFEARRAY * get_locked_safe_array (VALUE val)
static VALUE folevariant_ary_aref (int argc, VALUE *argv, VALUE self)
static VOID * val2variant_ptr (VALUE val, VARIANT *var, VARTYPE vt)
static VALUE folevariant_ary_aset (int argc, VALUE *argv, VALUE self)
static VALUE folevariant_value (VALUE self)
static VALUE folevariant_vartype (VALUE self)
static VALUE folevariant_set_value (VALUE self, VALUE val)
static void init_enc2cp (void)
static void free_enc2cp (void)
static char * ole_wc2mb_alloc (LPWSTR pw, char *(alloc)(UINT size, void *arg), void *arg)
static char * ole_alloc_str (UINT size, void *arg)
void ole_uninitialize (void)
static void ole_uninitialize_hook (rb_event_flag_t evflag, VALUE data, VALUE self, ID mid, VALUE klass)
static char * ole_alloc_vstr (UINT size, void *arg)
static VALUE reg_get_val2 (HKEY hkey, const char *subkey)
void EVENTSINK_Destructor (PIEVENTSINKOBJ)
STDMETHODIMP EVENTSINK_QueryInterface (PEVENTSINK pEV, REFIID iid, LPVOID *ppv)
 EVENTSINK_AddRef (PEVENTSINK pEV)
 STDMETHODIMP_ (ULONG)
STDMETHODIMP EVENTSINK_GetTypeInfoCount (PEVENTSINK pEV, UINT *pct)
STDMETHODIMP EVENTSINK_GetTypeInfo (PEVENTSINK pEV, UINT info, LCID lcid, ITypeInfo **pInfo)
STDMETHODIMP EVENTSINK_GetIDsOfNames (PEVENTSINK pEventSink, REFIID riid, OLECHAR **szNames, UINT cNames, LCID lcid, DISPID *pDispID)
STDMETHODIMP EVENTSINK_Invoke (PEVENTSINK pEventSink, DISPID dispid, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pdispparams, VARIANT *pvarResult, EXCEPINFO *pexcepinfo, UINT *puArgErr)
PIEVENTSINKOBJ EVENTSINK_Constructor ()
void Init_win32ole (void)

Variables

VALUE cWIN32OLE
VALUE cWIN32OLE_TYPELIB
VALUE cWIN32OLE_TYPE
VALUE cWIN32OLE_VARIABLE
VALUE cWIN32OLE_METHOD
VALUE cWIN32OLE_PARAM
VALUE cWIN32OLE_EVENT
VALUE cWIN32OLE_VARIANT
VALUE eWIN32OLERuntimeError
VALUE mWIN32OLE_VARIANT
VALUE cWIN32OLE_PROPERTY
static VALUE ary_ole_event
static ID id_events
static volatile DWORD g_ole_initialized_key = TLS_OUT_OF_INDEXES
static BOOL g_uninitialize_hooked = FALSE
static BOOL g_cp_installed = FALSE
static BOOL g_lcid_installed = FALSE
static HINSTANCE ghhctrl = NULL
static HINSTANCE gole32 = NULL
static FNCOCREATEINSTANCEEX * gCoCreateInstanceEx = NULL
static VALUE com_hash
static IDispatchVtbl com_vtbl
static UINT cWIN32OLE_cp = CP_ACP
static LCID cWIN32OLE_lcid = LOCALE_SYSTEM_DEFAULT
static rb_encodingcWIN32OLE_enc
static UINT g_cp_to_check = CP_ACP
static char g_lcid_to_check [8+1]
static VARTYPE g_nil_to = VT_ERROR
static st_tableenc2cp_table
static IMessageFilterVtbl message_filter
static IMessageFilter imessage_filter = { &message_filter }
static IMessageFilter * previous_filter
static REFIID riid
static REFIID void __RPC_FAR
*__RPC_FAR * 
ppvObject
static UINT __RPC_FAR * pctinfo
static UINT iTInfo
static UINT LCID lcid
static UINT LCID ITypeInfo
__RPC_FAR *__RPC_FAR * 
ppTInfo
static REFIID riid
static REFIID LPOLESTR __RPC_FAR * rgszNames
static REFIID LPOLESTR __RPC_FAR
UINT 
cNames
static REFIID LPOLESTR __RPC_FAR
UINT LCID 
lcid
static REFIID LPOLESTR __RPC_FAR
UINT LCID DISPID __RPC_FAR * 
rgDispId
static DISPID dispIdMember
static DISPID REFIID riid
static DISPID REFIID LCID lcid
static DISPID REFIID LCID WORD wFlags
static DISPID REFIID LCID
WORD DISPPARAMS __RPC_FAR * 
pDispParams
static DISPID REFIID LCID
WORD DISPPARAMS __RPC_FAR
VARIANT __RPC_FAR * 
pVarResult
static DISPID REFIID LCID
WORD DISPPARAMS __RPC_FAR
VARIANT __RPC_FAR EXCEPINFO
__RPC_FAR * 
pExcepInfo
static DISPID REFIID LCID
WORD DISPPARAMS __RPC_FAR
VARIANT __RPC_FAR EXCEPINFO
__RPC_FAR UINT __RPC_FAR * 
puArgErr
static REFIID riid
static REFIID riid
static IEventSinkVtbl vtEventSink
static BOOL g_IsEventSinkVtblInitialized = FALSE


Define Documentation

#define conv_51932 ( cp   )     ((cp) == 51932 && (load_conv_function51932(), 1))

Referenced by ole_mb2wc(), ole_vstr2wc(), and ole_wc2mb_alloc().

#define DOUT   fprintf(stderr,"[%d]\n",__LINE__)

Definition at line 53 of file win32ole.c.

#define DOUTD (  )     fprintf(stderr, "[%d]:" #x "=%f\n",__LINE__,x)

Definition at line 57 of file win32ole.c.

#define DOUTI (  )     fprintf(stderr, "[%ld]:" #x "=%d\n",__LINE__,x)

Definition at line 56 of file win32ole.c.

#define DOUTMSG (  )     fprintf(stderr, "[%d]:" #x "\n",__LINE__)

Definition at line 55 of file win32ole.c.

#define DOUTS (  )     fprintf(stderr,"[%d]:" #x "=%s\n",__LINE__,x)

Definition at line 54 of file win32ole.c.

#define ENC_MACHING_CP ( enc,
encname,
cp   )     if(strcasecmp(rb_enc_name((enc)),(encname)) == 0) return cp

#define g_ole_initialized   (BOOL)TlsGetValue(g_ole_initialized_key)

Definition at line 223 of file win32ole.c.

Referenced by ole_initialize(), and ole_uninitialize().

 
#define g_ole_initialized_init (  )     (g_ole_initialized_key = TlsAlloc())

Definition at line 224 of file win32ole.c.

Referenced by Init_win32ole().

#define g_ole_initialized_set ( val   )     TlsSetValue(g_ole_initialized_key, (void*)(val))

Definition at line 225 of file win32ole.c.

Referenced by ole_initialize(), and ole_uninitialize().

#define GNUC_OLDER_3_4_4

Value:

((__GNUC__ < 3) || \
     ((__GNUC__ <= 3) && (__GNUC_MINOR__ < 4)) || \
     ((__GNUC__ <= 3) && (__GNUC_MINOR__ <= 4) && (__GNUC_PATCHLEVEL__ <= 4)))

Definition at line 22 of file win32ole.c.

#define I8_2_NUM   INT2NUM

Definition at line 138 of file win32ole.c.

Referenced by ole_variant2val().

 
#define load_conv_function51932 (  )     failed_load_conv51932()

Referenced by ole_cp2encoding().

#define NUM2I8   NUM2INT

Definition at line 140 of file win32ole.c.

Referenced by ole_val2variant_ex().

#define NUM2UI8   NUM2UINT

Definition at line 141 of file win32ole.c.

Referenced by ole_val2variant_ex().

#define OLE_ADDREF (  )     (X) ? ((X)->lpVtbl->AddRef(X)) : 0

Definition at line 111 of file win32ole.c.

Referenced by ole_method_params(), ole_val2variant(), ole_variables(), ole_variant2val(), olemethod_set_member(), oleparam_ole_param_from_index(), oletype_set_member(), and reference_count().

#define OLE_FREE (  ) 

Value:

{\
    if(g_ole_initialized == TRUE) {\
        if(x) {\
            OLE_RELEASE(x);\
            (x) = 0;\
        }\
    }\
}

Definition at line 116 of file win32ole.c.

Referenced by fole_free(), ole_free(), olemethod_free(), oleparam_free(), oletype_free(), oletypelib_free(), and olevariable_free().

#define OLE_GET_TYPEATTR ( X,
 )     ((X)->lpVtbl->GetTypeAttr((X), (Y)))

Definition at line 113 of file win32ole.c.

Referenced by find_coclass(), find_default_source(), find_iid(), ole_const_load(), ole_method_event(), ole_method_sub(), ole_methods_from_typeinfo(), ole_methods_sub(), ole_ole_type(), ole_type_guid(), ole_type_impl_ole_types(), ole_type_major_version(), ole_type_minor_version(), ole_type_progid(), ole_type_src_type(), ole_type_typekind(), ole_type_visible(), ole_variables(), and olemethod_from_typeinfo().

#define OLE_RELEASE (  )     (X) ? ((X)->lpVtbl->Release(X)) : 0

Definition at line 109 of file win32ole.c.

Referenced by ev_advise(), EVENTSINK_Destructor(), fev_unadvise(), find_coclass(), find_default_source(), find_iid(), fole_activex_initialize(), fole_method_help(), fole_s_connect(), fole_s_const_load(), fole_s_free(), fole_type(), fole_typelib(), foletype_initialize(), ole_bind_obj(), ole_const_load(), ole_docinfo_from_type(), ole_event_free(), ole_ienum_free(), ole_method_event(), ole_methods(), ole_methods_from_typeinfo(), ole_set_member(), ole_type_from_itypeinfo(), ole_type_impl_ole_types(), ole_types_from_typelib(), ole_usertype2val(), oleclass_from_typelib(), olemethod_from_typeinfo(), reference_count(), and typeinfo_from_ole().

#define OLE_RELEASE_TYPEATTR ( X,
 )     ((X)->lpVtbl->ReleaseTypeAttr((X), (Y)))

Definition at line 114 of file win32ole.c.

Referenced by find_coclass(), find_default_source(), find_iid(), ole_method_event(), ole_method_sub(), ole_methods_from_typeinfo(), ole_methods_sub(), ole_ole_type(), ole_type_guid(), ole_type_impl_ole_types(), ole_type_major_version(), ole_type_minor_version(), ole_type_progid(), ole_type_src_type(), ole_type_typekind(), ole_type_visible(), ole_variables(), and olemethod_from_typeinfo().

#define OLEData_Get_Struct ( obj,
pole   ) 

Value:

{\
    Data_Get_Struct(obj, struct oledata, pole);\
    if(!pole->pDispatch) {\
        rb_raise(rb_eRuntimeError, "failed to get Dispatch Interface");\
    }\
}

Definition at line 125 of file win32ole.c.

Referenced by ev_advise(), find_default_source(), find_iid(), fole_activex_initialize(), fole_each(), fole_free(), fole_method_help(), fole_query_interface(), fole_respond_to(), fole_s_const_load(), fole_s_free(), fole_s_reference_count(), fole_type(), fole_typelib(), ole_invoke(), ole_invoke2(), ole_methods(), and ole_propertyput().

#define pIMultiLanguage   NULL

Definition at line 251 of file win32ole.c.

Referenced by ole_mb2wc(), ole_vstr2wc(), and ole_wc2mb_alloc().

#define UI8_2_NUM   UINT2NUM

Definition at line 139 of file win32ole.c.

Referenced by ole_variant2val().

#define V_I1REF (  )     V_UNION(X, pcVal)

Definition at line 77 of file win32ole.c.

Referenced by ole_set_byref(), and ole_variant2val().

#define V_INT (  )     V_UNION(X, intVal)

Definition at line 85 of file win32ole.c.

Referenced by get_ptr_of_variant(), ole_set_byref(), and ole_variant2val().

#define V_INTREF (  )     V_UNION(X, pintVal)

Definition at line 89 of file win32ole.c.

Referenced by ole_set_byref(), and ole_variant2val().

#define V_UI2REF (  )     V_UNION(X, puiVal)

Definition at line 81 of file win32ole.c.

Referenced by ole_set_byref(), and ole_variant2val().

#define V_UINT (  )     V_UNION(X, uintVal)

Definition at line 93 of file win32ole.c.

Referenced by get_ptr_of_variant(), ole_set_byref(), and ole_variant2val().

#define V_UINTREF (  )     V_UNION(X, puintVal)

Definition at line 97 of file win32ole.c.

Referenced by ole_set_byref(), and ole_variant2val().

#define V_UNION1 ( X,
 )     ((X)->Y)

Definition at line 62 of file win32ole.c.

Referenced by ole_const_load(), ole_param_default(), ole_param_flag_mask(), ole_ptrtype2val(), ole_usertype2val(), and ole_variable_value().

#define va_init_list ( a,
 )     va_start(a)

Definition at line 49 of file win32ole.c.

#define WC2VSTR (  )     ole_wc2vstr((x), TRUE)

Definition at line 144 of file win32ole.c.

Referenced by EVENTSINK_Invoke(), folemethod_event_interface(), foletypelib_library_name(), foletypelib_name(), foletypelib_path(), hash2ptr_dispparams(), ole_method_event(), ole_method_helpfile(), ole_method_helpstring(), ole_method_params(), ole_method_sub(), ole_methods_sub(), ole_type_from_itypeinfo(), ole_type_helpfile(), ole_type_helpstring(), ole_types_from_typelib(), ole_usertype2val(), ole_variables(), oleclass_from_typelib(), oleparam_ole_param_from_index(), and typeinfo_from_ole().

#define WIN32OLE_VERSION   "1.5.5"

Definition at line 146 of file win32ole.c.

Referenced by Init_win32ole().


Typedef Documentation

typedef IUnknown COSERVERINFO MULTI_QI* typedef LPCSTR UINT DWORD dwData

Definition at line 151 of file win32ole.c.

typedef IUnknown COSERVERINFO DWORD

Definition at line 149 of file win32ole.c.

typedef IUnknown DWORD

Definition at line 149 of file win32ole.c.

typedef BOOL( FNENUMSYSEMCODEPAGES)(CODEPAGE_ENUMPROC, DWORD)

Definition at line 153 of file win32ole.c.

typedef IUnknown COSERVERINFO MULTI_QI* typedef HWND(WINAPI FNHTMLHELP)(HWND hwndCaller

Definition at line 151 of file win32ole.c.

typedef struct tagIEVENTSINKOBJ IEVENTSINKOBJ

typedef struct IEventSinkVtbl IEventSinkVtbl

Definition at line 158 of file win32ole.c.

typedef struct IEventSink * PEVENTSINK

typedef struct tagIEVENTSINKOBJ * PIEVENTSINKOBJ

typedef IUnknown COSERVERINFO MULTI_QI* typedef LPCSTR pszFile

Definition at line 151 of file win32ole.c.

typedef IUnknown COSERVERINFO MULTI_QI* typedef LPCSTR UINT uCommand

Definition at line 151 of file win32ole.c.


Function Documentation

static void add_event_call_back ( VALUE  obj,
VALUE  event,
VALUE  data 
) [static]

Definition at line 8420 of file win32ole.c.

References id_events, NIL_P, ole_delete_event(), rb_ary_new(), rb_ary_push(), rb_ivar_get(), rb_ivar_set(), T_ARRAY, TYPE, and VALUE.

Referenced by ev_on_event().

static void ary2ptr_dispparams ( VALUE  ary,
DISPPARAMS *  pdispparams 
) [static]

Definition at line 7797 of file win32ole.c.

References ole_val2ptr_variant(), RARRAY_LEN, rb_ary_entry(), and VALUE.

Referenced by EVENTSINK_Invoke().

static long * ary2safe_array_index ( int  ary_size,
VALUE *  ary,
SAFEARRAY *  psa 
) [static]

Definition at line 8849 of file win32ole.c.

References ALLOC_N, NULL, NUM2INT, rb_eArgError, rb_eRuntimeError, and rb_raise().

Referenced by folevariant_ary_aref(), and folevariant_ary_aset().

static long ary_len_of_dim ( VALUE  ary,
long  dim 
) [static]

Definition at line 1566 of file win32ole.c.

References len, RARRAY_LEN, rb_ary_entry(), T_ARRAY, TYPE, and VALUE.

Referenced by ole_val_ary2variant_ary().

static VALUE ary_new_dim ( VALUE  myary,
long *  pid,
long *  plb,
long  dim 
) [static]

Definition at line 2066 of file win32ole.c.

References ALLOC_N, free, Qnil, rb_ary_entry(), rb_ary_new(), rb_ary_store(), rb_eRuntimeError, rb_raise(), and VALUE.

Referenced by ary_store_dim(), and ole_variant2val().

static void ary_store_dim ( VALUE  myary,
long *  pid,
long *  plb,
long  dim,
VALUE  val 
) [static]

Definition at line 2092 of file win32ole.c.

References ary_new_dim(), rb_ary_store(), and VALUE.

Referenced by ole_variant2val().

static void check_type_val2variant ( VALUE  val  )  [static]

Definition at line 8747 of file win32ole.c.

References cWIN32OLE, cWIN32OLE_VARIANT, len, RARRAY_LEN, rb_ary_entry(), rb_cTime, rb_eTypeError, rb_obj_classname(), rb_obj_is_kind_of(), rb_raise(), T_ARRAY, T_BIGNUM, T_FALSE, T_FIXNUM, T_FLOAT, T_NIL, T_STRING, T_TRUE, TYPE, and VALUE.

Referenced by folevariant_initialize().

static HRESULT clsid_from_remote ( VALUE  host,
VALUE  com,
CLSID *  pclsid 
) [static]

Definition at line 2601 of file win32ole.c.

References err, HRESULT(), len, NULL, ole_mb2wc(), rb_str_cat2(), rb_str_concat(), rb_str_new2, StringValuePtr, and VALUE.

Referenced by ole_create_dcom().

static BOOL code_page_installed ( UINT  cp  )  [static]

Definition at line 3051 of file win32ole.c.

References FALSE, g_cp_installed, g_cp_to_check, and installed_code_page_proc().

Referenced by ole_cp2encoding(), and ole_vstr2wc().

static VALUE create_win32ole_object ( VALUE  klass,
IDispatch *  pDispatch,
int  argc,
VALUE *  argv 
) [static]

Definition at line 2058 of file win32ole.c.

References fole_s_allocate(), ole_set_member(), and VALUE.

Referenced by fole_query_interface(), fole_s_connect(), ole_bind_obj(), and ole_variant2val().

static VALUE default_inspect ( VALUE  self,
const char *  class_name 
) [static]

Definition at line 2026 of file win32ole.c.

References make_inspect(), rb_funcall(), rb_intern, and VALUE.

Referenced by folemethod_inspect(), foletype_inspect(), foletypelib_inspect(), and tracepoint_inspect().

static long dimension ( VALUE  val  )  [static]

Definition at line 1547 of file win32ole.c.

References len, RARRAY_LEN, rb_ary_entry(), T_ARRAY, and TYPE.

Referenced by ole_val_ary2variant_ary().

static VALUE ev_advise ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 8306 of file win32ole.c.

References cWIN32OLE, Data_Get_Struct, oleeventdata::dwCookie, oleeventdata::event_id, EVENTSINK_Constructor(), evs_length(), find_default_source(), find_iid(), HRESULT(), tagIEVENTSINKOBJ::m_iid, NUM2INT, OBJ_TAINTED, ole_raise(), OLE_RELEASE, OLEData_Get_Struct, oleeventdata::pConnectionPoint, oledata::pDispatch, rb_eRuntimeError, rb_eSecurityError, rb_eTypeError, rb_obj_is_kind_of(), rb_raise(), rb_safe_level, rb_scan_args(), SafeStringValue, StringValuePtr, T_NIL, TYPE, and VALUE.

Referenced by fev_initialize().

static VALUE ev_on_event ( int  argc,
VALUE *  argv,
VALUE  self,
VALUE  is_ary_arg 
) [static]

Definition at line 8432 of file win32ole.c.

References add_event_call_back(), Data_Get_Struct, eWIN32OLERuntimeError, NIL_P, NULL, oleeventdata::pConnectionPoint, Qnil, rb_ary_new3, rb_block_proc(), rb_eTypeError, rb_raise(), rb_scan_args(), rb_sym_to_s(), T_STRING, T_SYMBOL, TYPE, and VALUE.

Referenced by fev_on_event(), and fev_on_event_with_outargs().

EVENTSINK_AddRef ( PEVENTSINK  pEV  ) 

Definition at line 7627 of file win32ole.c.

References tagIEVENTSINKOBJ::m_cRef.

Referenced by EVENTSINK_Constructor().

PIEVENTSINKOBJ EVENTSINK_Constructor (  ) 

Definition at line 7942 of file win32ole.c.

References ALLOC_N, EVENTSINK_AddRef(), EVENTSINK_GetIDsOfNames(), EVENTSINK_GetTypeInfo(), EVENTSINK_GetTypeInfoCount(), EVENTSINK_Invoke(), EVENTSINK_QueryInterface(), tagIEVENTSINKOBJ::lpVtbl, tagIEVENTSINKOBJ::m_cRef, tagIEVENTSINKOBJ::m_event_id, NULL, tagIEVENTSINKOBJ::pTypeInfo, TRUE, and vtEventSink.

Referenced by ev_advise().

void EVENTSINK_Destructor ( PIEVENTSINKOBJ   ) 

Definition at line 7964 of file win32ole.c.

References free, NULL, OLE_RELEASE, and tagIEVENTSINKOBJ::pTypeInfo.

Referenced by STDMETHODIMP_().

STDMETHODIMP EVENTSINK_GetIDsOfNames ( PEVENTSINK  pEventSink,
REFIID  riid,
OLECHAR **  szNames,
UINT  cNames,
LCID  lcid,
DISPID *  pDispID 
)

Definition at line 7663 of file win32ole.c.

References tagIEVENTSINKOBJ::pTypeInfo, and oleparamdata::pTypeInfo.

Referenced by EVENTSINK_Constructor().

STDMETHODIMP EVENTSINK_GetTypeInfo ( PEVENTSINK  pEV,
UINT  info,
LCID  lcid,
ITypeInfo **  pInfo 
)

Definition at line 7653 of file win32ole.c.

References NULL.

Referenced by EVENTSINK_Constructor().

STDMETHODIMP EVENTSINK_GetTypeInfoCount ( PEVENTSINK  pEV,
UINT *  pct 
)

Definition at line 7645 of file win32ole.c.

Referenced by EVENTSINK_Constructor().

STDMETHODIMP EVENTSINK_Invoke ( PEVENTSINK  pEventSink,
DISPID  dispid,
REFIID  riid,
LCID  lcid,
WORD  wFlags,
DISPPARAMS *  pdispparams,
VARIANT *  pvarResult,
EXCEPINFO *  pexcepinfo,
UINT *  puArgErr 
)

Definition at line 7837 of file win32ole.c.

References ary2ptr_dispparams(), count, cWIN32OLE_EVENT, ev, evs_entry(), exec_callback(), FALSE, hash2ptr_dispparams(), hash2result(), HRESULT(), id_events, tagIEVENTSINKOBJ::m_event_id, NIL_P, ole_search_event(), ole_search_handler_method(), ole_val2variant(), ole_variant2val(), tagIEVENTSINKOBJ::pTypeInfo, oleparamdata::pTypeInfo, Qfalse, Qnil, Qtrue, rb_ary_entry(), rb_ary_new(), rb_ary_push(), rb_intern, rb_ivar_get(), rb_obj_is_kind_of(), rb_protect(), rescue_callback(), result, T_ARRAY, T_HASH, TYPE, VALUE, and WC2VSTR.

Referenced by EVENTSINK_Constructor().

STDMETHODIMP EVENTSINK_QueryInterface ( PEVENTSINK  pEV,
REFIID  iid,
LPVOID *  ppv 
)

Definition at line 7608 of file win32ole.c.

References NULL.

Referenced by EVENTSINK_Constructor().

static VALUE evs_delete ( long  i  )  [static]

Definition at line 8584 of file win32ole.c.

References ary_ole_event, Qnil, and rb_ary_store().

Referenced by fev_unadvise().

static VALUE evs_entry ( long  i  )  [static]

Definition at line 8591 of file win32ole.c.

References ary_ole_event, and rb_ary_entry().

Referenced by EVENTSINK_Invoke().

static VALUE evs_length ( void   )  [static]

Definition at line 8597 of file win32ole.c.

References ary_ole_event, rb_funcall(), and rb_intern.

Referenced by ev_advise().

static VALUE evs_push ( VALUE  ev  )  [static]

Definition at line 8578 of file win32ole.c.

References ary_ole_event, and rb_ary_push().

Referenced by fev_initialize().

static VALUE exec_callback ( VALUE  arg  )  [static]

Definition at line 7810 of file win32ole.c.

References rb_apply(), and VALUE.

Referenced by EVENTSINK_Invoke().

static VALUE fev_get_handler ( VALUE  self  )  [static]

Definition at line 8655 of file win32ole.c.

References rb_intern, and rb_ivar_get().

Referenced by Init_win32ole().

static VALUE fev_initialize ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 8396 of file win32ole.c.

References ev_advise(), evs_push(), fev_set_handler(), id_events, Qnil, rb_ary_new(), and rb_ivar_set().

Referenced by Init_win32ole().

static VALUE fev_off_event ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 8525 of file win32ole.c.

References id_events, NIL_P, ole_delete_event(), Qnil, rb_eTypeError, rb_ivar_get(), rb_raise(), rb_scan_args(), rb_sym_to_s(), T_STRING, T_SYMBOL, TYPE, and VALUE.

Referenced by Init_win32ole().

static VALUE fev_on_event ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 8484 of file win32ole.c.

References ev_on_event(), and Qfalse.

Referenced by Init_win32ole().

static VALUE fev_on_event_with_outargs ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 8504 of file win32ole.c.

References ev_on_event(), and Qtrue.

Referenced by Init_win32ole().

static VALUE fev_s_allocate ( VALUE  klass  )  [static]

Definition at line 8294 of file win32ole.c.

References Data_Make_Struct, oleeventdata::dwCookie, oleeventdata::event_id, NULL, ole_event_free(), oleeventdata::pConnectionPoint, and VALUE.

Referenced by Init_win32ole().

static VALUE fev_s_msg_loop ( VALUE  klass  )  [static]

Definition at line 8412 of file win32ole.c.

References ole_msg_loop(), and Qnil.

Referenced by Init_win32ole().

static VALUE fev_set_handler ( VALUE  self,
VALUE  val 
) [static]

Definition at line 8642 of file win32ole.c.

References rb_intern, and rb_ivar_set().

Referenced by fev_initialize(), and Init_win32ole().

static VALUE fev_unadvise ( VALUE  self  )  [static]

Definition at line 8563 of file win32ole.c.

References Data_Get_Struct, oleeventdata::dwCookie, oleeventdata::event_id, evs_delete(), NULL, ole_msg_loop(), OLE_RELEASE, oleeventdata::pConnectionPoint, and Qnil.

Referenced by Init_win32ole().

static HRESULT find_coclass ( ITypeInfo *  pTypeInfo,
TYPEATTR *  pTypeAttr,
ITypeInfo **  pTypeInfo2,
TYPEATTR **  pTypeAttr2 
) [static]

Definition at line 8086 of file win32ole.c.

References count, FALSE, HRESULT(), NULL, OLE_GET_TYPEATTR, OLE_RELEASE, OLE_RELEASE_TYPEATTR, and TRUE.

Referenced by find_default_source().

static HRESULT find_default_source ( VALUE  ole,
IID *  piid,
ITypeInfo **  ppTypeInfo 
) [static]

Definition at line 8197 of file win32ole.c.

References cWIN32OLE_lcid, find_coclass(), find_default_source_from_typeinfo(), find_iid(), HRESULT(), NULL, OLE_GET_TYPEATTR, OLE_RELEASE, OLE_RELEASE_TYPEATTR, OLEData_Get_Struct, and oledata::pDispatch.

Referenced by ev_advise().

static HRESULT find_default_source_from_typeinfo ( ITypeInfo *  pTypeInfo,
TYPEATTR *  pTypeAttr,
ITypeInfo **  ppTypeInfo 
) [static]

Definition at line 8161 of file win32ole.c.

References HRESULT().

Referenced by find_default_source().

static HRESULT find_iid ( VALUE  ole,
char *  pitf,
IID *  piid,
ITypeInfo **  ppTypeInfo 
) [static]

Definition at line 7975 of file win32ole.c.

References count, cWIN32OLE_lcid, FALSE, free, HRESULT(), NULL, OLE_GET_TYPEATTR, OLE_RELEASE, OLE_RELEASE_TYPEATTR, ole_wc2mb(), OLEData_Get_Struct, oledata::pDispatch, oleparamdata::pTypeInfo, TRUE, and type.

Referenced by ev_advise(), and find_default_source().

static VALUE fole_activex_initialize ( VALUE  self  )  [static]

Definition at line 4796 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), ole_raise(), OLE_RELEASE, OLEData_Get_Struct, oledata::pDispatch, and Qnil.

Referenced by Init_win32ole().

static VALUE fole_each ( VALUE  self  )  [static]

Definition at line 4030 of file win32ole.c.

References cWIN32OLE_lcid, eWIN32OLERuntimeError, HRESULT(), NULL, ole_each_sub(), ole_ienum_free(), ole_raise(), OLEData_Get_Struct, oledata::pDispatch, Qnil, rb_ensure(), rb_eRuntimeError, result, RETURN_ENUMERATOR, and VALUE.

Referenced by Init_win32ole().

static VALUE fole_free ( VALUE  self  )  [static]

Definition at line 3982 of file win32ole.c.

References NULL, OLE_FREE, OLEData_Get_Struct, oledata::pDispatch, and Qnil.

Referenced by Init_win32ole().

static VALUE fole_func_methods ( VALUE  self  )  [static]

Definition at line 4378 of file win32ole.c.

References ole_methods().

Referenced by Init_win32ole().

static VALUE fole_get_methods ( VALUE  self  )  [static]

Definition at line 4345 of file win32ole.c.

References ole_methods().

Referenced by Init_win32ole().

static VALUE fole_getproperty2 ( VALUE  self,
VALUE  dispid,
VALUE  args,
VALUE  types 
) [static]

Definition at line 3827 of file win32ole.c.

References ole_invoke2().

Referenced by Init_win32ole().

static VALUE fole_getproperty_with_bracket ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 3910 of file win32ole.c.

References ole_invoke(), and TRUE.

Referenced by Init_win32ole().

static VALUE fole_initialize ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 3247 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), NIL_P, NULL, OBJ_TAINTED, ole_create_dcom(), ole_raise(), ole_set_member(), ole_vstr2wc(), oledata::pDispatch, rb_call_super(), rb_eSecurityError, rb_raise(), rb_safe_level, rb_scan_args(), SafeStringValue, StringValuePtr, and VALUE.

Referenced by Init_win32ole().

static VALUE fole_invoke ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 3601 of file win32ole.c.

References FALSE, and ole_invoke().

Referenced by Init_win32ole().

static VALUE fole_invoke2 ( VALUE  self,
VALUE  dispid,
VALUE  args,
VALUE  types 
) [static]

Definition at line 3809 of file win32ole.c.

References ole_invoke2().

Referenced by Init_win32ole().

static VALUE fole_method_help ( VALUE  self,
VALUE  cmdname 
) [static]

Definition at line 4754 of file win32ole.c.

References cWIN32OLE_METHOD, eWIN32OLERuntimeError, folemethod_s_allocate(), HRESULT(), ole_raise(), OLE_RELEASE, OLEData_Get_Struct, olemethod_from_typeinfo(), Qnil, rb_eRuntimeError, rb_raise(), SafeStringValue, StringValuePtr, typeinfo_from_ole(), and VALUE.

Referenced by Init_win32ole().

static VALUE fole_methods ( VALUE  self  )  [static]

Definition at line 4329 of file win32ole.c.

References ole_methods().

Referenced by Init_win32ole().

static VALUE fole_missing ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 4093 of file win32ole.c.

References cWIN32OLE_enc, FALSE, id, LONG_MAX, ole_invoke(), ole_propertyput(), rb_check_arity, rb_enc_str_new(), rb_eRuntimeError, rb_id2name(), rb_raise(), rb_to_id(), strlen(), and UNLIMITED_ARGUMENTS.

Referenced by Init_win32ole().

static VALUE fole_put_methods ( VALUE  self  )  [static]

Definition at line 4361 of file win32ole.c.

References ole_methods().

Referenced by Init_win32ole().

static VALUE fole_query_interface ( VALUE  self,
VALUE  str_iid 
) [static]

Definition at line 4501 of file win32ole.c.

References create_win32ole_object(), cWIN32OLE, eWIN32OLERuntimeError, HRESULT(), ole_raise(), ole_vstr2wc(), OLEData_Get_Struct, oledata::pDispatch, rb_eRuntimeError, rb_raise(), and StringValuePtr.

Referenced by Init_win32ole().

static VALUE fole_respond_to ( VALUE  self,
VALUE  method 
) [static]

Definition at line 4546 of file win32ole.c.

References cWIN32OLE_lcid, HRESULT(), ole_vstr2wc(), OLEData_Get_Struct, oledata::pDispatch, Qfalse, Qtrue, rb_eTypeError, rb_raise(), rb_sym_to_s(), T_STRING, T_SYMBOL, and TYPE.

Referenced by Init_win32ole().

static VALUE fole_s_allocate ( VALUE  klass  )  [static]

Definition at line 2047 of file win32ole.c.

References Data_Make_Struct, NULL, ole_free(), ole_initialize(), oledata::pDispatch, and VALUE.

Referenced by create_win32ole_object(), and Init_win32ole().

static VALUE fole_s_connect ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 2738 of file win32ole.c.

References create_win32ole_object(), eWIN32OLERuntimeError, HRESULT(), OBJ_TAINTED, ole_bind_obj(), ole_initialize(), ole_raise(), OLE_RELEASE, ole_vstr2wc(), oledata::pDispatch, rb_eSecurityError, rb_raise(), rb_safe_level, rb_scan_args(), SafeStringValue, StringValuePtr, and VALUE.

Referenced by Init_win32ole().

static VALUE fole_s_const_load ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 2819 of file win32ole.c.

References cWIN32OLE, cWIN32OLE_lcid, eWIN32OLERuntimeError, HRESULT(), ole_const_load(), ole_raise(), OLE_RELEASE, ole_vstr2wc(), OLEData_Get_Struct, oledata::pDispatch, Qnil, rb_eRuntimeError, rb_eTypeError, rb_obj_is_kind_of(), rb_raise(), rb_scan_args(), T_CLASS, T_MODULE, T_NIL, T_STRING, TYPE, typelib_file(), and VALUE.

Referenced by Init_win32ole().

static VALUE fole_s_create_guid ( VALUE  self  )  [static]

Definition at line 3154 of file win32ole.c.

References eWIN32OLERuntimeError, FALSE, HRESULT(), len, ole_raise(), ole_wc2vstr(), rb_eRuntimeError, and rb_raise().

Referenced by Init_win32ole().

static VALUE fole_s_free ( VALUE  self,
VALUE  obj 
) [static]

Definition at line 2951 of file win32ole.c.

References INT2NUM, OLE_RELEASE, OLEData_Get_Struct, oledata::pDispatch, reference_count(), and ULONG().

Referenced by Init_win32ole().

static VALUE fole_s_get_code_page ( VALUE  self  )  [static]

Definition at line 3036 of file win32ole.c.

References cWIN32OLE_cp, and INT2FIX.

Referenced by Init_win32ole().

static VALUE fole_s_get_locale ( VALUE  self  )  [static]

Definition at line 3093 of file win32ole.c.

References cWIN32OLE_lcid, and INT2FIX.

Referenced by Init_win32ole().

static VALUE fole_s_ole_initialize ( VALUE  self  )  [static]

Definition at line 3179 of file win32ole.c.

References ole_initialize(), and Qnil.

Referenced by Init_win32ole().

static VALUE fole_s_ole_uninitialize ( VALUE  self  )  [static]

Definition at line 3187 of file win32ole.c.

References ole_uninitialize(), and Qnil.

Referenced by Init_win32ole().

static VALUE fole_s_reference_count ( VALUE  self,
VALUE  obj 
) [static]

Definition at line 2934 of file win32ole.c.

References INT2NUM, OLEData_Get_Struct, and reference_count().

Referenced by Init_win32ole().

static VALUE fole_s_set_code_page ( VALUE  self,
VALUE  vcp 
) [static]

Definition at line 3073 of file win32ole.c.

References FIX2INT, and Qnil.

Referenced by Init_win32ole().

static VALUE fole_s_set_locale ( VALUE  self,
VALUE  vlcid 
) [static]

Definition at line 3128 of file win32ole.c.

References cWIN32OLE_lcid, eWIN32OLERuntimeError, FIX2INT, lcid_installed(), Qnil, and rb_raise().

Referenced by Init_win32ole().

static VALUE fole_s_show_help ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 2997 of file win32ole.c.

References cWIN32OLE_METHOD, cWIN32OLE_TYPE, name, ole_show_help(), Qnil, rb_eRuntimeError, rb_eTypeError, rb_funcall(), rb_intern, rb_ivar_get(), rb_obj_is_kind_of(), rb_raise(), rb_scan_args(), StringValuePtr, strlen(), T_STRING, TYPE, and VALUE.

Referenced by Init_win32ole().

static VALUE fole_setproperty ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 3888 of file win32ole.c.

References FALSE, and ole_invoke().

Referenced by Init_win32ole().

static VALUE fole_setproperty2 ( VALUE  self,
VALUE  dispid,
VALUE  args,
VALUE  types 
) [static]

Definition at line 3845 of file win32ole.c.

References ole_invoke2().

Referenced by Init_win32ole().

static VALUE fole_setproperty_with_bracket ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 3869 of file win32ole.c.

References ole_invoke(), and TRUE.

Referenced by Init_win32ole().

static VALUE fole_type ( VALUE  self  )  [static]

Definition at line 4417 of file win32ole.c.

References cWIN32OLE_lcid, HRESULT(), ole_raise(), OLE_RELEASE, ole_type_from_itypeinfo(), OLEData_Get_Struct, oledata::pDispatch, Qnil, rb_eRuntimeError, rb_raise(), type, and VALUE.

Referenced by Init_win32ole().

static VALUE fole_typelib ( VALUE  self  )  [static]

Definition at line 4468 of file win32ole.c.

References cWIN32OLE_lcid, HRESULT(), ole_raise(), OLE_RELEASE, ole_typelib_from_itypeinfo(), OLEData_Get_Struct, oledata::pDispatch, Qnil, rb_eRuntimeError, rb_raise(), and VALUE.

Referenced by Init_win32ole().

static VALUE folemethod_dispid ( VALUE  self  )  [static]

Definition at line 7085 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_dispid(), and olemethoddata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folemethod_event ( VALUE  self  )  [static]

Definition at line 6913 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_event(), olemethoddata::pOwnerTypeInfo, Qfalse, rb_intern, and rb_ivar_get().

Referenced by folemethod_event_interface(), and Init_win32ole().

static VALUE folemethod_event_interface ( VALUE  self  )  [static]

Definition at line 6934 of file win32ole.c.

References Data_Get_Struct, folemethod_event(), HRESULT(), name, NULL, ole_docinfo_from_type(), olemethoddata::pTypeInfo, Qnil, Qtrue, and WC2VSTR.

Referenced by Init_win32ole().

static VALUE folemethod_helpcontext ( VALUE  self  )  [static]

Definition at line 7054 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_helpcontext(), and olemethoddata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folemethod_helpfile ( VALUE  self  )  [static]

Definition at line 7024 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_helpfile(), and olemethoddata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folemethod_helpstring ( VALUE  self  )  [static]

Definition at line 6994 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_helpstring(), and olemethoddata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folemethod_initialize ( VALUE  self,
VALUE  oletype,
VALUE  method 
) [static]

Definition at line 6592 of file win32ole.c.

References cWIN32OLE_TYPE, Data_Get_Struct, eWIN32OLERuntimeError, olemethod_from_typeinfo(), oletypedata::pTypeInfo, Qnil, rb_eTypeError, rb_obj_is_kind_of(), rb_raise(), SafeStringValue, StringValuePtr, and VALUE.

Referenced by Init_win32ole().

static VALUE folemethod_inspect ( VALUE  self  )  [static]

Definition at line 7255 of file win32ole.c.

References default_inspect().

Referenced by Init_win32ole().

static VALUE folemethod_invkind ( VALUE  self  )  [static]

Definition at line 6775 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_invkind(), and olemethoddata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folemethod_invoke_kind ( VALUE  self  )  [static]

Definition at line 6794 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_invoke_kind(), and olemethoddata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folemethod_name ( VALUE  self  )  [static]

Definition at line 6623 of file win32ole.c.

References rb_intern, and rb_ivar_get().

Referenced by Init_win32ole().

static VALUE folemethod_offset_vtbl ( VALUE  self  )  [static]

Definition at line 7116 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_offset_vtbl(), and olemethoddata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folemethod_params ( VALUE  self  )  [static]

Definition at line 7240 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_params(), and olemethoddata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folemethod_return_type ( VALUE  self  )  [static]

Definition at line 6655 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_return_type(), and olemethoddata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folemethod_return_type_detail ( VALUE  self  )  [static]

Definition at line 6723 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_return_type_detail(), and olemethoddata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folemethod_return_vtype ( VALUE  self  )  [static]

Definition at line 6689 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_return_vtype(), and olemethoddata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folemethod_s_allocate ( VALUE  klass  )  [static]

Definition at line 6565 of file win32ole.c.

References Data_Make_Struct, olemethoddata::index, NULL, olemethod_free(), olemethoddata::pOwnerTypeInfo, olemethoddata::pTypeInfo, and VALUE.

Referenced by fole_method_help(), Init_win32ole(), and ole_methods_sub().

static VALUE folemethod_size_opt_params ( VALUE  self  )  [static]

Definition at line 7179 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_size_opt_params(), and olemethoddata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folemethod_size_params ( VALUE  self  )  [static]

Definition at line 7148 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_size_params(), and olemethoddata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folemethod_visible ( VALUE  self  )  [static]

Definition at line 6831 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, ole_method_visible(), and olemethoddata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foleparam_default ( VALUE  self  )  [static]

Definition at line 7568 of file win32ole.c.

References Data_Get_Struct, oleparamdata::index, oleparamdata::method_index, ole_param_default(), and oleparamdata::pTypeInfo.

Referenced by foleparam_inspect(), and Init_win32ole().

static VALUE foleparam_initialize ( VALUE  self,
VALUE  olemethod,
VALUE  n 
) [static]

Definition at line 7325 of file win32ole.c.

References cWIN32OLE_METHOD, FIX2INT, oleparam_ole_param(), rb_eTypeError, rb_obj_is_kind_of(), and rb_raise().

Referenced by Init_win32ole().

static VALUE foleparam_input ( VALUE  self  )  [static]

Definition at line 7444 of file win32ole.c.

References Data_Get_Struct, oleparamdata::index, oleparamdata::method_index, ole_param_flag_mask(), and oleparamdata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foleparam_inspect ( VALUE  self  )  [static]

Definition at line 7585 of file win32ole.c.

References foleparam_default(), foleparam_name(), make_inspect(), Qnil, rb_funcall(), rb_intern, rb_str_cat2(), rb_str_concat(), and VALUE.

Referenced by Init_win32ole().

static VALUE foleparam_name ( VALUE  self  )  [static]

Definition at line 7346 of file win32ole.c.

References rb_intern, and rb_ivar_get().

Referenced by foleparam_inspect(), and Init_win32ole().

static VALUE foleparam_ole_type ( VALUE  self  )  [static]

Definition at line 7377 of file win32ole.c.

References Data_Get_Struct, oleparamdata::index, oleparamdata::method_index, ole_param_ole_type(), and oleparamdata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foleparam_ole_type_detail ( VALUE  self  )  [static]

Definition at line 7411 of file win32ole.c.

References Data_Get_Struct, oleparamdata::index, oleparamdata::method_index, ole_param_ole_type_detail(), and oleparamdata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foleparam_optional ( VALUE  self  )  [static]

Definition at line 7489 of file win32ole.c.

References Data_Get_Struct, oleparamdata::index, oleparamdata::method_index, ole_param_flag_mask(), and oleparamdata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foleparam_output ( VALUE  self  )  [static]

Definition at line 7471 of file win32ole.c.

References Data_Get_Struct, oleparamdata::index, oleparamdata::method_index, ole_param_flag_mask(), and oleparamdata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foleparam_retval ( VALUE  self  )  [static]

Definition at line 7508 of file win32ole.c.

References Data_Get_Struct, oleparamdata::index, oleparamdata::method_index, ole_param_flag_mask(), and oleparamdata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foleparam_s_allocate ( VALUE  klass  )  [static]

Definition at line 7266 of file win32ole.c.

References Data_Make_Struct, oleparamdata::index, oleparamdata::method_index, NULL, oleparam_free(), oleparamdata::pTypeInfo, and VALUE.

Referenced by Init_win32ole().

static VALUE foletype_default_event_sources ( VALUE  self  )  [static]

Definition at line 6104 of file win32ole.c.

References Data_Get_Struct, ole_type_impl_ole_types(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_default_ole_types ( VALUE  self  )  [static]

Definition at line 6122 of file win32ole.c.

References Data_Get_Struct, ole_type_impl_ole_types(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_guid ( VALUE  self  )  [static]

Definition at line 5713 of file win32ole.c.

References Data_Get_Struct, ole_type_guid(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_helpcontext ( VALUE  self  )  [static]

Definition at line 5994 of file win32ole.c.

References Data_Get_Struct, ole_type_helpcontext(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_helpfile ( VALUE  self  )  [static]

Definition at line 5966 of file win32ole.c.

References Data_Get_Struct, ole_type_helpfile(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_helpstring ( VALUE  self  )  [static]

Definition at line 5902 of file win32ole.c.

References Data_Get_Struct, ole_type_helpstring(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_impl_ole_types ( VALUE  self  )  [static]

Definition at line 6069 of file win32ole.c.

References Data_Get_Struct, ole_type_impl_ole_types(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_initialize ( VALUE  self,
VALUE  typelib,
VALUE  oleclass 
) [static]

Definition at line 5582 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), ole_raise(), OLE_RELEASE, ole_vstr2wc(), oleclass_from_typelib(), oletypelibdata::pTypeLib, Qfalse, Qnil, rb_raise(), SafeStringValue, StringValuePtr, typelib_file(), and VALUE.

Referenced by Init_win32ole().

static VALUE foletype_inspect ( VALUE  self  )  [static]

Definition at line 6139 of file win32ole.c.

References default_inspect().

Referenced by Init_win32ole().

static VALUE foletype_major_version ( VALUE  self  )  [static]

Definition at line 5813 of file win32ole.c.

References Data_Get_Struct, ole_type_major_version(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_methods ( VALUE  self  )  [static]

Definition at line 6227 of file win32ole.c.

References Data_Get_Struct, ole_methods_from_typeinfo(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_minor_version ( VALUE  self  )  [static]

Definition at line 5843 of file win32ole.c.

References Data_Get_Struct, ole_type_minor_version(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_name ( VALUE  self  )  [static]

Definition at line 5618 of file win32ole.c.

References rb_intern, and rb_ivar_get().

Referenced by Init_win32ole().

static VALUE foletype_ole_type ( VALUE  self  )  [static]

Definition at line 5678 of file win32ole.c.

References Data_Get_Struct, ole_ole_type(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_ole_typelib ( VALUE  self  )  [static]

Definition at line 6011 of file win32ole.c.

References Data_Get_Struct, ole_typelib_from_itypeinfo(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_progid ( VALUE  self  )  [static]

Definition at line 5748 of file win32ole.c.

References Data_Get_Struct, ole_type_progid(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_s_allocate ( VALUE  klass  )  [static]

Definition at line 4901 of file win32ole.c.

References Data_Make_Struct, NULL, ole_initialize(), oletype_free(), oletypedata::pTypeInfo, and VALUE.

Referenced by Init_win32ole(), ole_type_from_itypeinfo(), and ole_types_from_typelib().

static VALUE foletype_s_ole_classes ( VALUE  self,
VALUE  typelib 
) [static]

Definition at line 4831 of file win32ole.c.

References cWIN32OLE_TYPELIB, rb_funcall(), rb_intern, and VALUE.

Referenced by Init_win32ole().

static VALUE foletype_s_progids ( VALUE  self  )  [static]

Definition at line 4870 of file win32ole.c.

References err, Qnil, rb_ary_new(), rb_ary_push(), rb_str_new2, reg_enum_key(), reg_get_val2(), reg_open_key(), reg_open_vkey(), and VALUE.

Referenced by Init_win32ole().

static VALUE foletype_s_typelibs ( VALUE  self  )  [static]

Definition at line 4853 of file win32ole.c.

References rb_eval_string().

Referenced by Init_win32ole().

static VALUE foletype_source_ole_types ( VALUE  self  )  [static]

Definition at line 6087 of file win32ole.c.

References Data_Get_Struct, ole_type_impl_ole_types(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_src_type ( VALUE  self  )  [static]

Definition at line 5937 of file win32ole.c.

References Data_Get_Struct, ole_type_src_type(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_typekind ( VALUE  self  )  [static]

Definition at line 5874 of file win32ole.c.

References Data_Get_Struct, ole_type_typekind(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_variables ( VALUE  self  )  [static]

Definition at line 6207 of file win32ole.c.

References Data_Get_Struct, ole_variables(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletype_visible ( VALUE  self  )  [static]

Definition at line 5783 of file win32ole.c.

References Data_Get_Struct, ole_type_visible(), and oletypedata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE foletypelib_guid ( VALUE  self  )  [static]

Definition at line 5269 of file win32ole.c.

References FALSE, len, ole_wc2vstr(), oletypelib_get_libattr(), oletypelib_get_typelib(), oletypelibdata::pTypeLib, Qnil, and VALUE.

Referenced by Init_win32ole().

static VALUE foletypelib_initialize ( VALUE  self,
VALUE  args 
) [static]

Definition at line 5220 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), len, ole_vstr2wc(), oletypelib_search_registry(), oletypelib_search_registry2(), oletypelib_set_member(), oletypelibdata::pTypeLib, Qfalse, Qnil, Qtrue, RARRAY_LEN, rb_ary_entry(), rb_eArgError, rb_raise(), SafeStringValue, StringValuePtr, and VALUE.

Referenced by Init_win32ole().

static VALUE foletypelib_inspect ( VALUE  self  )  [static]

Definition at line 5559 of file win32ole.c.

References default_inspect().

Referenced by Init_win32ole().

static VALUE foletypelib_library_name ( VALUE  self  )  [static]

Definition at line 5512 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), NULL, ole_raise(), oletypelib_get_typelib(), oletypelibdata::pTypeLib, Qnil, VALUE, and WC2VSTR.

Referenced by Init_win32ole().

static VALUE foletypelib_major_version ( VALUE  self  )  [static]

Definition at line 5349 of file win32ole.c.

References INT2NUM, major, oletypelib_get_libattr(), oletypelib_get_typelib(), oletypelibdata::pTypeLib, and VALUE.

Referenced by Init_win32ole().

static VALUE foletypelib_minor_version ( VALUE  self  )  [static]

Definition at line 5372 of file win32ole.c.

References INT2NUM, minor, oletypelib_get_libattr(), oletypelib_get_typelib(), oletypelibdata::pTypeLib, and VALUE.

Referenced by Init_win32ole().

static VALUE foletypelib_name ( VALUE  self  )  [static]

Definition at line 5297 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), name, NULL, ole_raise(), oletypelib_get_typelib(), oletypelibdata::pTypeLib, VALUE, and WC2VSTR.

Referenced by Init_win32ole().

static VALUE foletypelib_ole_types ( VALUE  self  )  [static]

Definition at line 5540 of file win32ole.c.

References NULL, ole_types_from_typelib(), oletypelib_get_typelib(), oletypelibdata::pTypeLib, rb_ary_new(), and VALUE.

Referenced by Init_win32ole().

static VALUE foletypelib_path ( VALUE  self  )  [static]

Definition at line 5443 of file win32ole.c.

References cWIN32OLE_lcid, eWIN32OLERuntimeError, HRESULT(), ole_raise(), oletypelib_get_libattr(), oletypelib_get_typelib(), oletypelibdata::pTypeLib, VALUE, and WC2VSTR.

Referenced by Init_win32ole().

static VALUE foletypelib_s_allocate ( VALUE  klass  )  [static]

Definition at line 5183 of file win32ole.c.

References Data_Make_Struct, NULL, ole_initialize(), oletypelib_free(), oletypelibdata::pTypeLib, and VALUE.

Referenced by Init_win32ole().

static VALUE foletypelib_s_typelibs ( VALUE  self  )  [static]

Definition at line 4999 of file win32ole.c.

References cWIN32OLE_TYPELIB, err, HRESULT(), name, oletypelib_from_guid(), oletypelib_set_member(), oletypelibdata::pTypeLib, Qnil, rb_ary_new(), rb_ary_push(), rb_funcall(), rb_intern, reg_enum_key(), reg_get_val2(), reg_open_key(), reg_open_vkey(), StringValuePtr, VALUE, and version().

Referenced by Init_win32ole().

static VALUE foletypelib_version ( VALUE  self  )  [static]

Definition at line 5324 of file win32ole.c.

References INT2NUM, major, make_version_str(), minor, oletypelib_get_libattr(), oletypelib_get_typelib(), oletypelibdata::pTypeLib, rb_Float(), and VALUE.

Referenced by Init_win32ole().

static VALUE foletypelib_visible ( VALUE  self  )  [static]

Definition at line 5483 of file win32ole.c.

References NULL, oletypelib_get_libattr(), oletypelib_get_typelib(), oletypelibdata::pTypeLib, Qfalse, Qtrue, and VALUE.

Referenced by Init_win32ole().

static VALUE folevariable_inspect ( VALUE  self  )  [static]

Definition at line 6536 of file win32ole.c.

References make_inspect(), rb_funcall(), rb_intern, rb_str_cat2(), rb_str_concat(), and VALUE.

Referenced by Init_win32ole().

static VALUE folevariable_name ( VALUE  self  )  [static]

Definition at line 6261 of file win32ole.c.

References rb_intern, and rb_ivar_get().

Referenced by Init_win32ole().

static VALUE folevariable_ole_type ( VALUE  self  )  [static]

Definition at line 6301 of file win32ole.c.

References Data_Get_Struct, olevariabledata::index, ole_variable_ole_type(), and olevariabledata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folevariable_ole_type_detail ( VALUE  self  )  [static]

Definition at line 6335 of file win32ole.c.

References Data_Get_Struct, olevariabledata::index, ole_variable_ole_type_detail(), and olevariabledata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folevariable_value ( VALUE  self  )  [static]

Definition at line 6379 of file win32ole.c.

References Data_Get_Struct, olevariabledata::index, ole_variable_value(), and olevariabledata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folevariable_variable_kind ( VALUE  self  )  [static]

Definition at line 6481 of file win32ole.c.

References Data_Get_Struct, olevariabledata::index, ole_variable_kind(), and olevariabledata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folevariable_varkind ( VALUE  self  )  [static]

Definition at line 6521 of file win32ole.c.

References Data_Get_Struct, olevariabledata::index, ole_variable_varkind(), and olevariabledata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folevariable_visible ( VALUE  self  )  [static]

Definition at line 6425 of file win32ole.c.

References Data_Get_Struct, olevariabledata::index, ole_variable_visible(), and olevariabledata::pTypeInfo.

Referenced by Init_win32ole().

static VALUE folevariant_ary_aref ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 8899 of file win32ole.c.

References ary2safe_array_index(), Data_Get_Struct, eWIN32OLERuntimeError, free, get_locked_safe_array(), HRESULT(), NULL, ole_raise(), ole_variant2val(), Qnil, rb_raise(), unlock_safe_array(), VALUE, and olevariantdata::var.

Referenced by Init_win32ole().

static VALUE folevariant_ary_aset ( int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 8979 of file win32ole.c.

References ary2safe_array_index(), Data_Get_Struct, eWIN32OLERuntimeError, free, get_locked_safe_array(), HRESULT(), NULL, ole_raise(), rb_eRuntimeError, rb_raise(), unlock_safe_array(), val2variant_ptr(), and olevariantdata::var.

Referenced by Init_win32ole().

static VALUE folevariant_initialize ( VALUE  self,
VALUE  args 
) [static]

Definition at line 8797 of file win32ole.c.

References check_type_val2variant(), Data_Get_Struct, len, NUM2INT, ole_val2olevariantdata(), ole_val2variant(), RARRAY_LEN, rb_ary_entry(), rb_eArgError, rb_raise(), VALUE, and olevariantdata::var.

Referenced by Init_win32ole().

static VALUE folevariant_s_allocate ( VALUE  klass  )  [static]

Definition at line 8669 of file win32ole.c.

References Data_Make_Struct, ole_initialize(), olevariant_free(), olevariantdata::realvar, VALUE, and olevariantdata::var.

Referenced by folevariant_s_array(), and Init_win32ole().

static VALUE folevariant_s_array ( VALUE  klass,
VALUE  dims,
VALUE  vvt 
) [static]

Definition at line 8697 of file win32ole.c.

References ALLOC_N, Check_Type, Data_Get_Struct, FIX2INT, folevariant_s_allocate(), free, NULL, NUM2UINT, ole_initialize(), Qnil, RARRAY_LEN, rb_ary_entry(), rb_eRuntimeError, rb_raise(), olevariantdata::realvar, T_ARRAY, VALUE, and olevariantdata::var.

Referenced by Init_win32ole().

static VALUE folevariant_set_value ( VALUE  self,
VALUE  val 
) [static]

Definition at line 9089 of file win32ole.c.

References Data_Get_Struct, eWIN32OLERuntimeError, ole_val2olevariantdata(), Qnil, rb_raise(), T_STRING, TYPE, and olevariantdata::var.

Referenced by Init_win32ole().

static VALUE folevariant_value ( VALUE  self  )  [static]

Definition at line 9028 of file win32ole.c.

References Data_Get_Struct, ole_variant2val(), Qnil, rb_funcall(), rb_intern, rb_str_new2, VALUE, and olevariantdata::var.

Referenced by Init_win32ole().

static VALUE folevariant_vartype ( VALUE  self  )  [static]

Definition at line 9067 of file win32ole.c.

References Data_Get_Struct, INT2FIX, and olevariantdata::var.

Referenced by Init_win32ole().

static void free_enc2cp ( void   )  [static]

Definition at line 9110 of file win32ole.c.

References enc2cp_table, and st_free_table().

Referenced by Init_win32ole().

static SAFEARRAY * get_locked_safe_array ( VALUE  val  )  [static]

Definition at line 8828 of file win32ole.c.

References Data_Get_Struct, HRESULT(), NULL, ole_raise(), rb_eRuntimeError, rb_eTypeError, rb_raise(), and olevariantdata::var.

Referenced by folevariant_ary_aref(), and folevariant_ary_aset().

static void * get_ptr_of_variant ( VARIANT *  pvar  )  [static]

Definition at line 1434 of file win32ole.c.

References NULL, V_INT, and V_UINT.

Referenced by val2variant_ptr().

static VALUE hash2named_arg ( RB_BLOCK_CALL_FUNC_ARGLIST(pair, op)   )  [static]

Definition at line 3302 of file win32ole.c.

References oleparam::dp, key, ole_val2variant(), ole_vstr2wc(), oleparam::pNamedArgs, Qnil, rb_ary_entry(), rb_eTypeError, rb_raise(), rb_sym_to_s(), T_STRING, T_SYMBOL, TYPE, and VALUE.

Referenced by ole_invoke().

static void hash2ptr_dispparams ( VALUE  hash,
ITypeInfo *  pTypeInfo,
DISPID  dispid,
DISPPARAMS *  pdispparams 
) [static]

Definition at line 7758 of file win32ole.c.

References ALLOCA_N, HRESULT(), INT2FIX, key, len, ole_val2ptr_variant(), Qnil, rb_hash_aref(), rb_str_intern(), VALUE, and WC2VSTR.

Referenced by EVENTSINK_Invoke().

static VALUE hash2result ( VALUE  hash  )  [static]

Definition at line 7787 of file win32ole.c.

References Qnil, rb_hash_aref(), rb_str_intern(), rb_str_new2, and VALUE.

Referenced by EVENTSINK_Invoke().

static HRESULT ( STDMETHODCALLTYPE  QueryInterface  )  [static]

typedef HRESULT ( STDAPICALLTYPE  FNCOCREATEINSTANCEEX  ) 

Referenced by clsid_from_remote(), ev_advise(), EVENTSINK_Invoke(), find_coclass(), find_default_source(), find_default_source_from_typeinfo(), find_iid(), fole_activex_initialize(), fole_each(), fole_initialize(), fole_method_help(), fole_query_interface(), fole_respond_to(), fole_s_connect(), fole_s_const_load(), fole_s_create_guid(), fole_type(), fole_typelib(), folemethod_event_interface(), foletype_initialize(), foletypelib_initialize(), foletypelib_library_name(), foletypelib_name(), foletypelib_path(), foletypelib_s_typelibs(), folevariant_ary_aref(), folevariant_ary_aset(), get_locked_safe_array(), hash2ptr_dispparams(), ole_bind_obj(), ole_const_load(), ole_create_dcom(), ole_docinfo_from_type(), ole_initialize(), ole_invoke(), ole_invoke2(), ole_mb2wc(), ole_method_dispid(), ole_method_docinfo_from_type(), ole_method_event(), ole_method_helpcontext(), ole_method_helpfile(), ole_method_helpstring(), ole_method_invkind(), ole_method_offset_vtbl(), ole_method_params(), ole_method_return_type(), ole_method_return_type_detail(), ole_method_return_vtype(), ole_method_size_opt_params(), ole_method_size_params(), ole_method_sub(), ole_method_visible(), ole_methods(), ole_methods_from_typeinfo(), ole_methods_sub(), ole_ole_type(), ole_param_default(), ole_param_flag_mask(), ole_param_ole_type(), ole_param_ole_type_detail(), ole_propertyput(), ole_set_safe_array(), ole_type_from_itypeinfo(), ole_type_guid(), ole_type_helpcontext(), ole_type_helpfile(), ole_type_helpstring(), ole_type_impl_ole_types(), ole_type_major_version(), ole_type_minor_version(), ole_type_progid(), ole_type_src_type(), ole_type_typekind(), ole_type_visible(), ole_typelib_from_itypeinfo(), ole_types_from_typelib(), ole_usertype2val(), ole_val2olevariantdata(), ole_val_ary2variant_ary(), ole_variable_kind(), ole_variable_ole_type(), ole_variable_ole_type_detail(), ole_variable_value(), ole_variable_varkind(), ole_variable_visible(), ole_variables(), ole_variant2val(), ole_vstr2wc(), ole_wc2mb_alloc(), oleclass_from_typelib(), olemethod_from_typeinfo(), oleparam_ole_param_from_index(), oletypelib_from_guid(), oletypelib_get_libattr(), oletypelib_search_registry(), oletypelib_search_registry2(), typeinfo_from_ole(), unlock_safe_array(), and val2variant_ptr().

static void init_enc2cp ( void   )  [static]

Definition at line 9104 of file win32ole.c.

References enc2cp_table, and st_init_numtable().

Referenced by Init_win32ole().

void Init_win32ole ( void   ) 

Definition at line 9116 of file win32ole.c.

References ary_ole_event, com_hash, com_vtbl, cWIN32OLE, cWIN32OLE_EVENT, cWIN32OLE_METHOD, cWIN32OLE_PARAM, cWIN32OLE_TYPE, cWIN32OLE_TYPELIB, cWIN32OLE_VARIABLE, cWIN32OLE_VARIANT, Data_Wrap_Struct, eWIN32OLERuntimeError, fev_get_handler(), fev_initialize(), fev_off_event(), fev_on_event(), fev_on_event_with_outargs(), fev_s_allocate(), fev_s_msg_loop(), fev_set_handler(), fev_unadvise(), fole_activex_initialize(), fole_each(), fole_free(), fole_func_methods(), fole_get_methods(), fole_getproperty2(), fole_getproperty_with_bracket(), fole_initialize(), fole_invoke(), fole_invoke2(), fole_method_help(), fole_methods(), fole_missing(), fole_put_methods(), fole_query_interface(), fole_respond_to(), fole_s_allocate(), fole_s_connect(), fole_s_const_load(), fole_s_create_guid(), fole_s_free(), fole_s_get_code_page(), fole_s_get_locale(), fole_s_ole_initialize(), fole_s_ole_uninitialize(), fole_s_reference_count(), fole_s_set_code_page(), fole_s_set_locale(), fole_s_show_help(), fole_setproperty(), fole_setproperty2(), fole_setproperty_with_bracket(), fole_type(), fole_typelib(), folemethod_dispid(), folemethod_event(), folemethod_event_interface(), folemethod_helpcontext(), folemethod_helpfile(), folemethod_helpstring(), folemethod_initialize(), folemethod_inspect(), folemethod_invkind(), folemethod_invoke_kind(), folemethod_name(), folemethod_offset_vtbl(), folemethod_params(), folemethod_return_type(), folemethod_return_type_detail(), folemethod_return_vtype(), folemethod_s_allocate(), folemethod_size_opt_params(), folemethod_size_params(), folemethod_visible(), foleparam_default(), foleparam_initialize(), foleparam_input(), foleparam_inspect(), foleparam_name(), foleparam_ole_type(), foleparam_ole_type_detail(), foleparam_optional(), foleparam_output(), foleparam_retval(), foleparam_s_allocate(), foletype_default_event_sources(), foletype_default_ole_types(), foletype_guid(), foletype_helpcontext(), foletype_helpfile(), foletype_helpstring(), foletype_impl_ole_types(), foletype_initialize(), foletype_inspect(), foletype_major_version(), foletype_methods(), foletype_minor_version(), foletype_name(), foletype_ole_type(), foletype_ole_typelib(), foletype_progid(), foletype_s_allocate(), foletype_s_ole_classes(), foletype_s_progids(), foletype_s_typelibs(), foletype_source_ole_types(), foletype_src_type(), foletype_typekind(), foletype_variables(), foletype_visible(), foletypelib_guid(), foletypelib_initialize(), foletypelib_inspect(), foletypelib_library_name(), foletypelib_major_version(), foletypelib_minor_version(), foletypelib_name(), foletypelib_ole_types(), foletypelib_path(), foletypelib_s_allocate(), foletypelib_s_typelibs(), foletypelib_version(), foletypelib_visible(), folevariable_inspect(), folevariable_name(), folevariable_ole_type(), folevariable_ole_type_detail(), folevariable_value(), folevariable_variable_kind(), folevariable_varkind(), folevariable_visible(), folevariant_ary_aref(), folevariant_ary_aset(), folevariant_initialize(), folevariant_s_allocate(), folevariant_s_array(), folevariant_set_value(), folevariant_value(), folevariant_vartype(), free_enc2cp(), g_ole_initialized_init, id_events, init_enc2cp(), INT2FIX, message_filter, mWIN32OLE_VARIANT, ole_init_cp(), Qnil, rb_ary_new(), rb_cData, rb_cObject, rb_define_alias(), rb_define_alloc_func(), rb_define_class(), rb_define_const(), rb_define_method(), rb_define_module_under(), rb_define_singleton_method(), rb_eRuntimeError, rb_funcall(), rb_gc_register_mark_object(), rb_intern, rb_mark_hash(), rb_str_new2, st_free_table(), st_init_numtable(), and WIN32OLE_VERSION.

static BOOL CALLBACK installed_code_page_proc ( LPTSTR  str  )  [static]

Definition at line 3042 of file win32ole.c.

References FALSE, g_cp_installed, g_cp_to_check, NULL, and TRUE.

Referenced by code_page_installed().

static BOOL CALLBACK installed_lcid_proc ( LPTSTR  str  )  [static]

Definition at line 3099 of file win32ole.c.

References FALSE, g_lcid_installed, g_lcid_to_check, and TRUE.

Referenced by lcid_installed().

static VALUE is_all_index_under ( long *  pid,
long *  pub,
long  dim 
) [static]

Definition at line 1503 of file win32ole.c.

References Qfalse, and Qtrue.

Referenced by ole_set_safe_array().

static BOOL lcid_installed ( LCID  lcid  )  [static]

Definition at line 3109 of file win32ole.c.

References FALSE, g_lcid_installed, g_lcid_to_check, installed_lcid_proc(), and snprintf.

Referenced by fole_s_set_locale().

static VALUE make_inspect ( const char *  class_name,
VALUE  detail 
) [static]

Definition at line 2014 of file win32ole.c.

References rb_str_cat2(), rb_str_concat(), rb_str_new2, and VALUE.

Referenced by default_inspect(), foleparam_inspect(), and folevariable_inspect().

static VALUE make_version_str ( VALUE  major,
VALUE  minor 
) [static]

Definition at line 5043 of file win32ole.c.

References Qnil, rb_str_append(), rb_str_cat2(), rb_String(), and VALUE.

Referenced by foletypelib_version(), and oletypelib_search_registry2().

NORETURN ( static void   failed_load_conv51932(void)  ) 

static char* ole_alloc_str ( UINT  size,
void *  arg 
) [static]

Definition at line 1107 of file win32ole.c.

References ALLOC_N.

Referenced by ole_wc2mb().

static char* ole_alloc_vstr ( UINT  size,
void *  arg 
) [static]

Definition at line 1402 of file win32ole.c.

References cWIN32OLE_enc, NULL, rb_enc_str_new(), RSTRING_PTR, and VALUE.

Referenced by ole_wc2vstr().

static VALUE ole_ary_m_entry ( VALUE  val,
long *  pid 
) [static]

Definition at line 1421 of file win32ole.c.

References Qnil, rb_ary_entry(), T_ARRAY, TYPE, and VALUE.

Referenced by ole_set_safe_array().

static VALUE ole_bind_obj ( VALUE  moniker,
int  argc,
VALUE *  argv,
VALUE  self 
) [static]

Definition at line 2687 of file win32ole.c.

References create_win32ole_object(), eWIN32OLERuntimeError, HRESULT(), NULL, ole_initialize(), ole_raise(), OLE_RELEASE, ole_vstr2wc(), oledata::pDispatch, StringValuePtr, and ULONG().

Referenced by fole_s_connect().

static void ole_const_load ( ITypeLib *  pTypeLib,
VALUE  klass,
VALUE  self 
) [static]

Definition at line 2538 of file win32ole.c.

References count, free, HRESULT(), id, len, NULL, OLE_GET_TYPEATTR, OLE_RELEASE, ole_variant2val(), ole_wc2mb(), rb_define_const(), rb_hash_aset(), rb_hash_new(), rb_intern, rb_is_const_id(), rb_str_new2, V_UNION1, and VALUE.

Referenced by fole_s_const_load().

static rb_encoding * ole_cp2encoding ( UINT  cp  )  [static]

Definition at line 1017 of file win32ole.c.

References ALLOCA_N, buf, code_page_installed(), enc_name(), eWIN32OLERuntimeError, load_conv_function51932, NULL, rb_define_dummy_encoding(), rb_enc_find_index(), rb_enc_from_index(), rb_raise(), rb_sprintf(), StringValueCStr, and VALUE.

static VALUE ole_create_dcom ( VALUE  self,
VALUE  ole,
VALUE  host,
VALUE  others 
) [static]

Definition at line 2639 of file win32ole.c.

References clsid_from_remote(), eWIN32OLERuntimeError, gCoCreateInstanceEx, gole32, HRESULT(), NULL, ole_raise(), ole_set_member(), ole_vstr2wc(), rb_eRuntimeError, rb_raise(), and StringValuePtr.

Referenced by fole_initialize().

static void ole_delete_event ( VALUE  ary,
VALUE  ev 
) [static]

Definition at line 7748 of file win32ole.c.

References ole_search_event_at(), and rb_ary_delete_at().

Referenced by add_event_call_back(), and fev_off_event().

static HRESULT ole_docinfo_from_type ( ITypeInfo *  pTypeInfo,
BSTR *  name,
BSTR *  helpstr,
DWORD helpcontext,
BSTR *  helpfile 
) [static]

Definition at line 4567 of file win32ole.c.

References HRESULT(), and OLE_RELEASE.

Referenced by folemethod_event_interface(), ole_type_helpcontext(), ole_type_helpfile(), ole_type_helpstring(), and ole_usertype2val().

static VALUE ole_each_sub ( VALUE  pEnumV  )  [static]

Definition at line 3992 of file win32ole.c.

References NULL, ole_variant2val(), Qnil, rb_yield(), and VALUE.

Referenced by fole_each().

static UINT ole_encoding2cp ( rb_encoding enc  )  [static]

Referenced by ole_vstr2wc().

static void ole_event_free ( struct oleeventdata poleev  )  [static]

Definition at line 8283 of file win32ole.c.

References oleeventdata::dwCookie, free, NULL, OLE_RELEASE, and oleeventdata::pConnectionPoint.

Referenced by fev_s_allocate().

static VALUE ole_excepinfo2msg ( EXCEPINFO *  pExInfo  )  [static]

Definition at line 1167 of file win32ole.c.

References free, NULL, ole_freeexceptinfo(), ole_wc2mb(), rb_str_cat(), rb_str_cat2(), rb_str_new2, and VALUE.

Referenced by ole_invoke2(), and ole_propertyput().

static void ole_free ( struct oledata pole  )  [static]

Definition at line 1275 of file win32ole.c.

References free, OLE_FREE, and oledata::pDispatch.

Referenced by fole_s_allocate().

static void ole_freeexceptinfo ( EXCEPINFO *  pExInfo  )  [static]

Definition at line 1159 of file win32ole.c.

Referenced by ole_excepinfo2msg(), and ole_invoke().

static VALUE ole_hresult2msg ( HRESULT  hr  )  [static]

Definition at line 1119 of file win32ole.c.

References cWIN32OLE_lcid, msg, NULL, Qnil, rb_str_cat2(), rb_str_new2, strlen(), term, and VALUE.

Referenced by ole_raise().

static VALUE ole_ienum_free ( VALUE  pEnumV  )  [static]

Definition at line 4008 of file win32ole.c.

References OLE_RELEASE, and Qnil.

Referenced by fole_each().

static UINT ole_init_cp ( void   )  [static]

Referenced by Init_win32ole().

static void ole_initialize ( void   )  [static]

Definition at line 1241 of file win32ole.c.

References FALSE, g_ole_initialized, g_ole_initialized_set, g_uninitialize_hooked, HRESULT(), imessage_filter, NULL, ole_raise(), ole_uninitialize_hook(), Qnil, rb_add_event_hook(), rb_eRuntimeError, RUBY_EVENT_THREAD_END, and TRUE.

Referenced by fole_s_allocate(), fole_s_connect(), fole_s_ole_initialize(), foletype_s_allocate(), foletypelib_s_allocate(), folevariant_s_allocate(), folevariant_s_array(), and ole_bind_obj().

static VALUE ole_invoke ( int  argc,
VALUE *  argv,
VALUE  self,
USHORT  wFlags,
BOOL  is_bracket 
) [static]

Definition at line 3355 of file win32ole.c.

References ALLOCA_N, cWIN32OLE_lcid, cWIN32OLE_VARIANT, Data_Get_Struct, oleparam::dp, eWIN32OLERuntimeError, hash2named_arg(), HRESULT(), NULL, NUM2INT, ole_freeexceptinfo(), ole_raise(), ole_val2variant(), ole_val2variant2(), ole_vstr2wc(), OLEData_Get_Struct, oledata::pDispatch, oleparam::pNamedArgs, rb_ary_entry(), rb_ary_unshift(), rb_block_call(), rb_eNoMethodError, rb_eRuntimeError, rb_eTypeError, rb_funcall(), rb_intern, rb_obj_is_kind_of(), rb_raise(), rb_scan_args(), rb_sym_to_s(), result, StringValuePtr, T_HASH, T_STRING, T_SYMBOL, TYPE, VALUE, and olevariantdata::var.

Referenced by fole_getproperty_with_bracket(), fole_invoke(), fole_missing(), fole_setproperty(), and fole_setproperty_with_bracket().

static VALUE ole_invoke2 ( VALUE  self,
VALUE  dispid,
VALUE  args,
VALUE  types,
USHORT  dispkind 
) [static]

Definition at line 3607 of file win32ole.c.

References ALLOCA_N, Check_Type, cWIN32OLE_lcid, eWIN32OLERuntimeError, FIX2INT, HRESULT(), NULL, NUM2INT, ole_excepinfo2msg(), ole_raise(), ole_val2variant(), ole_variant2val(), OLEData_Get_Struct, oledata::pDispatch, Qnil, RARRAY_LEN, rb_ary_entry(), rb_eTypeError, rb_raise(), result, set_argv(), StringValuePtr, T_ARRAY, and VALUE.

Referenced by fole_getproperty2(), fole_invoke2(), and fole_setproperty2().

static LPWSTR ole_mb2wc ( char *  pm,
int  len 
) [static]

Definition at line 1372 of file win32ole.c.

References conv_51932, cWIN32OLE_cp, eWIN32OLERuntimeError, HRESULT(), NULL, ole_raise(), pIMultiLanguage, and size.

Referenced by clsid_from_remote().

static VALUE ole_method_dispid ( ITypeInfo *  pTypeInfo,
UINT  method_index 
) [static]

Definition at line 7062 of file win32ole.c.

References HRESULT(), INT2NUM, Qnil, and VALUE.

Referenced by folemethod_dispid().

static HRESULT ole_method_docinfo_from_type ( ITypeInfo *  pTypeInfo,
UINT  method_index,
BSTR *  name,
BSTR *  helpstr,
DWORD helpcontext,
BSTR *  helpfile 
) [static]

Definition at line 6949 of file win32ole.c.

References HRESULT().

Referenced by ole_method_helpcontext(), ole_method_helpfile(), and ole_method_helpstring().

static VALUE ole_method_event ( ITypeInfo *  pTypeInfo,
UINT  method_index,
VALUE  method_name 
) [static]

Definition at line 6839 of file win32ole.c.

References HRESULT(), name, NULL, OLE_GET_TYPEATTR, OLE_RELEASE, OLE_RELEASE_TYPEATTR, Qfalse, Qtrue, rb_str_cmp(), VALUE, and WC2VSTR.

Referenced by folemethod_event().

static VALUE ole_method_helpcontext ( ITypeInfo *  pTypeInfo,
UINT  method_index 
) [static]

Definition at line 7033 of file win32ole.c.

References HRESULT(), INT2FIX, NULL, ole_method_docinfo_from_type(), and Qnil.

Referenced by folemethod_helpcontext().

static VALUE ole_method_helpfile ( ITypeInfo *  pTypeInfo,
UINT  method_index 
) [static]

Definition at line 7002 of file win32ole.c.

References HRESULT(), NULL, ole_method_docinfo_from_type(), Qnil, and WC2VSTR.

Referenced by folemethod_helpfile().

static VALUE ole_method_helpstring ( ITypeInfo *  pTypeInfo,
UINT  method_index 
) [static]

Definition at line 6971 of file win32ole.c.

References HRESULT(), NULL, ole_method_docinfo_from_type(), Qnil, and WC2VSTR.

Referenced by folemethod_helpstring().

static VALUE ole_method_invkind ( ITypeInfo *  pTypeInfo,
UINT  method_index 
) [static]

Definition at line 6731 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), INT2FIX, ole_raise(), and VALUE.

Referenced by folemethod_invkind(), and ole_method_invoke_kind().

static VALUE ole_method_invoke_kind ( ITypeInfo *  pTypeInfo,
UINT  method_index 
) [static]

Definition at line 6745 of file win32ole.c.

References FIX2INT, ole_method_invkind(), rb_str_new2, type, and VALUE.

Referenced by folemethod_invoke_kind().

static VALUE ole_method_offset_vtbl ( ITypeInfo *  pTypeInfo,
UINT  method_index 
) [static]

Definition at line 7093 of file win32ole.c.

References HRESULT(), INT2FIX, Qnil, and VALUE.

Referenced by folemethod_offset_vtbl().

static VALUE ole_method_params ( ITypeInfo *  pTypeInfo,
UINT  method_index 
) [static]

Definition at line 7187 of file win32ole.c.

References ALLOCA_N, cWIN32OLE_PARAM, Data_Make_Struct, HRESULT(), oleparamdata::index, len, oleparamdata::method_index, OLE_ADDREF, oleparam_free(), oleparamdata::pTypeInfo, rb_ary_new(), rb_ary_push(), rb_intern, rb_ivar_set(), VALUE, and WC2VSTR.

Referenced by folemethod_params().

static VALUE ole_method_return_type ( ITypeInfo *  pTypeInfo,
UINT  method_index 
) [static]

Definition at line 6629 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), ole_raise(), ole_typedesc2val(), Qnil, type, and VALUE.

Referenced by folemethod_return_type().

static VALUE ole_method_return_type_detail ( ITypeInfo *  pTypeInfo,
UINT  method_index 
) [static]

Definition at line 6697 of file win32ole.c.

References HRESULT(), ole_typedesc2val(), rb_ary_new(), type, and VALUE.

Referenced by folemethod_return_type_detail().

static VALUE ole_method_return_vtype ( ITypeInfo *  pTypeInfo,
UINT  method_index 
) [static]

Definition at line 6663 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), INT2FIX, ole_raise(), and VALUE.

Referenced by folemethod_return_vtype().

static VALUE ole_method_size_opt_params ( ITypeInfo *  pTypeInfo,
UINT  method_index 
) [static]

Definition at line 7156 of file win32ole.c.

References HRESULT(), INT2FIX, Qnil, and VALUE.

Referenced by folemethod_size_opt_params().

static VALUE ole_method_size_params ( ITypeInfo *  pTypeInfo,
UINT  method_index 
) [static]

Definition at line 7124 of file win32ole.c.

References HRESULT(), INT2FIX, Qnil, and VALUE.

Referenced by folemethod_size_params().

static VALUE ole_method_sub ( VALUE  self,
ITypeInfo *  pOwnerTypeInfo,
ITypeInfo *  pTypeInfo,
VALUE  name 
) [static]

Definition at line 4123 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), NULL, OLE_GET_TYPEATTR, ole_raise(), OLE_RELEASE_TYPEATTR, olemethod_set_member(), Qnil, strcasecmp, StringValuePtr, VALUE, and WC2VSTR.

Referenced by olemethod_from_typeinfo().

static VALUE ole_method_visible ( ITypeInfo *  pTypeInfo,
UINT  method_index 
) [static]

Definition at line 6802 of file win32ole.c.

References HRESULT(), Qfalse, Qtrue, and VALUE.

Referenced by folemethod_visible().

static VALUE ole_methods ( VALUE  self,
int  mask 
) [static]

Definition at line 4299 of file win32ole.c.

References HRESULT(), ole_methods_from_typeinfo(), OLE_RELEASE, OLEData_Get_Struct, rb_ary_concat(), rb_ary_new(), typeinfo_from_ole(), and VALUE.

Referenced by fole_func_methods(), fole_get_methods(), fole_methods(), and fole_put_methods().

static VALUE ole_methods_from_typeinfo ( ITypeInfo *  pTypeInfo,
int  mask 
) [static]

Definition at line 4229 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), OLE_GET_TYPEATTR, ole_methods_sub(), ole_raise(), OLE_RELEASE, OLE_RELEASE_TYPEATTR, rb_ary_new(), and VALUE.

Referenced by foletype_methods(), and ole_methods().

static VALUE ole_methods_sub ( ITypeInfo *  pOwnerTypeInfo,
ITypeInfo *  pTypeInfo,
VALUE  methods,
int  mask 
) [static]

Definition at line 4191 of file win32ole.c.

References cWIN32OLE_METHOD, eWIN32OLERuntimeError, folemethod_s_allocate(), HRESULT(), NULL, OLE_GET_TYPEATTR, ole_raise(), OLE_RELEASE_TYPEATTR, olemethod_set_member(), rb_ary_push(), VALUE, and WC2VSTR.

Referenced by ole_methods_from_typeinfo().

static void ole_msg_loop ( void   )  [static]

Definition at line 1266 of file win32ole.c.

References msg, and NULL.

Referenced by fev_s_msg_loop(), and fev_unadvise().

static VALUE ole_ole_type ( ITypeInfo *  pTypeInfo  )  [static]

Definition at line 5624 of file win32ole.c.

References HRESULT(), OLE_GET_TYPEATTR, OLE_RELEASE_TYPEATTR, Qnil, rb_str_new2, type, and VALUE.

Referenced by foletype_ole_type().

static VALUE ole_param_default ( ITypeInfo *  pTypeInfo,
UINT  method_index,
UINT  index 
) [static]

Definition at line 7517 of file win32ole.c.

References HRESULT(), ole_variant2val(), Qnil, V_UNION1, and VALUE.

Referenced by foleparam_default().

static VALUE ole_param_flag_mask ( ITypeInfo *  pTypeInfo,
UINT  method_index,
UINT  index,
USHORT  mask 
) [static]

Definition at line 7420 of file win32ole.c.

References HRESULT(), Qfalse, Qtrue, V_UNION1, and VALUE.

Referenced by foleparam_input(), foleparam_optional(), foleparam_output(), and foleparam_retval().

static VALUE ole_param_ole_type ( ITypeInfo *  pTypeInfo,
UINT  method_index,
UINT  index 
) [static]

Definition at line 7352 of file win32ole.c.

References HRESULT(), ole_typedesc2val(), Qnil, rb_str_new2, type, and VALUE.

Referenced by foleparam_ole_type().

static VALUE ole_param_ole_type_detail ( ITypeInfo *  pTypeInfo,
UINT  method_index,
UINT  index 
) [static]

Definition at line 7386 of file win32ole.c.

References HRESULT(), ole_typedesc2val(), rb_ary_new(), and VALUE.

Referenced by foleparam_ole_type_detail().

static VALUE ole_propertyput ( VALUE  self,
VALUE  property,
VALUE  value 
) [static]

Definition at line 3916 of file win32ole.c.

References cWIN32OLE_lcid, eWIN32OLERuntimeError, HRESULT(), NULL, ole_excepinfo2msg(), ole_raise(), ole_val2variant(), ole_vstr2wc(), OLEData_Get_Struct, oledata::pDispatch, Qnil, StringValuePtr, and VALUE.

Referenced by fole_missing().

static VALUE ole_ptrtype2val ( ITypeInfo *  pTypeInfo,
TYPEDESC *  pTypeDesc,
VALUE  typedetails 
) [static]

Definition at line 4615 of file win32ole.c.

References ole_typedesc2val(), rb_str_new2, type, V_UNION1, and VALUE.

Referenced by ole_typedesc2val().

static void ole_raise ( HRESULT  hr,
VALUE  ecs,
const char *  fmt,
  ... 
) [static]

Definition at line 1209 of file win32ole.c.

References msg, ole_hresult2msg(), Qnil, rb_exc_new_str(), rb_exc_raise(), rb_str_append(), rb_str_cat2(), rb_vsprintf(), va_init_list, and VALUE.

Referenced by ev_advise(), fole_activex_initialize(), fole_each(), fole_initialize(), fole_method_help(), fole_query_interface(), fole_s_connect(), fole_s_const_load(), fole_s_create_guid(), fole_type(), fole_typelib(), foletype_initialize(), foletypelib_library_name(), foletypelib_name(), foletypelib_path(), folevariant_ary_aref(), folevariant_ary_aset(), get_locked_safe_array(), ole_bind_obj(), ole_create_dcom(), ole_initialize(), ole_invoke(), ole_invoke2(), ole_mb2wc(), ole_method_invkind(), ole_method_return_type(), ole_method_return_vtype(), ole_method_sub(), ole_methods_from_typeinfo(), ole_methods_sub(), ole_propertyput(), ole_set_safe_array(), ole_type_major_version(), ole_type_minor_version(), ole_type_typekind(), ole_val2olevariantdata(), ole_variable_ole_type(), ole_variable_ole_type_detail(), ole_variables(), ole_vstr2wc(), ole_wc2mb_alloc(), olemethod_from_typeinfo(), oleparam_ole_param_from_index(), oletypelib_get_libattr(), typeinfo_from_ole(), unlock_safe_array(), and val2variant_ptr().

static VALUE ole_search_event ( VALUE  ary,
VALUE  ev,
BOOL *  is_default 
) [static]

Definition at line 7706 of file win32ole.c.

References FALSE, len, NIL_P, Qnil, RARRAY_LEN, rb_ary_entry(), rb_str_cmp(), TRUE, and VALUE.

Referenced by EVENTSINK_Invoke().

static long ole_search_event_at ( VALUE  ary,
VALUE  ev 
) [static]

Definition at line 7681 of file win32ole.c.

References len, NIL_P, RARRAY_LEN, rb_ary_entry(), rb_str_cmp(), T_STRING, TYPE, and VALUE.

Referenced by ole_delete_event().

static VALUE ole_search_handler_method ( VALUE  handler,
VALUE  ev,
BOOL *  is_default_handler 
) [static]

Definition at line 7730 of file win32ole.c.

References FALSE, Qnil, rb_intern, rb_respond_to(), rb_sprintf(), rb_to_id(), StringValuePtr, TRUE, and VALUE.

Referenced by EVENTSINK_Invoke().

static void ole_set_byref ( VARIANT *  realvar,
VARIANT *  var,
VARTYPE  vt 
) [static]

Definition at line 1822 of file win32ole.c.

References eWIN32OLERuntimeError, rb_raise(), V_I1REF, V_INT, V_INTREF, V_UI2REF, V_UINT, and V_UINTREF.

Referenced by ole_val2olevariantdata().

static VALUE ole_set_member ( VALUE  self,
IDispatch *  dispatch 
) [static]

Definition at line 2033 of file win32ole.c.

References Data_Get_Struct, NULL, OLE_RELEASE, and oledata::pDispatch.

Referenced by create_win32ole_object(), fole_initialize(), and ole_create_dcom().

static void ole_set_safe_array ( long  n,
SAFEARRAY *  psa,
long *  pid,
long *  pub,
VALUE  val,
long  dim,
VARTYPE  vt 
) [static]

Definition at line 1515 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), is_all_index_under(), NULL, ole_ary_m_entry(), ole_raise(), Qtrue, rb_eRuntimeError, rb_raise(), val2variant_ptr(), and VALUE.

Referenced by ole_val_ary2variant_ary().

static HWND ole_show_help ( VALUE  helpfile,
VALUE  helpcontext 
) [static]

Definition at line 2965 of file win32ole.c.

References ghhctrl, NUM2INT, and StringValuePtr.

Referenced by fole_s_show_help().

static VALUE ole_type_from_itypeinfo ( ITypeInfo *  pTypeInfo  )  [static]

Definition at line 4384 of file win32ole.c.

References cWIN32OLE_TYPE, foletype_s_allocate(), HRESULT(), NULL, OLE_RELEASE, oletype_set_member(), Qnil, type, VALUE, and WC2VSTR.

Referenced by fole_type(), and ole_type_impl_ole_types().

static VALUE ole_type_guid ( ITypeInfo *  pTypeInfo  )  [static]

Definition at line 5686 of file win32ole.c.

References FALSE, HRESULT(), len, OLE_GET_TYPEATTR, OLE_RELEASE_TYPEATTR, ole_wc2vstr(), Qnil, and VALUE.

Referenced by foletype_guid().

static VALUE ole_type_helpcontext ( ITypeInfo *  pTypeInfo  )  [static]

Definition at line 5974 of file win32ole.c.

References HRESULT(), INT2FIX, NULL, ole_docinfo_from_type(), and Qnil.

Referenced by foletype_helpcontext().

static VALUE ole_type_helpfile ( ITypeInfo *  pTypeInfo  )  [static]

Definition at line 5945 of file win32ole.c.

References HRESULT(), NULL, ole_docinfo_from_type(), Qnil, and WC2VSTR.

Referenced by foletype_helpfile().

static VALUE ole_type_helpstring ( ITypeInfo *  pTypeInfo  )  [static]

Definition at line 5882 of file win32ole.c.

References HRESULT(), NULL, ole_docinfo_from_type(), Qnil, and WC2VSTR.

Referenced by foletype_helpstring().

static VALUE ole_type_impl_ole_types ( ITypeInfo *  pTypeInfo,
int  implflags 
) [static]

Definition at line 6019 of file win32ole.c.

References HRESULT(), OLE_GET_TYPEATTR, OLE_RELEASE, OLE_RELEASE_TYPEATTR, ole_type_from_itypeinfo(), Qnil, rb_ary_new(), rb_ary_push(), type, and VALUE.

Referenced by foletype_default_event_sources(), foletype_default_ole_types(), foletype_impl_ole_types(), and foletype_source_ole_types().

static VALUE ole_type_major_version ( ITypeInfo *  pTypeInfo  )  [static]

Definition at line 5791 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), INT2FIX, OLE_GET_TYPEATTR, ole_raise(), OLE_RELEASE_TYPEATTR, and VALUE.

Referenced by foletype_major_version().

static VALUE ole_type_minor_version ( ITypeInfo *  pTypeInfo  )  [static]

Definition at line 5821 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), INT2FIX, OLE_GET_TYPEATTR, ole_raise(), OLE_RELEASE_TYPEATTR, and VALUE.

Referenced by foletype_minor_version().

static VALUE ole_type_progid ( ITypeInfo *  pTypeInfo  )  [static]

Definition at line 5721 of file win32ole.c.

References FALSE, HRESULT(), OLE_GET_TYPEATTR, OLE_RELEASE_TYPEATTR, ole_wc2vstr(), Qnil, and VALUE.

Referenced by foletype_progid().

static VALUE ole_type_src_type ( ITypeInfo *  pTypeInfo  )  [static]

Definition at line 5910 of file win32ole.c.

References alias, HRESULT(), OLE_GET_TYPEATTR, OLE_RELEASE_TYPEATTR, ole_typedesc2val(), Qnil, and VALUE.

Referenced by foletype_src_type().

static VALUE ole_type_typekind ( ITypeInfo *  pTypeInfo  )  [static]

Definition at line 5851 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), INT2FIX, OLE_GET_TYPEATTR, ole_raise(), OLE_RELEASE_TYPEATTR, and VALUE.

Referenced by foletype_typekind().

static VALUE ole_type_visible ( ITypeInfo *  pTypeInfo  )  [static]

Definition at line 5757 of file win32ole.c.

References HRESULT(), OLE_GET_TYPEATTR, OLE_RELEASE_TYPEATTR, Qfalse, Qtrue, and VALUE.

Referenced by foletype_visible().

static VALUE ole_typedesc2val ( ITypeInfo *  pTypeInfo,
TYPEDESC *  pTypeDesc,
VALUE  typedetails 
) [static]

Definition at line 4628 of file win32ole.c.

References INT2FIX, ole_ptrtype2val(), ole_usertype2val(), Qnil, rb_ary_push(), rb_fix2str(), rb_str_concat(), rb_str_new2, and VALUE.

Referenced by ole_method_return_type(), ole_method_return_type_detail(), ole_param_ole_type(), ole_param_ole_type_detail(), ole_ptrtype2val(), ole_type_src_type(), ole_variable_ole_type(), and ole_variable_ole_type_detail().

static VALUE ole_typelib_from_itypeinfo ( ITypeInfo *  pTypeInfo  )  [static]

Definition at line 4440 of file win32ole.c.

References cWIN32OLE_TYPELIB, HRESULT(), oletypelib_set_member(), Qnil, rb_funcall(), rb_intern, and VALUE.

Referenced by fole_typelib(), and foletype_ole_typelib().

static VALUE ole_types_from_typelib ( ITypeLib *  pTypeLib,
VALUE  classes 
) [static]

Definition at line 2884 of file win32ole.c.

References count, cWIN32OLE_TYPE, foletype_s_allocate(), HRESULT(), NULL, OLE_RELEASE, oletype_set_member(), rb_ary_push(), type, VALUE, and WC2VSTR.

Referenced by foletypelib_ole_types().

void ole_uninitialize ( void   ) 

Definition at line 1227 of file win32ole.c.

References FALSE, g_ole_initialized, and g_ole_initialized_set.

Referenced by fole_s_ole_uninitialize(), and ole_uninitialize_hook().

static void ole_uninitialize_hook ( rb_event_flag_t  evflag,
VALUE  data,
VALUE  self,
ID  mid,
VALUE  klass 
) [static]

Definition at line 1235 of file win32ole.c.

References ole_uninitialize().

Referenced by ole_initialize().

static VALUE ole_usertype2val ( ITypeInfo *  pTypeInfo,
TYPEDESC *  pTypeDesc,
VALUE  typedetails 
) [static]

Definition at line 4590 of file win32ole.c.

References HRESULT(), NULL, ole_docinfo_from_type(), OLE_RELEASE, Qnil, rb_ary_push(), type, V_UNION1, VALUE, and WC2VSTR.

Referenced by ole_typedesc2val().

static void ole_val2olevariantdata ( VALUE  val,
VARTYPE  vt,
struct olevariantdata pvar 
) [static]

Definition at line 1909 of file win32ole.c.

References cWIN32OLE_lcid, eWIN32OLERuntimeError, HRESULT(), len, NULL, ole_raise(), ole_set_byref(), ole_val2variant_ex(), ole_val_ary2variant_ary(), Qnil, rb_eRuntimeError, rb_raise(), olevariantdata::realvar, RSTRING_LEN, RSTRING_PTR, T_STRING, TYPE, and olevariantdata::var.

Referenced by folevariant_initialize(), and folevariant_set_value().

static void ole_val2ptr_variant ( VALUE  val,
VARIANT *  var 
) [static]

Definition at line 1754 of file win32ole.c.

References NUM2CHR, NUM2DBL, NUM2INT, ole_vstr2wc(), rb_big2dbl(), T_BIGNUM, T_FALSE, T_FIXNUM, T_FLOAT, T_STRING, T_TRUE, and TYPE.

Referenced by ary2ptr_dispparams(), and hash2ptr_dispparams().

static void ole_val2variant ( VALUE  val,
VARIANT *  var 
) [static]

Definition at line 1653 of file win32ole.c.

References cWIN32OLE, cWIN32OLE_VARIANT, Data_Get_Struct, g_nil_to, NUM2DBL, NUM2INT, OLE_ADDREF, ole_val_ary2variant_ary(), ole_vstr2wc(), oledata::pDispatch, rb_big2dbl(), rb_cTime, rb_obj_is_kind_of(), rbtime2vtdate(), T_ARRAY, T_BIGNUM, T_FALSE, T_FIXNUM, T_FLOAT, T_NIL, T_STRING, T_TRUE, TYPE, val2dispatch(), and olevariantdata::var.

Referenced by EVENTSINK_Invoke(), folevariant_initialize(), hash2named_arg(), ole_invoke(), ole_invoke2(), ole_propertyput(), and ole_val2variant2().

static void ole_val2variant2 ( VALUE  val,
VARIANT *  var 
) [static]

Definition at line 2006 of file win32ole.c.

References g_nil_to, and ole_val2variant().

Referenced by ole_invoke(), and ole_val2variant_ex().

static void ole_val2variant_ex ( VALUE  val,
VARIANT *  var,
VARTYPE  vt 
) [static]

Definition at line 1719 of file win32ole.c.

References NULL, NUM2I8, NUM2UI8, ole_val2variant2(), and Qnil.

Referenced by ole_val2olevariantdata(), and val2variant_ptr().

static HRESULT ole_val_ary2variant_ary ( VALUE  val,
VARIANT *  var,
VARTYPE  vt 
) [static]

Definition at line 1592 of file win32ole.c.

References ALLOC_N, ary_len_of_dim(), Check_Type, dimension(), free, HRESULT(), NULL, ole_set_safe_array(), rb_eRuntimeError, rb_raise(), and T_ARRAY.

Referenced by ole_val2olevariantdata(), and ole_val2variant().

static VALUE ole_variable_kind ( ITypeInfo *  pTypeInfo,
UINT  var_index 
) [static]

Definition at line 6433 of file win32ole.c.

References HRESULT(), rb_str_new2, and VALUE.

Referenced by folevariable_variable_kind().

static VALUE ole_variable_ole_type ( ITypeInfo *  pTypeInfo,
UINT  var_index 
) [static]

Definition at line 6267 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), ole_raise(), ole_typedesc2val(), Qnil, type, and VALUE.

Referenced by folevariable_ole_type().

static VALUE ole_variable_ole_type_detail ( ITypeInfo *  pTypeInfo,
UINT  var_index 
) [static]

Definition at line 6309 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), ole_raise(), ole_typedesc2val(), rb_ary_new(), type, and VALUE.

Referenced by folevariable_ole_type_detail().

static VALUE ole_variable_value ( ITypeInfo *  pTypeInfo,
UINT  var_index 
) [static]

Definition at line 6343 of file win32ole.c.

References HRESULT(), ole_variant2val(), Qnil, V_UNION1, and VALUE.

Referenced by folevariable_value().

static VALUE ole_variable_varkind ( ITypeInfo *  pTypeInfo,
UINT  var_index 
) [static]

Definition at line 6489 of file win32ole.c.

References HRESULT(), INT2FIX, Qnil, and VALUE.

Referenced by folevariable_varkind().

static VALUE ole_variable_visible ( ITypeInfo *  pTypeInfo,
UINT  var_index 
) [static]

Definition at line 6387 of file win32ole.c.

References HRESULT(), Qfalse, Qtrue, and VALUE.

Referenced by folevariable_visible().

static VALUE ole_variables ( ITypeInfo *  pTypeInfo  )  [static]

Definition at line 6145 of file win32ole.c.

References cWIN32OLE_VARIABLE, Data_Make_Struct, eWIN32OLERuntimeError, HRESULT(), olevariabledata::index, len, NULL, OLE_ADDREF, OLE_GET_TYPEATTR, ole_raise(), OLE_RELEASE_TYPEATTR, olevariable_free(), olevariabledata::pTypeInfo, rb_ary_new(), rb_ary_push(), rb_intern, rb_ivar_set(), VALUE, and WC2VSTR.

Referenced by foletype_variables().

static VALUE ole_variant2val ( VARIANT *  pvar  )  [static]

Definition at line 2099 of file win32ole.c.

References ALLOC_N, ary_new_dim(), ary_store_dim(), create_win32ole_object(), cWIN32OLE, cWIN32OLE_lcid, FALSE, free, HRESULT(), I8_2_NUM, INT2NUM, NULL, OLE_ADDREF, ole_wc2vstr(), oledata::pDispatch, Qfalse, Qnil, Qtrue, rb_ary_new(), rb_eRuntimeError, rb_float_new, rb_raise(), UI8_2_NUM, V_I1REF, V_INT, V_INTREF, V_UI2REF, V_UINT, V_UINTREF, VALUE, and vtdate2rbtime().

Referenced by EVENTSINK_Invoke(), folevariant_ary_aref(), folevariant_value(), ole_const_load(), ole_each_sub(), ole_invoke2(), ole_param_default(), ole_variable_value(), and set_argv().

static LPWSTR ole_vstr2wc ( VALUE  vstr  )  [static]

Definition at line 1319 of file win32ole.c.

References code_page_installed(), conv_51932, enc2cp_table, eWIN32OLERuntimeError, HRESULT(), len, NULL, ole_encoding2cp(), ole_raise(), pIMultiLanguage, rb_enc_get(), rb_enc_name, rb_raise(), RSTRING_LEN, RSTRING_LENINT, RSTRING_PTR, size, st_data_t, st_insert(), and st_lookup().

Referenced by fole_initialize(), fole_query_interface(), fole_respond_to(), fole_s_connect(), fole_s_const_load(), foletype_initialize(), foletypelib_initialize(), hash2named_arg(), ole_bind_obj(), ole_create_dcom(), ole_invoke(), ole_propertyput(), ole_val2ptr_variant(), ole_val2variant(), and oletypelib_from_guid().

static char * ole_wc2mb ( LPWSTR  pw  )  [static]

Definition at line 1113 of file win32ole.c.

References NULL, ole_alloc_str(), and ole_wc2mb_alloc().

Referenced by find_iid(), ole_const_load(), and ole_excepinfo2msg().

static char* ole_wc2mb_alloc ( LPWSTR  pw,
char *  (alloc)(UINT size, void *arg),
void *  arg 
) [static]

Definition at line 1071 of file win32ole.c.

References conv_51932, cWIN32OLE_cp, eWIN32OLERuntimeError, HRESULT(), NULL, ole_raise(), and pIMultiLanguage.

Referenced by ole_wc2mb(), and ole_wc2vstr().

static VALUE ole_wc2vstr ( LPWSTR  pw,
BOOL  isfree 
) [static]

Definition at line 1410 of file win32ole.c.

References ole_alloc_vstr(), ole_wc2mb_alloc(), rb_str_set_len(), RSTRING_PTR, strlen(), and VALUE.

Referenced by fole_s_create_guid(), foletypelib_guid(), ole_type_guid(), ole_type_progid(), and ole_variant2val().

static VALUE oleclass_from_typelib ( VALUE  self,
ITypeLib *  pTypeLib,
VALUE  oleclass 
) [static]

Definition at line 4923 of file win32ole.c.

References count, HRESULT(), NULL, OLE_RELEASE, oletype_set_member(), oletypedata::pTypeInfo, Qfalse, Qtrue, rb_str_cmp(), VALUE, and WC2VSTR.

Referenced by foletype_initialize().

static void olemethod_free ( struct olemethoddata polemethod  )  [static]

Definition at line 1296 of file win32ole.c.

References free, OLE_FREE, olemethoddata::pOwnerTypeInfo, and olemethoddata::pTypeInfo.

Referenced by folemethod_s_allocate().

static VALUE olemethod_from_typeinfo ( VALUE  self,
ITypeInfo *  pTypeInfo,
VALUE  name 
) [static]

Definition at line 4160 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), OLE_GET_TYPEATTR, ole_method_sub(), ole_raise(), OLE_RELEASE, OLE_RELEASE_TYPEATTR, Qnil, and VALUE.

Referenced by fole_method_help(), and folemethod_initialize().

static VALUE olemethod_set_member ( VALUE  self,
ITypeInfo *  pTypeInfo,
ITypeInfo *  pOwnerTypeInfo,
int  index,
VALUE  name 
) [static]

Definition at line 6551 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, OLE_ADDREF, olemethoddata::pOwnerTypeInfo, olemethoddata::pTypeInfo, rb_intern, and rb_ivar_set().

Referenced by ole_method_sub(), and ole_methods_sub().

static void oleparam_free ( struct oleparamdata pole  )  [static]

Definition at line 1311 of file win32ole.c.

References free, OLE_FREE, and oleparamdata::pTypeInfo.

Referenced by foleparam_s_allocate(), and ole_method_params().

static VALUE oleparam_ole_param ( VALUE  self,
VALUE  olemethod,
int  n 
) [static]

Definition at line 7318 of file win32ole.c.

References Data_Get_Struct, olemethoddata::index, oleparam_ole_param_from_index(), and olemethoddata::pTypeInfo.

Referenced by foleparam_initialize().

static VALUE oleparam_ole_param_from_index ( VALUE  self,
ITypeInfo *  pTypeInfo,
UINT  method_index,
int  param_index 
) [static]

Definition at line 7280 of file win32ole.c.

References ALLOCA_N, Data_Get_Struct, HRESULT(), oleparamdata::index, len, oleparamdata::method_index, OLE_ADDREF, ole_raise(), oleparamdata::pTypeInfo, rb_eIndexError, rb_eRuntimeError, rb_intern, rb_ivar_set(), rb_raise(), and WC2VSTR.

Referenced by oleparam_ole_param().

static void oletype_free ( struct oletypedata poletype  )  [static]

Definition at line 1289 of file win32ole.c.

References free, OLE_FREE, and oletypedata::pTypeInfo.

Referenced by foletype_s_allocate().

static VALUE oletype_set_member ( VALUE  self,
ITypeInfo *  pTypeInfo,
VALUE  name 
) [static]

Definition at line 4912 of file win32ole.c.

References Data_Get_Struct, OLE_ADDREF, oletypedata::pTypeInfo, rb_intern, and rb_ivar_set().

Referenced by ole_type_from_itypeinfo(), ole_types_from_typelib(), and oleclass_from_typelib().

static void oletypelib_free ( struct oletypelibdata poletypelib  )  [static]

Definition at line 1282 of file win32ole.c.

References free, OLE_FREE, and oletypelibdata::pTypeLib.

Referenced by foletypelib_s_allocate().

static HRESULT oletypelib_from_guid ( VALUE  guid,
VALUE  version,
ITypeLib **  ppTypeLib 
) [static]

Definition at line 5418 of file win32ole.c.

References HRESULT(), ole_vstr2wc(), oletypelib_path(), Qnil, and VALUE.

Referenced by foletypelib_s_typelibs(), oletypelib_search_registry(), and oletypelib_search_registry2().

static void oletypelib_get_libattr ( ITypeLib *  pTypeLib,
TLIBATTR **  ppTLibAttr 
) [static]

Definition at line 4978 of file win32ole.c.

References eWIN32OLERuntimeError, HRESULT(), and ole_raise().

Referenced by foletypelib_guid(), foletypelib_major_version(), foletypelib_minor_version(), foletypelib_path(), foletypelib_version(), and foletypelib_visible().

static ITypeLib * oletypelib_get_typelib ( VALUE  self  )  [static]

Definition at line 4970 of file win32ole.c.

References Data_Get_Struct, and oletypelibdata::pTypeLib.

Referenced by foletypelib_guid(), foletypelib_library_name(), foletypelib_major_version(), foletypelib_minor_version(), foletypelib_name(), foletypelib_ole_types(), foletypelib_path(), foletypelib_version(), and foletypelib_visible().

static VALUE oletypelib_path ( VALUE  guid,
VALUE  version 
) [static]

Definition at line 5385 of file win32ole.c.

References err, key, Qnil, rb_str_cat2(), rb_str_concat(), rb_str_new2, reg_enum_key(), reg_get_typelib_file_path(), reg_open_vkey(), and VALUE.

Referenced by oletypelib_from_guid().

static VALUE oletypelib_search_registry ( VALUE  self,
VALUE  typelib 
) [static]

Definition at line 5132 of file win32ole.c.

References err, HRESULT(), NULL, oletypelib_from_guid(), oletypelib_set_member(), oletypelibdata::pTypeLib, Qfalse, Qnil, Qtrue, rb_str_cmp(), reg_enum_key(), reg_get_val(), reg_open_key(), reg_open_vkey(), and VALUE.

Referenced by foletypelib_initialize().

static VALUE oletypelib_search_registry2 ( VALUE  self,
VALUE  args 
) [static]

Definition at line 5060 of file win32ole.c.

References err, HRESULT(), make_version_str(), NULL, oletypelib_from_guid(), oletypelib_set_member(), oletypelibdata::pTypeLib, Qfalse, Qnil, Qtrue, rb_ary_entry(), reg_enum_key(), reg_get_val(), reg_open_key(), reg_open_vkey(), StringValuePtr, VALUE, and version().

Referenced by foletypelib_initialize().

static VALUE oletypelib_set_member ( VALUE  self,
ITypeLib *  pTypeLib 
) [static]

Definition at line 4961 of file win32ole.c.

References Data_Get_Struct, and oletypelibdata::pTypeLib.

Referenced by foletypelib_initialize(), foletypelib_s_typelibs(), ole_typelib_from_itypeinfo(), oletypelib_search_registry(), and oletypelib_search_registry2().

static void olevariable_free ( struct olevariabledata polevar  )  [static]

Definition at line 1304 of file win32ole.c.

References free, OLE_FREE, and olevariabledata::pTypeInfo.

Referenced by ole_variables().

static void olevariant_free ( struct olevariantdata pvar  )  [static]

Definition at line 8661 of file win32ole.c.

References free, olevariantdata::realvar, and olevariantdata::var.

Referenced by folevariant_s_allocate().

static double rbtime2vtdate ( VALUE  tmobj  )  [static]

Referenced by ole_val2variant().

static ULONG reference_count ( struct oledata pole  )  [static]

Definition at line 2915 of file win32ole.c.

References OLE_ADDREF, OLE_RELEASE, oledata::pDispatch, and ULONG().

Referenced by fole_s_free(), and fole_s_reference_count().

static VALUE reg_enum_key ( HKEY  hkey,
DWORD  i 
) [static]

Definition at line 2366 of file win32ole.c.

References buf, err, NULL, Qnil, and rb_str_new2.

Referenced by foletype_s_progids(), foletypelib_s_typelibs(), oletypelib_path(), oletypelib_search_registry(), oletypelib_search_registry2(), and typelib_file_from_typelib().

static VALUE reg_get_typelib_file_path ( HKEY  hkey  )  [static]

Definition at line 2426 of file win32ole.c.

References Qnil, reg_get_val2(), and VALUE.

Referenced by oletypelib_path(), and typelib_file_from_typelib().

static VALUE reg_get_val ( HKEY  hkey,
const char *  subkey 
) [static]

Definition at line 2381 of file win32ole.c.

References ALLOC_N, err, free, len, NULL, Qnil, rb_str_new2, size, and VALUE.

Referenced by oletypelib_search_registry(), oletypelib_search_registry2(), reg_get_val2(), and typelib_file_from_typelib().

static VALUE reg_get_val2 ( HKEY  hkey,
const char *  subkey 
) [static]

Definition at line 2409 of file win32ole.c.

References err, NULL, Qnil, reg_get_val(), and VALUE.

Referenced by foletype_s_progids(), foletypelib_s_typelibs(), reg_get_typelib_file_path(), and typelib_file_from_clsid().

static LONG reg_open_key ( HKEY  hkey,
const char *  name,
HKEY *  phkey 
) [static]

Definition at line 2354 of file win32ole.c.

Referenced by foletype_s_progids(), foletypelib_s_typelibs(), oletypelib_search_registry(), oletypelib_search_registry2(), reg_open_vkey(), typelib_file_from_clsid(), and typelib_file_from_typelib().

static LONG reg_open_vkey ( HKEY  hkey,
VALUE  key,
HKEY *  phkey 
) [static]

Definition at line 2360 of file win32ole.c.

References reg_open_key(), and StringValuePtr.

Referenced by foletype_s_progids(), foletypelib_s_typelibs(), oletypelib_path(), oletypelib_search_registry(), oletypelib_search_registry2(), and typelib_file_from_typelib().

static VALUE rescue_callback ( VALUE  arg  )  [static]

Definition at line 7820 of file win32ole.c.

References msg, Qnil, rb_ary_entry(), rb_backtrace(), rb_errinfo, rb_funcall(), rb_intern, rb_obj_classname(), rb_sprintf(), rb_write_error(), ruby_finalize(), StringValuePtr, and VALUE.

Referenced by EVENTSINK_Invoke().

static VALUE set_argv ( VARIANTARG *  realargs,
unsigned int  beg,
unsigned int  end 
) [static]

Definition at line 3341 of file win32ole.c.

References argv, Check_Type, cWIN32OLE, ole_variant2val(), rb_ary_clear(), rb_ary_push(), rb_const_get(), rb_intern, T_ARRAY, and VALUE.

Referenced by ole_invoke2().

STDMETHODIMP_ ( ULONG   ) 

Definition at line 7634 of file win32ole.c.

References EVENTSINK_Destructor(), and tagIEVENTSINKOBJ::m_cRef.

static HRESULT typeinfo_from_ole ( struct oledata pole,
ITypeInfo **  ppti 
) [static]

Definition at line 4258 of file win32ole.c.

References count, cWIN32OLE_lcid, HRESULT(), NULL, ole_raise(), OLE_RELEASE, oledata::pDispatch, rb_eRuntimeError, rb_str_cmp(), type, VALUE, and WC2VSTR.

Referenced by fole_method_help(), and ole_methods().

static VALUE typelib_file ( VALUE  ole  )  [static]

Definition at line 2528 of file win32ole.c.

References Qnil, typelib_file_from_clsid(), typelib_file_from_typelib(), and VALUE.

Referenced by fole_s_const_load(), and foletype_initialize().

static VALUE typelib_file_from_clsid ( VALUE  ole  )  [static]

Definition at line 2442 of file win32ole.c.

References err, Qnil, rb_str_new2, reg_get_val2(), reg_open_key(), StringValuePtr, and VALUE.

Referenced by typelib_file().

static VALUE typelib_file_from_typelib ( VALUE  ole  )  [static]

Definition at line 2470 of file win32ole.c.

References err, FALSE, NULL, Qnil, rb_str_cmp(), reg_enum_key(), reg_get_typelib_file_path(), reg_get_val(), reg_open_key(), reg_open_vkey(), StringValuePtr, TRUE, and VALUE.

Referenced by typelib_file().

static ULONG ( STDMETHODCALLTYPE  AddRef  )  [static]

Referenced by fole_s_free(), getifaddrs(), nkf_locale_charmap(), ole_bind_obj(), rb_w32_getppid(), and reference_count().

static void unlock_safe_array ( SAFEARRAY *  psa  )  [static]

Definition at line 8869 of file win32ole.c.

References HRESULT(), ole_raise(), and rb_eRuntimeError.

Referenced by folevariant_ary_aref(), and folevariant_ary_aset().

static IDispatch* val2dispatch ( VALUE  val  )  [static]

Referenced by ole_val2variant().

static VOID * val2variant_ptr ( VALUE  val,
VARIANT *  var,
VARTYPE  vt 
) [static]

Definition at line 8934 of file win32ole.c.

References cWIN32OLE_lcid, get_ptr_of_variant(), HRESULT(), NULL, ole_raise(), ole_val2variant_ex(), rb_eRuntimeError, and rb_raise().

Referenced by folevariant_ary_aset(), and ole_set_safe_array().

static VALUE vtdate2rbtime ( double  date  )  [static]

Referenced by ole_variant2val().


Variable Documentation

VALUE ary_ole_event [static]

Definition at line 215 of file win32ole.c.

Referenced by evs_delete(), evs_entry(), evs_length(), evs_push(), and Init_win32ole().

REFIID LPOLESTR __RPC_FAR UINT cNames

Definition at line 305 of file win32ole.c.

VALUE com_hash [static]

Definition at line 233 of file win32ole.c.

Referenced by Init_win32ole().

IDispatchVtbl com_vtbl [static]

Definition at line 234 of file win32ole.c.

Referenced by Init_win32ole().

VALUE cWIN32OLE

Definition at line 203 of file win32ole.c.

Referenced by check_type_val2variant(), ev_advise(), fole_query_interface(), fole_s_const_load(), Init_win32ole(), ole_val2variant(), ole_variant2val(), and set_argv().

UINT cWIN32OLE_cp = CP_ACP [static]

Definition at line 235 of file win32ole.c.

Referenced by fole_s_get_code_page(), ole_mb2wc(), and ole_wc2mb_alloc().

rb_encoding* cWIN32OLE_enc [static]

Definition at line 237 of file win32ole.c.

Referenced by fole_missing(), and ole_alloc_vstr().

VALUE cWIN32OLE_EVENT

Definition at line 209 of file win32ole.c.

Referenced by EVENTSINK_Invoke(), and Init_win32ole().

LCID cWIN32OLE_lcid = LOCALE_SYSTEM_DEFAULT [static]

Definition at line 236 of file win32ole.c.

Referenced by find_default_source(), find_iid(), fole_each(), fole_respond_to(), fole_s_const_load(), fole_s_get_locale(), fole_s_set_locale(), fole_type(), fole_typelib(), foletypelib_path(), ole_hresult2msg(), ole_invoke(), ole_invoke2(), ole_propertyput(), ole_val2olevariantdata(), ole_variant2val(), typeinfo_from_ole(), and val2variant_ptr().

VALUE cWIN32OLE_METHOD

Definition at line 207 of file win32ole.c.

Referenced by fole_method_help(), fole_s_show_help(), foleparam_initialize(), Init_win32ole(), and ole_methods_sub().

VALUE cWIN32OLE_PARAM

Definition at line 208 of file win32ole.c.

Referenced by Init_win32ole(), and ole_method_params().

VALUE cWIN32OLE_PROPERTY

Definition at line 213 of file win32ole.c.

VALUE cWIN32OLE_TYPE

Definition at line 205 of file win32ole.c.

Referenced by fole_s_show_help(), folemethod_initialize(), Init_win32ole(), ole_type_from_itypeinfo(), and ole_types_from_typelib().

VALUE cWIN32OLE_TYPELIB

Definition at line 204 of file win32ole.c.

Referenced by foletype_s_ole_classes(), foletypelib_s_typelibs(), Init_win32ole(), and ole_typelib_from_itypeinfo().

VALUE cWIN32OLE_VARIABLE

Definition at line 206 of file win32ole.c.

Referenced by Init_win32ole(), and ole_variables().

VALUE cWIN32OLE_VARIANT

Definition at line 210 of file win32ole.c.

Referenced by check_type_val2variant(), Init_win32ole(), ole_invoke(), and ole_val2variant().

DISPID dispIdMember

Definition at line 306 of file win32ole.c.

st_table* enc2cp_table [static]

Definition at line 241 of file win32ole.c.

Referenced by free_enc2cp(), init_enc2cp(), and ole_vstr2wc().

VALUE eWIN32OLERuntimeError

Definition at line 211 of file win32ole.c.

Referenced by ev_on_event(), fole_activex_initialize(), fole_each(), fole_initialize(), fole_method_help(), fole_query_interface(), fole_s_connect(), fole_s_const_load(), fole_s_create_guid(), fole_s_set_locale(), folemethod_initialize(), foletype_initialize(), foletypelib_initialize(), foletypelib_library_name(), foletypelib_name(), foletypelib_path(), folevariant_ary_aref(), folevariant_ary_aset(), folevariant_set_value(), Init_win32ole(), ole_bind_obj(), ole_cp2encoding(), ole_create_dcom(), ole_invoke(), ole_invoke2(), ole_mb2wc(), ole_method_invkind(), ole_method_return_type(), ole_method_return_vtype(), ole_method_sub(), ole_methods_from_typeinfo(), ole_methods_sub(), ole_propertyput(), ole_set_byref(), ole_set_safe_array(), ole_type_major_version(), ole_type_minor_version(), ole_type_typekind(), ole_val2olevariantdata(), ole_variable_ole_type(), ole_variable_ole_type_detail(), ole_variables(), ole_vstr2wc(), ole_wc2mb_alloc(), olemethod_from_typeinfo(), and oletypelib_get_libattr().

BOOL g_cp_installed = FALSE [static]

Definition at line 228 of file win32ole.c.

Referenced by code_page_installed(), and installed_code_page_proc().

UINT g_cp_to_check = CP_ACP [static]

Definition at line 238 of file win32ole.c.

Referenced by code_page_installed(), and installed_code_page_proc().

BOOL g_IsEventSinkVtblInitialized = FALSE [static]

Definition at line 7603 of file win32ole.c.

BOOL g_lcid_installed = FALSE [static]

Definition at line 229 of file win32ole.c.

Referenced by installed_lcid_proc(), and lcid_installed().

char g_lcid_to_check[8+1] [static]

Definition at line 239 of file win32ole.c.

Referenced by installed_lcid_proc(), and lcid_installed().

VARTYPE g_nil_to = VT_ERROR [static]

Definition at line 240 of file win32ole.c.

Referenced by ole_val2variant(), and ole_val2variant2().

volatile DWORD g_ole_initialized_key = TLS_OUT_OF_INDEXES [static]

Definition at line 222 of file win32ole.c.

BOOL g_uninitialize_hooked = FALSE [static]

Definition at line 227 of file win32ole.c.

Referenced by ole_initialize().

FNCOCREATEINSTANCEEX* gCoCreateInstanceEx = NULL [static]

Definition at line 232 of file win32ole.c.

Referenced by ole_create_dcom().

HINSTANCE ghhctrl = NULL [static]

Definition at line 230 of file win32ole.c.

Referenced by ole_show_help().

HINSTANCE gole32 = NULL [static]

Definition at line 231 of file win32ole.c.

Referenced by ole_create_dcom().

ID id_events [static]

Definition at line 216 of file win32ole.c.

Referenced by add_event_call_back(), EVENTSINK_Invoke(), fev_initialize(), fev_off_event(), and Init_win32ole().

IMessageFilter imessage_filter = { &message_filter } [static]

Definition at line 243 of file win32ole.c.

Referenced by ole_initialize().

UINT iTInfo

Definition at line 304 of file win32ole.c.

DISPID REFIID LCID lcid

Definition at line 306 of file win32ole.c.

REFIID LPOLESTR __RPC_FAR UINT LCID lcid

Definition at line 305 of file win32ole.c.

UINT LCID lcid

Definition at line 304 of file win32ole.c.

IMessageFilterVtbl message_filter [static]

Definition at line 242 of file win32ole.c.

Referenced by Init_win32ole().

VALUE mWIN32OLE_VARIANT

Definition at line 212 of file win32ole.c.

Referenced by Init_win32ole().

UINT __RPC_FAR* pctinfo

Definition at line 303 of file win32ole.c.

DISPID REFIID LCID WORD DISPPARAMS __RPC_FAR* pDispParams

Definition at line 306 of file win32ole.c.

DISPID REFIID LCID WORD DISPPARAMS __RPC_FAR VARIANT __RPC_FAR EXCEPINFO __RPC_FAR* pExcepInfo

Definition at line 306 of file win32ole.c.

UINT LCID ITypeInfo __RPC_FAR* __RPC_FAR* ppTInfo

Definition at line 304 of file win32ole.c.

REFIID void __RPC_FAR* __RPC_FAR* ppvObject

Definition at line 300 of file win32ole.c.

IMessageFilter* previous_filter [static]

Definition at line 244 of file win32ole.c.

DISPID REFIID LCID WORD DISPPARAMS __RPC_FAR VARIANT __RPC_FAR EXCEPINFO __RPC_FAR UINT __RPC_FAR* puArgErr

Definition at line 306 of file win32ole.c.

DISPID REFIID LCID WORD DISPPARAMS __RPC_FAR VARIANT __RPC_FAR* pVarResult

Definition at line 306 of file win32ole.c.

REFIID LPOLESTR __RPC_FAR UINT LCID DISPID __RPC_FAR* rgDispId

Definition at line 305 of file win32ole.c.

REFIID LPOLESTR __RPC_FAR* rgszNames

Definition at line 305 of file win32ole.c.

REFIID riid

Definition at line 705 of file win32ole.c.

REFIID riid

Definition at line 603 of file win32ole.c.

DISPID REFIID riid

Definition at line 306 of file win32ole.c.

REFIID riid

Definition at line 305 of file win32ole.c.

REFIID riid

Definition at line 300 of file win32ole.c.

IEventSinkVtbl vtEventSink [static]

Definition at line 7602 of file win32ole.c.

Referenced by EVENTSINK_Constructor().

DISPID REFIID LCID WORD wFlags

Definition at line 306 of file win32ole.c.


Generated on 19 Jul 2016 for Ruby by  doxygen 1.4.7