Namazu-win32-users-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: win98se+msword2.plでインデックスできない
花井と申します。
──"It's me" <m_yamane@xxxxxxxxxxxxx>さんwrote:──
On Tue, 22 Jul 2003 19:03:49 +0900
Subject: [namazu-win32-users-ja] Re: win98se+msword2.plでインデックスできない
──────────────────────────────────
> > 変更後:
> > my $tmpfile3 = $tmpfile;
> > $tmpfile3 =~ s|/|\\|g;
> > system("$wordconvpath -e $tmpfile2 > $tmpfile3");
> >
> > と変更してみてうまくいかないでしょうか?
> うまくいきませんでした。やはり、NMZ.word.tmp ができません。そこで util.pl を
別の方法を考えてみました。
私がxdoc2txt.exeのオプションを把握していなかったのが原因なんですが、
-fオプションで
「変換元文書と同じフォルダに、拡張子を.txtにしたファイルに書き出す」
という機能がありました。
(例)
D:\>xdoc2txt -e -f d:/winword/word.tmp.doc
→d:¥winword¥word.tmp.txtというファイルに書き出す
この機能を元にmsword2.plを一部書き直してみました。
まっさらな(現在webに上がっている)msword2.plからの変更点は
変換元:
* my $tmpfile = util::tmpnam('NMZ.word');
* my $tmpfile2 = util::tmpnam('NMZ.word2') . $ext;
copy("$cfile", "$tmpfile2");
* system("$wordconvpath -e $tmpfile2 > $tmpfile");
(*の行を変更) ↓
変換後:
my $tmpfile0 = util::tmpnam('NMZ.word');
my $tmpfile = $tmpfile0 . ".txt";
my $tmpfile2 = $tmpfile0 . $ext;
copy("$cfile", "$tmpfile2");
system("$wordconvpath -e -f $tmpfile2");
です。
これであればリダイレクトを使用しないので、win9x系、NT系どちらでも
動作すると思います。
この変更にてうまくいきませんでしょうか?
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
NECフィールディング.東日本CSD.テクニカルサポート部
花井 亮(はない あきら)
────────────────────────────