win32ole 1.8.9 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.document +4 -0
- data/{LICENSE.txt → BSDL} +3 -3
- data/COPYING +56 -0
- data/ext/win32ole/.document +1 -0
- data/ext/win32ole/win32ole.c +70 -134
- data/ext/win32ole/win32ole_error.c +13 -4
- data/ext/win32ole/win32ole_event.c +26 -25
- data/ext/win32ole/win32ole_method.c +64 -63
- data/ext/win32ole/win32ole_param.c +57 -56
- data/ext/win32ole/win32ole_record.c +26 -25
- data/ext/win32ole/win32ole_type.c +73 -69
- data/ext/win32ole/win32ole_typelib.c +38 -37
- data/ext/win32ole/win32ole_variable.c +19 -18
- data/ext/win32ole/win32ole_variant.c +34 -33
- data/ext/win32ole/win32ole_variant_m.c +7 -5
- data/lib/win32ole/property.rb +15 -3
- data/lib/win32ole.rb +1 -2
- data/{ext/win32ole/sample → sample/win32ole}/olegen.rb +2 -2
- metadata +22 -31
- data/.git-blame-ignore-revs +0 -7
- data/.github/dependabot.yml +0 -6
- data/.github/workflows/windows.yml +0 -24
- data/.gitignore +0 -8
- data/Gemfile +0 -7
- data/Rakefile +0 -19
- data/bin/console +0 -14
- data/bin/setup +0 -8
- data/rakelib/changelogs.rake +0 -34
- data/rakelib/epoch.rake +0 -5
- data/rakelib/sync_tool.rake +0 -6
- data/rakelib/version.rake +0 -45
- data/win32ole.gemspec +0 -22
- /data/{ext/win32ole/sample → sample/win32ole}/excel1.rb +0 -0
- /data/{ext/win32ole/sample → sample/win32ole}/excel2.rb +0 -0
- /data/{ext/win32ole/sample → sample/win32ole}/excel3.rb +0 -0
- /data/{ext/win32ole/sample → sample/win32ole}/ie.rb +0 -0
- /data/{ext/win32ole/sample → sample/win32ole}/ieconst.rb +0 -0
- /data/{ext/win32ole/sample → sample/win32ole}/ienavi.rb +0 -0
- /data/{ext/win32ole/sample → sample/win32ole}/ienavi2.rb +0 -0
- /data/{ext/win32ole/sample → sample/win32ole}/oledirs.rb +0 -0
- /data/{ext/win32ole/sample → sample/win32ole}/xml.rb +0 -0
@@ -43,9 +43,9 @@ olevariable_size(const void *ptr)
|
|
43
43
|
}
|
44
44
|
|
45
45
|
/*
|
46
|
-
* Document-class:
|
46
|
+
* Document-class: WIN32OLE::Variable
|
47
47
|
*
|
48
|
-
*
|
48
|
+
* +WIN32OLE::Variable+ objects represent OLE variable information.
|
49
49
|
*/
|
50
50
|
|
51
51
|
VALUE
|
@@ -63,11 +63,11 @@ create_win32ole_variable(ITypeInfo *pTypeInfo, UINT index, VALUE name)
|
|
63
63
|
|
64
64
|
/*
|
65
65
|
* call-seq:
|
66
|
-
*
|
66
|
+
* name
|
67
67
|
*
|
68
68
|
* Returns the name of variable.
|
69
69
|
*
|
70
|
-
* tobj =
|
70
|
+
* tobj = WIN32OLE::Type.new('Microsoft Excel 9.0 Object Library', 'XlSheetType')
|
71
71
|
* variables = tobj.variables
|
72
72
|
* variables.each do |variable|
|
73
73
|
* puts "#{variable.name}"
|
@@ -103,11 +103,11 @@ ole_variable_ole_type(ITypeInfo *pTypeInfo, UINT var_index)
|
|
103
103
|
|
104
104
|
/*
|
105
105
|
* call-seq:
|
106
|
-
*
|
106
|
+
* ole_type
|
107
107
|
*
|
108
108
|
* Returns OLE type string.
|
109
109
|
*
|
110
|
-
* tobj =
|
110
|
+
* tobj = WIN32OLE::Type.new('Microsoft Excel 9.0 Object Library', 'XlSheetType')
|
111
111
|
* variables = tobj.variables
|
112
112
|
* variables.each do |variable|
|
113
113
|
* puts "#{variable.ole_type} #{variable.name}"
|
@@ -145,11 +145,11 @@ ole_variable_ole_type_detail(ITypeInfo *pTypeInfo, UINT var_index)
|
|
145
145
|
|
146
146
|
/*
|
147
147
|
* call-seq:
|
148
|
-
*
|
148
|
+
* ole_type_detail
|
149
149
|
*
|
150
150
|
* Returns detail information of type. The information is array of type.
|
151
151
|
*
|
152
|
-
* tobj =
|
152
|
+
* tobj = WIN32OLE::Type.new('DirectX 7 for Visual Basic Type Library', 'D3DCLIPSTATUS')
|
153
153
|
* variable = tobj.variables.find {|variable| variable.name == 'lFlags'}
|
154
154
|
* tdetail = variable.ole_type_detail
|
155
155
|
* p tdetail # => ["USERDEFINED", "CONST_D3DCLIPSTATUSFLAGS"]
|
@@ -180,12 +180,12 @@ ole_variable_value(ITypeInfo *pTypeInfo, UINT var_index)
|
|
180
180
|
|
181
181
|
/*
|
182
182
|
* call-seq:
|
183
|
-
*
|
183
|
+
* value
|
184
184
|
*
|
185
185
|
* Returns value if value is exists. If the value does not exist,
|
186
186
|
* this method returns nil.
|
187
187
|
*
|
188
|
-
* tobj =
|
188
|
+
* tobj = WIN32OLE::Type.new('Microsoft Excel 9.0 Object Library', 'XlSheetType')
|
189
189
|
* variables = tobj.variables
|
190
190
|
* variables.each do |variable|
|
191
191
|
* puts "#{variable.name} #{variable.value}"
|
@@ -227,11 +227,11 @@ ole_variable_visible(ITypeInfo *pTypeInfo, UINT var_index)
|
|
227
227
|
|
228
228
|
/*
|
229
229
|
* call-seq:
|
230
|
-
*
|
230
|
+
* visible?
|
231
231
|
*
|
232
232
|
* Returns true if the variable is public.
|
233
233
|
*
|
234
|
-
* tobj =
|
234
|
+
* tobj = WIN32OLE::Type.new('Microsoft Excel 9.0 Object Library', 'XlSheetType')
|
235
235
|
* variables = tobj.variables
|
236
236
|
* variables.each do |variable|
|
237
237
|
* puts "#{variable.name} #{variable.visible?}"
|
@@ -284,11 +284,11 @@ ole_variable_kind(ITypeInfo *pTypeInfo, UINT var_index)
|
|
284
284
|
|
285
285
|
/*
|
286
286
|
* call-seq:
|
287
|
-
*
|
287
|
+
* variable_kind
|
288
288
|
*
|
289
289
|
* Returns variable kind string.
|
290
290
|
*
|
291
|
-
* tobj =
|
291
|
+
* tobj = WIN32OLE::Type.new('Microsoft Excel 9.0 Object Library', 'XlSheetType')
|
292
292
|
* variables = tobj.variables
|
293
293
|
* variables.each do |variable|
|
294
294
|
* puts "#{variable.name} #{variable.variable_kind}"
|
@@ -325,10 +325,10 @@ ole_variable_varkind(ITypeInfo *pTypeInfo, UINT var_index)
|
|
325
325
|
|
326
326
|
/*
|
327
327
|
* call-seq:
|
328
|
-
*
|
328
|
+
* varkind
|
329
329
|
*
|
330
330
|
* Returns the number which represents variable kind.
|
331
|
-
* tobj =
|
331
|
+
* tobj = WIN32OLE::Type.new('Microsoft Excel 9.0 Object Library', 'XlSheetType')
|
332
332
|
* variables = tobj.variables
|
333
333
|
* variables.each do |variable|
|
334
334
|
* puts "#{variable.name} #{variable.varkind}"
|
@@ -351,7 +351,7 @@ folevariable_varkind(VALUE self)
|
|
351
351
|
|
352
352
|
/*
|
353
353
|
* call-seq:
|
354
|
-
*
|
354
|
+
* inspect -> String
|
355
355
|
*
|
356
356
|
* Returns the OLE variable name and the value with class name.
|
357
357
|
*
|
@@ -362,7 +362,7 @@ folevariable_inspect(VALUE self)
|
|
362
362
|
VALUE v = rb_inspect(folevariable_value(self));
|
363
363
|
VALUE n = folevariable_name(self);
|
364
364
|
VALUE detail = rb_sprintf("%"PRIsVALUE"=%"PRIsVALUE, n, v);
|
365
|
-
return make_inspect("
|
365
|
+
return make_inspect("WIN32OLE::Variable", detail);
|
366
366
|
}
|
367
367
|
|
368
368
|
VALUE cWIN32OLE_VARIABLE;
|
@@ -370,6 +370,7 @@ VALUE cWIN32OLE_VARIABLE;
|
|
370
370
|
void Init_win32ole_variable(void)
|
371
371
|
{
|
372
372
|
cWIN32OLE_VARIABLE = rb_define_class_under(cWIN32OLE, "Variable", rb_cObject);
|
373
|
+
/* Alias of WIN32OLE::Variable, for the backward compatibility */
|
373
374
|
rb_define_const(rb_cObject, "WIN32OLE_VARIABLE", cWIN32OLE_VARIABLE);
|
374
375
|
rb_undef_alloc_func(cWIN32OLE_VARIABLE);
|
375
376
|
rb_define_method(cWIN32OLE_VARIABLE, "name", folevariable_name, 0);
|
@@ -267,7 +267,7 @@ folevariant_s_allocate(VALUE klass)
|
|
267
267
|
|
268
268
|
/*
|
269
269
|
* call-seq:
|
270
|
-
*
|
270
|
+
* array(ary, vt)
|
271
271
|
*
|
272
272
|
* Returns Ruby object wrapping OLE variant whose variant type is VT_ARRAY.
|
273
273
|
* The first argument should be Array object which specifies dimensions
|
@@ -277,7 +277,7 @@ folevariant_s_allocate(VALUE klass)
|
|
277
277
|
* The following create 2 dimensions OLE array. The first dimensions size
|
278
278
|
* is 3, and the second is 4.
|
279
279
|
*
|
280
|
-
* ole_ary =
|
280
|
+
* ole_ary = WIN32OLE::Variant.array([3,4], VT_I4)
|
281
281
|
* ruby_ary = ole_ary.value # => [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
|
282
282
|
*
|
283
283
|
*/
|
@@ -357,44 +357,44 @@ check_type_val2variant(VALUE val)
|
|
357
357
|
case T_NIL:
|
358
358
|
break;
|
359
359
|
default:
|
360
|
-
rb_raise(rb_eTypeError, "can not convert
|
360
|
+
rb_raise(rb_eTypeError, "can not convert WIN32OLE::Variant from type %s",
|
361
361
|
rb_obj_classname(val));
|
362
362
|
}
|
363
363
|
}
|
364
364
|
}
|
365
365
|
|
366
366
|
/*
|
367
|
-
* Document-class:
|
367
|
+
* Document-class: WIN32OLE::Variant
|
368
368
|
*
|
369
|
-
*
|
369
|
+
* +WIN32OLE::Variant+ objects represents OLE variant.
|
370
370
|
*
|
371
371
|
* Win32OLE converts Ruby object into OLE variant automatically when
|
372
372
|
* invoking OLE methods. If OLE method requires the argument which is
|
373
373
|
* different from the variant by automatic conversion of Win32OLE, you
|
374
|
-
* can convert the specified variant type by using
|
374
|
+
* can convert the specified variant type by using WIN32OLE::Variant class.
|
375
375
|
*
|
376
|
-
* param =
|
376
|
+
* param = WIN32OLE::Variant.new(10, WIN32OLE::VARIANT::VT_R4)
|
377
377
|
* oleobj.method(param)
|
378
378
|
*
|
379
|
-
*
|
380
|
-
* class instead of
|
379
|
+
* WIN32OLE::Variant does not support VT_RECORD variant. Use WIN32OLE::Record
|
380
|
+
* class instead of WIN32OLE::Variant if the VT_RECORD variant is needed.
|
381
381
|
*/
|
382
382
|
|
383
383
|
/*
|
384
384
|
* call-seq:
|
385
|
-
*
|
385
|
+
* new(val, vartype) #=> WIN32OLE::Variant object.
|
386
386
|
*
|
387
387
|
* Returns Ruby object wrapping OLE variant.
|
388
388
|
* The first argument specifies Ruby object to convert OLE variant variable.
|
389
389
|
* The second argument specifies VARIANT type.
|
390
|
-
* In some situation, you need the
|
390
|
+
* In some situation, you need the WIN32OLE::Variant object to pass OLE method
|
391
391
|
*
|
392
392
|
* shell = WIN32OLE.new("Shell.Application")
|
393
393
|
* folder = shell.NameSpace("C:\\Windows")
|
394
394
|
* item = folder.ParseName("tmp.txt")
|
395
395
|
* # You can't use Ruby String object to call FolderItem.InvokeVerb.
|
396
|
-
* # Instead, you have to use
|
397
|
-
* shortcut =
|
396
|
+
* # Instead, you have to use WIN32OLE::Variant object to call the method.
|
397
|
+
* shortcut = WIN32OLE::Variant.new("Create Shortcut(\&S)")
|
398
398
|
* item.invokeVerb(shortcut)
|
399
399
|
*
|
400
400
|
*/
|
@@ -422,7 +422,7 @@ folevariant_initialize(VALUE self, VALUE args)
|
|
422
422
|
vvt = rb_ary_entry(args, 1);
|
423
423
|
vt = RB_NUM2INT(vvt);
|
424
424
|
if ((vt & VT_TYPEMASK) == VT_RECORD) {
|
425
|
-
rb_raise(rb_eArgError, "not supported VT_RECORD
|
425
|
+
rb_raise(rb_eArgError, "not supported VT_RECORD WIN32OLE::Variant object");
|
426
426
|
}
|
427
427
|
ole_val2olevariantdata(val, vt, pvar);
|
428
428
|
}
|
@@ -482,22 +482,22 @@ unlock_safe_array(SAFEARRAY *psa)
|
|
482
482
|
|
483
483
|
/*
|
484
484
|
* call-seq:
|
485
|
-
*
|
485
|
+
* variant[i,j,...] #=> element of OLE array.
|
486
486
|
*
|
487
|
-
* Returns the element of
|
487
|
+
* Returns the element of WIN32OLE::Variant object(OLE array).
|
488
488
|
* This method is available only when the variant type of
|
489
|
-
*
|
489
|
+
* WIN32OLE::Variant object is VT_ARRAY.
|
490
490
|
*
|
491
491
|
* REMARK:
|
492
492
|
* The all indices should be 0 or natural number and
|
493
493
|
* lower than or equal to max indices.
|
494
494
|
* (This point is different with Ruby Array indices.)
|
495
495
|
*
|
496
|
-
* obj =
|
496
|
+
* obj = WIN32OLE::Variant.new([[1,2,3],[4,5,6]])
|
497
497
|
* p obj[0,0] # => 1
|
498
498
|
* p obj[1,0] # => 4
|
499
|
-
* p obj[2,0] # =>
|
500
|
-
* p obj[0, -1] # =>
|
499
|
+
* p obj[2,0] # => WIN32OLE::RuntimeError
|
500
|
+
* p obj[0, -1] # => WIN32OLE::RuntimeError
|
501
501
|
*
|
502
502
|
*/
|
503
503
|
static VALUE
|
@@ -537,23 +537,23 @@ folevariant_ary_aref(int argc, VALUE *argv, VALUE self)
|
|
537
537
|
|
538
538
|
/*
|
539
539
|
* call-seq:
|
540
|
-
*
|
540
|
+
* variant[i,j,...] = val #=> set the element of OLE array
|
541
541
|
*
|
542
|
-
* Set the element of
|
542
|
+
* Set the element of WIN32OLE::Variant object(OLE array) to val.
|
543
543
|
* This method is available only when the variant type of
|
544
|
-
*
|
544
|
+
* WIN32OLE::Variant object is VT_ARRAY.
|
545
545
|
*
|
546
546
|
* REMARK:
|
547
547
|
* The all indices should be 0 or natural number and
|
548
548
|
* lower than or equal to max indices.
|
549
549
|
* (This point is different with Ruby Array indices.)
|
550
550
|
*
|
551
|
-
* obj =
|
551
|
+
* obj = WIN32OLE::Variant.new([[1,2,3],[4,5,6]])
|
552
552
|
* obj[0,0] = 7
|
553
553
|
* obj[1,0] = 8
|
554
554
|
* p obj.value # => [[7,2,3], [8,5,6]]
|
555
|
-
* obj[2,0] = 9 # =>
|
556
|
-
* obj[0, -1] = 9 # =>
|
555
|
+
* obj[2,0] = 9 # => WIN32OLE::RuntimeError
|
556
|
+
* obj[0, -1] = 9 # => WIN32OLE::RuntimeError
|
557
557
|
*
|
558
558
|
*/
|
559
559
|
static VALUE
|
@@ -598,10 +598,10 @@ folevariant_ary_aset(int argc, VALUE *argv, VALUE self)
|
|
598
598
|
|
599
599
|
/*
|
600
600
|
* call-seq:
|
601
|
-
*
|
601
|
+
* value #=> Ruby object.
|
602
602
|
*
|
603
603
|
* Returns Ruby object value from OLE variant.
|
604
|
-
* obj =
|
604
|
+
* obj = WIN32OLE::Variant.new(1, WIN32OLE::VARIANT::VT_BSTR)
|
605
605
|
* obj.value # => "1" (not Integer object, but String object "1")
|
606
606
|
*
|
607
607
|
*/
|
@@ -637,10 +637,10 @@ folevariant_value(VALUE self)
|
|
637
637
|
|
638
638
|
/*
|
639
639
|
* call-seq:
|
640
|
-
*
|
640
|
+
* vartype #=> OLE variant type.
|
641
641
|
*
|
642
642
|
* Returns OLE variant type.
|
643
|
-
* obj =
|
643
|
+
* obj = WIN32OLE::Variant.new("string")
|
644
644
|
* obj.vartype # => WIN32OLE::VARIANT::VT_BSTR
|
645
645
|
*
|
646
646
|
*/
|
@@ -654,7 +654,7 @@ folevariant_vartype(VALUE self)
|
|
654
654
|
|
655
655
|
/*
|
656
656
|
* call-seq:
|
657
|
-
*
|
657
|
+
* variant.value = val #=> set WIN32OLE::Variant value to val.
|
658
658
|
*
|
659
659
|
* Sets variant value to val. If the val type does not match variant value
|
660
660
|
* type(vartype), then val is changed to match variant value type(vartype)
|
@@ -662,7 +662,7 @@ folevariant_vartype(VALUE self)
|
|
662
662
|
* This method is not available when vartype is VT_ARRAY(except VT_UI1|VT_ARRAY).
|
663
663
|
* If the vartype is VT_UI1|VT_ARRAY, the val should be String object.
|
664
664
|
*
|
665
|
-
* obj =
|
665
|
+
* obj = WIN32OLE::Variant.new(1) # obj.vartype is WIN32OLE::VARIANT::VT_I4
|
666
666
|
* obj.value = 3.2 # 3.2 is changed to 3 when setting value.
|
667
667
|
* p obj.value # => 3
|
668
668
|
*/
|
@@ -696,6 +696,7 @@ Init_win32ole_variant(void)
|
|
696
696
|
{
|
697
697
|
#undef rb_intern
|
698
698
|
cWIN32OLE_VARIANT = rb_define_class_under(cWIN32OLE, "Variant", rb_cObject);
|
699
|
+
/* Alias of WIN32OLE::Variant, for the backward compatibility */
|
699
700
|
rb_define_const(rb_cObject, "WIN32OLE_VARIANT", cWIN32OLE_VARIANT);
|
700
701
|
rb_define_alloc_func(cWIN32OLE_VARIANT, folevariant_s_allocate);
|
701
702
|
rb_define_singleton_method(cWIN32OLE_VARIANT, "array", folevariant_s_array, 2);
|
@@ -729,7 +730,7 @@ Init_win32ole_variant(void)
|
|
729
730
|
* This constants is used for not specified parameter.
|
730
731
|
*
|
731
732
|
* fso = WIN32OLE.new("Scripting.FileSystemObject")
|
732
|
-
* fso.openTextFile(filename,
|
733
|
+
* fso.openTextFile(filename, WIN32OLE::Variant::NoParam, false)
|
733
734
|
*/
|
734
735
|
rb_define_const(cWIN32OLE_VARIANT, "NoParam",
|
735
736
|
rb_funcall(cWIN32OLE_VARIANT, rb_intern("new"), 2, INT2NUM(DISP_E_PARAMNOTFOUND), RB_INT2FIX(VT_ERROR)));
|
@@ -5,16 +5,18 @@ VALUE mWIN32OLE_VARIANT;
|
|
5
5
|
void Init_win32ole_variant_m(void)
|
6
6
|
{
|
7
7
|
/*
|
8
|
-
* Document-module: WIN32OLE::
|
8
|
+
* Document-module: WIN32OLE::VariantType
|
9
9
|
*
|
10
|
-
* The WIN32OLE::
|
11
|
-
* The constants is used when creating
|
10
|
+
* The +WIN32OLE::VariantType+ module includes constants of VARIANT type constants.
|
11
|
+
* The constants is used when creating WIN32OLE::Variant object.
|
12
12
|
*
|
13
|
-
* obj =
|
13
|
+
* obj = WIN32OLE::Variant.new("2e3", WIN32OLE::VARIANT::VT_R4)
|
14
14
|
* obj.value # => 2000.0
|
15
15
|
*
|
16
16
|
*/
|
17
|
-
mWIN32OLE_VARIANT = rb_define_module_under(cWIN32OLE, "
|
17
|
+
mWIN32OLE_VARIANT = rb_define_module_under(cWIN32OLE, "VariantType");
|
18
|
+
/* Alias of WIN32OLE::VariantType, for the backward compatibility */
|
19
|
+
rb_define_const(cWIN32OLE, "VARIANT", mWIN32OLE_VARIANT);
|
18
20
|
|
19
21
|
/*
|
20
22
|
* represents VT_EMPTY type constant.
|
data/lib/win32ole/property.rb
CHANGED
@@ -1,7 +1,12 @@
|
|
1
1
|
# frozen_string_literal: false
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
|
3
|
+
class WIN32OLE
|
4
|
+
end
|
5
|
+
|
6
|
+
# OLEProperty is a helper class of Property with arguments, used by
|
7
|
+
# `olegen.rb`-generated files.
|
8
|
+
class WIN32OLE::Property
|
9
|
+
# :stopdoc:
|
5
10
|
def initialize(obj, dispid, gettypes, settypes)
|
6
11
|
@obj = obj
|
7
12
|
@dispid = dispid
|
@@ -14,4 +19,11 @@ class OLEProperty
|
|
14
19
|
def []=(*args)
|
15
20
|
@obj._setproperty(@dispid, args, @settypes)
|
16
21
|
end
|
22
|
+
# :stopdoc:
|
23
|
+
end
|
24
|
+
|
25
|
+
module WIN32OLE::VariantType
|
26
|
+
# Alias for `olegen.rb`-generated files, that should include
|
27
|
+
# WIN32OLE::VARIANT.
|
28
|
+
OLEProperty = WIN32OLE::Property
|
17
29
|
end
|
data/lib/win32ole.rb
CHANGED
@@ -5,7 +5,6 @@ rescue LoadError
|
|
5
5
|
end
|
6
6
|
|
7
7
|
if defined?(WIN32OLE)
|
8
|
-
# WIN32OLE
|
9
8
|
class WIN32OLE
|
10
9
|
|
11
10
|
#
|
@@ -26,7 +25,7 @@ if defined?(WIN32OLE)
|
|
26
25
|
|
27
26
|
def ole_methods_safely
|
28
27
|
ole_methods
|
29
|
-
rescue
|
28
|
+
rescue WIN32OLE::QueryInterfaceError
|
30
29
|
[]
|
31
30
|
end
|
32
31
|
end
|
metadata
CHANGED
@@ -1,44 +1,30 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: win32ole
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Masaki Suketa
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-11-01 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Provides an interface for OLE Automation in Ruby
|
14
14
|
email:
|
15
15
|
- suke@ruby-lang.org
|
16
16
|
executables: []
|
17
|
-
extensions:
|
17
|
+
extensions:
|
18
|
+
- ext/win32ole/extconf.rb
|
18
19
|
extra_rdoc_files: []
|
19
20
|
files:
|
20
|
-
- ".
|
21
|
-
-
|
22
|
-
-
|
23
|
-
- ".gitignore"
|
24
|
-
- Gemfile
|
25
|
-
- LICENSE.txt
|
21
|
+
- ".document"
|
22
|
+
- BSDL
|
23
|
+
- COPYING
|
26
24
|
- README.md
|
27
|
-
-
|
28
|
-
- bin/console
|
29
|
-
- bin/setup
|
25
|
+
- ext/win32ole/.document
|
30
26
|
- ext/win32ole/depend
|
31
27
|
- ext/win32ole/extconf.rb
|
32
|
-
- ext/win32ole/sample/excel1.rb
|
33
|
-
- ext/win32ole/sample/excel2.rb
|
34
|
-
- ext/win32ole/sample/excel3.rb
|
35
|
-
- ext/win32ole/sample/ie.rb
|
36
|
-
- ext/win32ole/sample/ieconst.rb
|
37
|
-
- ext/win32ole/sample/ienavi.rb
|
38
|
-
- ext/win32ole/sample/ienavi2.rb
|
39
|
-
- ext/win32ole/sample/oledirs.rb
|
40
|
-
- ext/win32ole/sample/olegen.rb
|
41
|
-
- ext/win32ole/sample/xml.rb
|
42
28
|
- ext/win32ole/win32ole.c
|
43
29
|
- ext/win32ole/win32ole.h
|
44
30
|
- ext/win32ole/win32ole_error.c
|
@@ -63,11 +49,16 @@ files:
|
|
63
49
|
- ext/win32ole/win32ole_variant_m.h
|
64
50
|
- lib/win32ole.rb
|
65
51
|
- lib/win32ole/property.rb
|
66
|
-
-
|
67
|
-
-
|
68
|
-
-
|
69
|
-
-
|
70
|
-
- win32ole.
|
52
|
+
- sample/win32ole/excel1.rb
|
53
|
+
- sample/win32ole/excel2.rb
|
54
|
+
- sample/win32ole/excel3.rb
|
55
|
+
- sample/win32ole/ie.rb
|
56
|
+
- sample/win32ole/ieconst.rb
|
57
|
+
- sample/win32ole/ienavi.rb
|
58
|
+
- sample/win32ole/ienavi2.rb
|
59
|
+
- sample/win32ole/oledirs.rb
|
60
|
+
- sample/win32ole/olegen.rb
|
61
|
+
- sample/win32ole/xml.rb
|
71
62
|
homepage: https://github.com/ruby/win32ole
|
72
63
|
licenses:
|
73
64
|
- Ruby
|
@@ -75,7 +66,7 @@ licenses:
|
|
75
66
|
metadata:
|
76
67
|
homepage_uri: https://github.com/ruby/win32ole
|
77
68
|
source_code_uri: https://github.com/ruby/win32ole
|
78
|
-
post_install_message:
|
69
|
+
post_install_message:
|
79
70
|
rdoc_options: []
|
80
71
|
require_paths:
|
81
72
|
- lib
|
@@ -90,8 +81,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
90
81
|
- !ruby/object:Gem::Version
|
91
82
|
version: '0'
|
92
83
|
requirements: []
|
93
|
-
rubygems_version: 3.
|
94
|
-
signing_key:
|
84
|
+
rubygems_version: 3.5.11
|
85
|
+
signing_key:
|
95
86
|
specification_version: 4
|
96
87
|
summary: Provides an interface for OLE Automation in Ruby
|
97
88
|
test_files: []
|
data/.git-blame-ignore-revs
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
# This is a file used by GitHub to ignore the following commits on `git blame`.
|
2
|
-
#
|
3
|
-
# You can also do the same thing in your local repository with:
|
4
|
-
# $ git config --local blame.ignoreRevsFile .git-blame-ignore-revs
|
5
|
-
|
6
|
-
# Expand tabs
|
7
|
-
0667bd63edb6bffeaa59f7ebc3dbe42b82ac496d
|
data/.github/dependabot.yml
DELETED
@@ -1,24 +0,0 @@
|
|
1
|
-
name: windows
|
2
|
-
|
3
|
-
on: [push, pull_request]
|
4
|
-
|
5
|
-
jobs:
|
6
|
-
build:
|
7
|
-
name: ${{ matrix.os }} ${{ matrix.ruby }}
|
8
|
-
runs-on: ${{ matrix.os }}
|
9
|
-
strategy:
|
10
|
-
fail-fast: false
|
11
|
-
matrix:
|
12
|
-
os:
|
13
|
-
- windows-latest
|
14
|
-
ruby: [ '3.1', '3.0', '2.7', '2.6', 'mswin', 'mingw' ]
|
15
|
-
steps:
|
16
|
-
- uses: actions/checkout@v3
|
17
|
-
- name: Set up Ruby
|
18
|
-
uses: ruby/setup-ruby@v1
|
19
|
-
with:
|
20
|
-
ruby-version: ${{ matrix.ruby }}
|
21
|
-
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
22
|
-
- name: Run test
|
23
|
-
run: bundle exec rake
|
24
|
-
|
data/.gitignore
DELETED
data/Gemfile
DELETED
data/Rakefile
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
require "bundler/gem_tasks"
|
2
|
-
require "rake/testtask"
|
3
|
-
|
4
|
-
name = "win32ole"
|
5
|
-
|
6
|
-
require 'rake/extensiontask'
|
7
|
-
extask = Rake::ExtensionTask.new(name) do |x|
|
8
|
-
x.lib_dir << "/#{RUBY_VERSION}/#{x.platform}"
|
9
|
-
end
|
10
|
-
Rake::TestTask.new(:test) do |t|
|
11
|
-
t.libs << extask.lib_dir
|
12
|
-
t.libs << "test/lib"
|
13
|
-
t.libs << "lib"
|
14
|
-
t.ruby_opts << "-rhelper"
|
15
|
-
t.test_files = FileList["test/**/test_*.rb"]
|
16
|
-
end
|
17
|
-
|
18
|
-
task :default => :test
|
19
|
-
task :test => :compile
|
data/bin/console
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
|
3
|
-
require "bundler/setup"
|
4
|
-
require "win32ole"
|
5
|
-
|
6
|
-
# You can add fixtures and/or initialization code here to make experimenting
|
7
|
-
# with your gem easier. You can also use a different console, if you like.
|
8
|
-
|
9
|
-
# (If you use this, don't forget to add pry to your Gemfile!)
|
10
|
-
# require "pry"
|
11
|
-
# Pry.start
|
12
|
-
|
13
|
-
require "irb"
|
14
|
-
IRB.start(__FILE__)
|
data/bin/setup
DELETED
data/rakelib/changelogs.rake
DELETED
@@ -1,34 +0,0 @@
|
|
1
|
-
task "build" => "changelogs"
|
2
|
-
|
3
|
-
changelog = proc do |output, ver = nil, prev = nil|
|
4
|
-
ver &&= Gem::Version.new(ver)
|
5
|
-
range = [[prev], [ver, "HEAD"]].map {|ver, branch| ver ? "v#{ver.to_s}" : branch}.compact.join("..")
|
6
|
-
IO.popen(%W[git log --format=fuller --topo-order --no-merges #{range}]) do |log|
|
7
|
-
line = log.gets
|
8
|
-
FileUtils.mkpath(File.dirname(output))
|
9
|
-
File.open(output, "wb") do |f|
|
10
|
-
f.print "-*- coding: utf-8 -*-\n\n", line
|
11
|
-
log.each_line do |line|
|
12
|
-
line.sub!(/^(?!:)(?:Author|Commit)?(?:Date)?: /, ' \&')
|
13
|
-
line.sub!(/ +$/, '')
|
14
|
-
f.print(line)
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
tags = IO.popen(%w[git tag -l v[0-9]*]).grep(/v(.*)/) {$1}
|
21
|
-
tags.sort_by! {|tag| tag.scan(/\d+/).map(&:to_i)}
|
22
|
-
tags.inject(nil) do |prev, tag|
|
23
|
-
task("logs/ChangeLog-#{tag}") {|t| changelog[t.name, tag, prev]}
|
24
|
-
tag
|
25
|
-
end
|
26
|
-
|
27
|
-
desc "Make ChangeLog"
|
28
|
-
task "ChangeLog", [:ver, :prev] do |t, ver: nil, prev: tags.last|
|
29
|
-
changelog[t.name, ver, prev]
|
30
|
-
end
|
31
|
-
|
32
|
-
changelogs = ["ChangeLog", *tags.map {|tag| "logs/ChangeLog-#{tag}"}]
|
33
|
-
task "changelogs" => changelogs
|
34
|
-
CLOBBER.concat(changelogs) << "logs"
|
data/rakelib/epoch.rake
DELETED
data/rakelib/sync_tool.rake
DELETED