MECABRC
co-sakaです。おはようございます!
windows環境でMeCab辞書を指定する方法を調査しています。
前の日記で書いたように、MeCabは、
「環境変数」
→「レジストリ」 (MeCabインストーラー)
→「同じディレクトリ」 (LudiaによるMeCabのDLL)
と見に行きます。
そこで、Ludiaでsetenvを呼んで、環境変数MECABRCを設定してしまえ!
となるわけですが、どうやらWindowsではsetenvが使えない様子。
_putenvを使えとのこと。
しかし、Ludiaで_putenvでMECABRCを指定しても、うまくいかない。
MeCab内部のgetenv("MECABRC")の返り値がnullになっている様子。
なぜ??????
試しにLudia側で_putenvの代わりにwinAPIのSetEnvironmentVariableを利用して、
MeCab内部のgetenvをGetEnvironmentVariableに変更すると上手く行った!
でも、MeCabのソースはいじりたくない・・・。
(_putenv,getenv)と(SetEnvironmentVariable,GetEnvironmentVariable)は、
違う仕様なのかな???
困った困った。