Namazu-devel-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: manual.html の内容が古いことについて



寺西 忠勝 様

Namazu の導入に際し、MS-Office 2003 を認識しない問題に関して検索中、
http://www.queen.ne.jp/iMA/showmail.pl?namazu-devel-ja=3681 にて、
記事を拝見しましたので、突然ですが、メールを差し上げております。

当方の環境:

Windows XP Pro SP1
Office 2003 Pro
AN HTTPD : バージョン 1.42k
ActivePerl : ActivePerl-5.6.1.628-MSWin32-x86-multi-thread.msi
KAKASI for Win32 : kakasi-2.3.4
Namazu for Win32 : Namazu 2.0.12
search-s for Namazu : srchs092.exe
Adobe Reader 6.0

とりあえずは、Office アプリを認識しない問題から始まり、
さきほど、すべての動作を確認いたしましたので、ご報告いたします。

>
oleexcel.pl
          Microsoft Excel文書を扱う
          必需品: Microsoft Excel 97 もしくは 2000

   olemsword.pl
          Microsoft Word文書を扱う
          必需品: Microsoft Word 97 もしくは 98 もしくは 2000

   olepowerpoint.pl
          Microsoft PowerPoint文書を扱う
          必需品: Microsoft PowerPoint 97 もしくは 2000

   oletaro.pl
          一太郎 (バージョン 4 〜 10) の文書を扱う
          必需品: Microsoft Word 97 もしくは 98 もしくは 2000

   olertf.pl
          RTF (Rich Text Format) 形式の文書を扱う
          必需品: Microsoft Word 97 もしくは 98 もしくは 2000

おそらく、2000 以降の 2002, 2003 でも動作するのではないかと
思います。こちらは動作確認していないので書き換えていません。
そろそろ全てのバージョンを列挙するのではなく、例えば Word 97 以降と
でも書いておけばよいのではないでしょうか。

>
当方、「一太郎」は所有しておりませんので、未確認ですが、
その他の動作は、インデックス作成、検索ともに、作動いたしました。

マニュアルにある、

excel.pl 
Microsoft Excel文書を扱う 
必需品: xlhtml, lv (Excel 97/98文書の場合) 
代替品: doccat

のあたりで、この「必需品」の使用方法が不明で、
しばし途方にくれていたのですが、
Windows に対するインストール方法の記載ページがないため、
当方の環境では不要と判断、プログラムの検証に移行いたしました。

書き換えた個所は以下のとおり。

oleexcel.pl

$const = Win32::OLE::Const->Load("Microsoft Excel 11.0 Object Library");
$const = Win32::OLE::Const->Load("Microsoft Excel 10.0 Object Library") unless $const;
$const = Win32::OLE::Const->Load("Microsoft Excel 9.0 Object Library") unless $const;


olemsword.pl

$const = Win32::OLE::Const->Load("Microsoft Word 11.0 Object Library");
$const = Win32::OLE::Const->Load("Microsoft Word 10.0 Object Library") unless $const;
$const = Win32::OLE::Const->Load("Microsoft Word 9.0 Object Library") unless $const;


olepowerpoint.pl

$const = Win32::OLE::Const->Load("Microsoft PowerPoint 11.0 Object Library");
$const = Win32::OLE::Const->Load("Microsoft PowerPoint 10.0 Object Library") unless $const;
$const = Win32::OLE::Const->Load("Microsoft PowerPoint 9.0 Object Library") unless $const;


olertf.pl

$const = Win32::OLE::Const->Load("Microsoft Word 11.0 Object Library");
$const = Win32::OLE::Const->Load("Microsoft Word 10.0 Object Library") unless $const;
$const = Win32::OLE::Const->Load("Microsoft Word 9.0 Object Library") unless $const;


追加のスクリプトを記述する技能がないため、書き換えにより、
Office 2000 以降で動作するようにいたしました。

Office 2003 の各アプリケーションのバージョンは、次のとおりです。

Excel 11.0
Word  11.
PowerPoint 11.

「11.」では動作しなかったため、「11.0」としました。

Office XP は所有していないため、「10.0」の動作は未確認です。
ご参考になれば、幸いです。

いや、よっぽど、メーリングリストなりへ、質問しようかと思いましたが、
各ホームページを参考に、構築に成功いたしました。
諸先輩方に、感謝いたします。

自宅サーバーに、Namazu を入れるという試みの、顛末でした。

竹嶋 健二 kenji@xxxxxxxxxxxxxxxxx


追伸:
いま、バージョンの再確認をしたところ、
Word は「11.0」と表記されました。
PowerPoint も「11.0」が、正解かもしれません。