diff options
author | suke <suke@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2006-06-16 15:11:53 +0000 |
---|---|---|
committer | suke <suke@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2006-06-16 15:11:53 +0000 |
commit | 04d2c873b88af2858826437c349014a3922ad52c (patch) | |
tree | 3a73e4054c0a0ac914e2df792292bad718f2c0ae /ext/win32ole | |
parent | 20359b9bb2d678e409ebf929aa21285d260cbf12 (diff) |
support PROPERTYPUTREF. [ruby-talk:183042]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10280 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/win32ole')
-rw-r--r-- | ext/win32ole/tests/test_propertyputref.rb | 19 | ||||
-rw-r--r-- | ext/win32ole/tests/testall.rb | 1 | ||||
-rw-r--r-- | ext/win32ole/win32ole.c | 4 |
3 files changed, 22 insertions, 2 deletions
diff --git a/ext/win32ole/tests/test_propertyputref.rb b/ext/win32ole/tests/test_propertyputref.rb new file mode 100644 index 0000000000..742a53b578 --- /dev/null +++ b/ext/win32ole/tests/test_propertyputref.rb @@ -0,0 +1,19 @@ +require 'test/unit' +require 'win32ole' + +class TestWIN32OLE_PROPERTYPUTREF < Test::Unit::TestCase + def setup + begin + @sapi = WIN32OLE.new('SAPI.SpVoice') + rescue WIN32OLERuntimeErro + @sapi = nil + end + end + def test_sapi + if @sapi + new_id = @sapi.getvoices.item(2).Id + @sapi.voice = @sapi.getvoices.item(2) + assert_equal(new_id, @sapi.voice.Id) + end + end +end diff --git a/ext/win32ole/tests/testall.rb b/ext/win32ole/tests/testall.rb index 2ae4a88986..51727d874d 100644 --- a/ext/win32ole/tests/testall.rb +++ b/ext/win32ole/tests/testall.rb @@ -10,4 +10,5 @@ require "testOLEVARIABLE" require "testVARIANT" require "testNIL2VTEMPTY" require "test_ole_methods.rb" +require "test_propertyputref.rb" # require "testOLEEVENT" diff --git a/ext/win32ole/win32ole.c b/ext/win32ole/win32ole.c index cb6b1673d3..96a2c096ed 100644 --- a/ext/win32ole/win32ole.c +++ b/ext/win32ole/win32ole.c @@ -78,7 +78,7 @@ #define WC2VSTR(x) ole_wc2vstr((x), TRUE) -#define WIN32OLE_VERSION "0.6.7" +#define WIN32OLE_VERSION "0.6.8" typedef HRESULT (STDAPICALLTYPE FNCOCREATEINSTANCEEX) (REFCLSID, IUnknown*, DWORD, COSERVERINFO*, DWORD, MULTI_QI*); @@ -2495,7 +2495,7 @@ ole_propertyput(self, property, value) EXCEPINFO excepinfo; DISPID dispID = DISPID_VALUE; DISPID dispIDParam = DISPID_PROPERTYPUT; - USHORT wFlags = DISPATCH_PROPERTYPUT; + USHORT wFlags = DISPATCH_PROPERTYPUT|DISPATCH_PROPERTYPUTREF; DISPPARAMS dispParams; VARIANTARG propertyValue[2]; OLECHAR* pBuf[1]; |