@overthestardust @haxe やっぱりエラーになるんですね じゃあ少なくとも出力にMAX_PATH以上のバッファが確保されてれば変な挙動される心配はないんですね
2014-03-05 15:35:53@rofi @a4lg Shell Lightweight 系のAPI、なぜかMAX_PATH制限あるのが多いです。これはAPIの制限であってファイルシステムとしてはもっと長い。http://t.co/cthewEGmWG
2014-03-05 15:39:02MAX_PATH は Ansi 用だ。Unicode なおまえらには特殊表現用意したから 3 万文字使えるぜ!どうだ嬉しいだろ HAHAHA!。Ansi API に渡るにゃどうするかって?8.3 形式にでもすれば?シランケド。まで読んだ。
2014-03-05 15:44:46@hasegawayosuke @a4lg Windowsってファイルパスの制約が多いので自分で組むよりかはシステムが提供してくれてる関数使った方が安全かなとか思ってShell Lightweight系のAPIを使おうとしてたのです うーん・・・
2014-03-05 15:49:24@rofi そのはずです。たぶん。もちろんエラーチェックはちゃんとする必要はありますが。 PAthCch系がもっと早くVistaで実装されてればよかったのになぁ…
2014-03-05 15:50:49@rofi 少なくとも shell 系の API は制限キツすぎワロタ的なモノが結構あるので場合によってはオススメしづらいです。
2014-03-05 15:51:14@rofi ただシェル系の API は副作用というかなんというか、MAX_PATH 長の文字列にすべて制限する関係上、シェル API でちゃんと扱えてるならだいたい Windows エクスプローラから扱えるファイルができるので、まぁ……時と場合により。
2014-03-05 15:54:52oO( Win32 API で扱えているファイルが Windows エクスプローラでちゃんと扱える保証は、残念ながらない。というか、長い (エクスプローラから削除できない) フォルダ名を普通に Windows システムが作ってくる。シェル制限は結構厳しい。 )
2014-03-05 15:56:25@rofi @a4lg 引数を \ で分解して要素ごとに Shell Lightweight APIに渡す。
2014-03-05 15:57:09