Namazu-devel-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: moving OLE filters
From: Ryuji Abe <raeva@xxxxxxxxxxxx> さん曰く
Subject: [namazu-devel-ja] Re: moving OLE filters
Message-ID: <38C3881E.379779EF@xxxxxxxxxxxx>
Date: Mon, 06 Mar 2000 19:27:42 +0900
阿部> > 上記の修正をした後も Windows NT4.0 + ActivePerl Binary build 522 で
阿部> >
阿部> > % perl /usr/local/bin/mknmz --help
阿部> > Undefined subroutine &excel::mediatype called at (eval 2) line 1.
阿部> >
阿部> > というエラーになります。filter/win32/ 以下の file名を変えるか、
阿部> > package で file 名を指定するとエラーは無くなるのですが、
阿部>
阿部> こちらは、フィルター名をoleプレフィックスを
阿部> つけたものに変更しておきました。
ありがとうございます。check out して確かめました。win32 は OLE
方面でいろいろありそうなので、実験してみようとおもいます。
# 私自身も MS-Office ってほとんど使わないのですけど。。。
# 業務からも追放したい。。。;_;
で、もう一点 Win32::OLE 関連なのですが、
(WinNT4.0 上の) mknmz で
% perl /usr/local/bin/mknmz --show-config
読み込んだ設定ファイル: /usr/local/etc/namazu/mknmzrc
システム: MSWin32
Namazu: 2.0.2
Perl: 5.00503
... snip ...
対応メディアタイプ:
application/ichitaro4
application/ichitaro5
application/ichitaro6
application/pdf
application/powerpoint
application/x-bzip2
application/x-compress
application/x-gzip
となります。
WinNT 上では msword.pl や excel.pl で要求されるものは一切持って
いません。msword.pl や excel.pl を msword.plz, excel.plz とちょっ
と名前を変えておくと、
% perl /usr/local/bin/mknmz --show-config
... snip ...
対応メディアタイプ:
application/excel <==
application/ichitaro4
application/ichitaro5
application/ichitaro6
application/msword <==
application/pdf
application/powerpoint
application/x-bzip2
application/x-compress
application/x-gzip
と msword と excel が win32/ole*.pl の filter で合致するので出て来ます。
sub load_moludes (){
... snip ...
#
# Windows modules must be loaded first.
# Because OLE filters have low precedence over normal ones.
#
load_win32modules() if $SYSTEM eq "MSWin32";
... snip ...
load_filters(@filters);
}
という順番になっていて、あとから上書きされているからだと思います。
load_win32modules() を最後に書けば OK だったのですが、must be
first ってあるから wvware を OLE で上書きしないようにしているの
でしょうね。
さらにもう一点、今度は MS-Office の入っていない Win95 な PC なの
ですが、
% perl /usr/local/bin/mknmz -C
Win32::OLE(0.1101) error 0x800401f3: "無効なクラス文字列です。" at (eval 9) line 1
Win32::OLE(0.1101) error 0x800401f3: "無効なクラス文字列です。" at (eval 15) line 1
Win32::OLE(0.1101) error 0x800401f3: "無効なクラス文字列です。" at (eval 21) line 1
... snip ...
対応メディアタイプ: には、MS-Word や Excel は出ないので幸せです
けど、mknmz を起動するたびに Win32::OLE に叱られます。
# MS 謹製 の MS-Word, excel, powerpoint の各 Viewer は(しょうが
# ないので)いれていますけど。。。これが関係するのかどうかはわか
# りません。
## 各 Viewer が入っているからこうなるのなら問題は無いと思うので
## すが、私の回りではその点を確認できる PC がありません。
しかし、上記2点どうすりゃいいんでしょうねぇ。--ole の復活ぐらい
しか、ちょっと思い付きません。^^;;;
--
白井秀行 (mailto:shirai@xxxxxxxxxxxxxxxxxxx)