[#35406] RE: win32ole で excel が終了しない — "Oka Yasushi" <oka@...>

こんにちは、岡といいます。

20 messages 2002/06/19
[#35407] Re: win32ole で excel が終了しない — Takashi Kanai <kanai@...4u.or.jp> 2002/06/19

金井です。

[#35408] Re: win32ole で excel が終了しない — Takashi Kanai <kanai@...4u.or.jp> 2002/06/19

金井です。

[#35412] Re: win32ole で excel が終了しない — "NAKAMURA, Hiroshi" <nakahiro@...> 2002/06/20

なひです。

[#35418] Re: win32ole で excel が終了しない — Takashi Kanai <kanai@...4u.or.jp> 2002/06/20

金井です。

[#35419] Re: win32ole で excel が終了しない — nobu.nakada@... 2002/06/21

なかだです。

[#35480] Re: 1.7 系を使っていますが、5月頃は式展開内のコメントが使えていましたが、今は使えなくなっていますね。 — "井上 浩一" <kyoui32@...>

=1B$B0f>e$G$9!#=1B(B

12 messages 2002/06/28
[#35490] Re: 1.7 系を使っていますが、5月頃は式展開内のコメントが使えていましたが、今は使えなくなっていますね。 — "Inoue" <rubyist@117.ne.jp> 2002/06/28

井上です。

[ruby-list:35439] Re: win32ole で excel が終了しない

From: arton <artonx@...>
Date: 2002-06-23 10:21:25 UTC
List: ruby-list #35439
artonです。

On Sun, 23 Jun 2002 18:52:16 +0900
Masaki Suketa <masaki.suketa@nifty.ne.jp> wrote:
--snip--
> 1.7系では、WIN32OLE.new が無くなって、WIN32OLE.allocate と WIN32OLE#initialize 
> になってます。allocateはメモリー確保で、initialize で初期化です。
そんなに変わるんですか……
実際には、
a = WIN32OLE.new(progid)
が
a = WIN32OLE.allocate.initialize(progid)
に変わるという認識で合ってますか?

> [ruby-list:35429]の方針で修正すれば、SEGVしないで、例外になるんで、それで
> いいですかね。
僕はいいと思います。理由のひとつは、ole_val2variantで、
if(rb_obj_is_kind_of(val, cWIN32OLE)) {
    Data_Get_Struct(val, struct oledata, pole);
    if (pole->pDispatch) {
        pole->pDispatch->lpVtbl->AddRef(pole->pDispatch); 
    }
    V_VT(var) = VT_DISPATCH;
    V_DISPATCH(var) = pole->pDispatch;
    return;
という処理が必要な局面があるらしいからです。(VT_I4やVT_BSTRであれば0や""
が使えますが、現時点では空のVT_DISPATCHというのは表現できません)
1.7では、
Nothing = WIN32OLE.allocate
として、以後、この定数をそのてのパラメータに利用できそうです。

> 
>   助田 雅紀

-- 
arton <artonx@yahoo.co.jp>

__________________________________________________
Do You Yahoo!?
Yahoo! BB is Broadband by Yahoo!  http://bb.yahoo.co.jp/

In This Thread