[Namazu-win32-users-ja 1261] Re: 解決しました( Re: mknmzの処理が中断する )

Yukio USUDA m6694ha392t @ asahi-net.or.jp
2010年 10月 2日 (土) 22:24:30 JST


臼田です

On 2010/10/02, at 22:13, Yukio USUDA wrote:

>> 
>> Unicode 版 API を使えばこの制限はクリアできるのですが、ActivePerl は
>> 対応していないので、Win32:API (か、Win32::Unicode なのかな?) を使って
>> Windows べったりのコーディングを行わないといけない気がして、乗り気に
>> なれませんね。
> 
> Win32::API は生の API を操作させられるような感じがしますが
> Win32::Unicode は Perl の関数に似せた関数を割り当ててあるので
> 比較的 MS-Windows を意識しない書き方にできるとは思います。
> 環境に応じて呼び出す関数群を関数のポインタのようにして切り替え
> てしまえばコードの見通しは悪くならないのではと思っています。

Win32::Unicode::Native を使用すると
標準関数を override するようです。
http://perl-users.jp/articles/advent-calendar/2009/hacker/20.html
うまく使えば変更箇所は最小にできそうです。
ついでに ShiftJIS ファイル名用のエスケープ処理を削除できて見通しが
よくなるかもしれません。


臼田幸生



Namazu-win32-users-ja メーリングリストの案内