From: Akio Tajima Date: 2010-10-05T23:16:07+09:00 Subject: [ruby-dev:42338] [Ruby 1.9-Bug#3907][Open] WIN32OLE_TYPELIB Can't load while envvar in the pathname . --mimepart_4cab32e1cdafd_ef6c00b5fc1732d Content-Type: text/plain; charset=iso-2022-jp Content-Transfer-Encoding: Quoted-printable Content-Disposition: inline Bug #3907: WIN32OLE_TYPELIB Can't load while envvar in the pathname . http://redmine.ruby-lang.org/issues/show/3907 起票者: Akio Tajima ステータス: Open, 優先度: Normal カテゴリ: ext, Target version: 1.9.3 ruby -v: ruby 1.9.3dev (2010-10-05) [i386-mswin32_100] WIN32OLE_TYPELIB.newで、TypeLibのパス名に環境変数が含まれているとロードに失敗します。 以下のパッチで修正します。(REG_EXPAND_SZだった場合にExpnadEnvironmentStringsで展開) 添付のtest_win32ole_typelib.rbのパッチは、ADO 2.0のロードを試すものです。 ただし、ADO 2.0はWindows7ではREG_EXPAND_SZを使っていますが、Windows XPでは使っていないためテストとしてはいまいちです。 ---------------------------------------- http://redmine.ruby-lang.org --mimepart_4cab32e1cdafd_ef6c00b5fc1732d Content-Type: application/octet-stream; name=test_win32ole_typelib.patch Content-Transfer-Encoding: Base64 Content-Disposition: attachment; filename=test_win32ole_typelib.patch KioqIHRlc3Rfd2luMzJvbGVfdHlwZWxpYi5yYn4JVHVlIEp1bCAyNyAwMDow MDo1NiAyMDEwDQotLS0gdGVzdF93aW4zMm9sZV90eXBlbGliLnJiCVR1ZSBP Y3QgMDUgMjM6MDY6NTMgMjAxMA0KKioqKioqKioqKioqKioqIGlmIGRlZmlu ZWQ/KFdJTjMyT0xFX1RZUEVMSUIpDQoqKiogNDQsNDkgKioqKg0KLS0tIDQ0 LDUyIC0tLS0NCiAgICAgICAgYXNzZXJ0X3JhaXNlKFdJTjMyT0xFUnVudGlt ZUVycm9yKSB7DQogICAgICAgICAgV0lOMzJPTEVfVFlQRUxJQi5uZXcoIk5v biBFeGlzdCBUeXBlIExpYnJhcnkiKQ0KICAgICAgICB9DQorIA0KKyAgICAg ICB0bGliID0gV0lOMzJPTEVfVFlQRUxJQi5uZXcoIk1pY3Jvc29mdCBBY3Rp dmVYIERhdGEgT2JqZWN0cyAyLjAgTGlicmFyeSIpDQorICAgICAgIGFzc2Vy dF9pbnN0YW5jZV9vZihXSU4zMk9MRV9UWVBFTElCLCB0bGliKQ0KICAgICAg ZW5kDQogIA0KICAgICAgZGVmIHRlc3RfZ3VpZA0K --mimepart_4cab32e1cdafd_ef6c00b5fc1732d Content-Type: application/octet-stream; name=win32ole.patch Content-Transfer-Encoding: Base64 Content-Disposition: attachment; filename=win32ole.patch KioqIHdpbjMyb2xlLmN+CVR1ZSBTZXAgMTQgMjI6MDE6MDIgMjAxMA0KLS0t IHdpbjMyb2xlLmMJVHVlIE9jdCAwNSAyMzowMzoyMCAyMDEwDQoqKioqKioq KioqKioqKiogcmVnX2dldF92YWwoSEtFWSBoa2V5LCBjb25zdCBjaGFyICpz dWJrZQ0KKioqIDIzMzgsMjM0MyAqKioqDQotLS0gMjMzOCwyMzUwIC0tLS0N CiAgICAgICAgICBlcnIgPSBSZWdRdWVyeVZhbHVlRXgoaGtleSwgc3Via2V5 LCBOVUxMLCAmZHd0eXBlLCBwYnVmLCAmc2l6ZSk7DQogICAgICAgICAgaWYg KGVyciA9PSBFUlJPUl9TVUNDRVNTKSB7DQogICAgICAgICAgICAgIHBidWZb c2l6ZV0gPSAnXDAnOw0KKyAgICAgICAgICAgICBpZiAoZHd0eXBlID09IFJF R19FWFBBTkRfU1opIHsNCisgICAgICAgICAgICAgICAgIGNoYXIqIHBidWYy ID0gcGJ1ZjsNCisgICAgICAgICAgICAgICAgIERXT1JEIGxlbiA9IEV4cGFu ZEVudmlyb25tZW50U3RyaW5ncyhwYnVmMiwgTlVMTCwgMCk7DQorICAgICAg ICAgICAgICAgICBwYnVmID0gQUxMT0NfTihjaGFyLCBsZW4gKyAxKTsNCisg ICAgICAgICAgICAgICAgIEV4cGFuZEVudmlyb25tZW50U3RyaW5ncyhwYnVm MiwgcGJ1ZiwgbGVuICsgMSk7DQorICAgICAgICAgICAgICAgICBmcmVlKHBi dWYyKTsNCisgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICB2YWwgPSBy Yl9zdHJfbmV3MihwYnVmKTsNCiAgICAgICAgICB9DQogICAgICAgICAgZnJl ZShwYnVmKTsNCg== --mimepart_4cab32e1cdafd_ef6c00b5fc1732d--