Bug 3884 OLE Drag&Dropで"UniformResourceLocatorW"と"FileGroupDescriptorW"に未対応 #2
初回投稿日時: 2004年07月17日13時29分23秒
最終更新日時: 2004年07月17日13時30分47秒
カテゴリ: Mozilla Core
SNS:
Tweet (list)
まだMinGWでのビルドはできないままだが、とりあえず問題そのものは修正できている。 このバグの修正により、インターネットショーカットが国際化対応となった。 日本語のWindowsでも他国のタイトルをそのまま利用できる。
例えばハングルや、アラビア語、àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ等のヨーロッパの文字や発音記号、更にはJIS X 0212の文字もファイル名に使えるようになっている。
なお、Explorer側の問題により、この修正の恩恵を受けられるのはNT系列のWindowsのみである。ただし、Win9x系であっても、"W"フォーマットに対応したアプリケーションへのドラッグではその恩恵を受けられるかもしれない。
また、これまではMAX_PATH
(\0
を含む260バイトもしくは、260文字)に従ってファイル名を生成していたが、これでは長いタイトルを最も短いパスであるc:\
にすらドロップできなかった。(ちなみに、これはWindows版IEでも同様で、さらに悪いことに、IEでは"A"フォーマットの場合、拡張子が捨てられていた。)
そこで、最終的にはファイル名を最大128バイト、もしくは128文字にすることで、大半のパスにはドロップ可能とした。
興味本位で限界の文字数をテストしてみるのも結構だが、Windows2000/Windows98以前のExplorerでは、MAX_PATH
に到達したファイルは作れても、リネーム、削除、移動ができないバグが確認されているので要注意。(コマンドラインからは消せる)