ここを参考に
http://www.kmonos.net/alang/wnd/topics/winapi.ja.html
Win32API を使って drag & drop を実装してみたところ
case WM_DROPFILES: の中で
HDROP dr = cast(HDROP)wp;
TCHAR[] buf = new TCHAR[MAX_PATH];
int l = DragQueryFile(dr, 0, buf.ptr, buf.length);
if(l < buf.length) buf[l] = 0;
string bs = to!string(buf[0..l]);
version(Unicode){
writefln("0: %s", to!string(bs.toMBSz()));
string name = bs;
}else{
writefln("0: %s", bs);
string name = fromMBSz(bs.toStringz());
}
writefln("1: %s", name);
とすると
drag & drop したファイル名が 「森鷗(環境依存文字2)外(環境依存文字3)る.ext」 のとき
最後の name の表示が -version=Unicode したときとしないときで結果が違います
toMBSz と fromMBSz とで不可逆なのは判るのですが
MBSz -> UTF8 するときも結果が違うのは何故でしょうか?
(ただし表示は違うのですが同じファイルが対象になってちゃんと動作します)
D言語 Part34©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2015/12/14(月) 17:11:34.59ID:reTGASBb
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【話題】「おでんで白米」は、あり?なし? 「おでんだけ食べたい」派と「ご飯ぶっ込む」派で意見割れる [ひぃぃ★]
- 【速報】ロシア大統領はJT資産の接収を命じた [蚤の市★]
- 高市総理「これからもトランプ大統領と協力していきたい」 [少考さん★]
- 中国メーカー、出荷前130万台のAndroid端末に犯罪用バックドア設置、Google調査、端末画面キャプチャ遠隔操作、1000万台以上感染も ★2 [お断り★]
- 【芸能】カズレーザー、体罰を受けた過去明かす 教師には今でも恨み 「許さない。全然良い指導だと思わない」 [冬月記者★]
- トランプ米大統領「イラン攻撃はやらなければならなかったし、これからも続けていく」「イランの核保有阻止する」 [お断り★]
- アメリカ株暴落📉日経先物暴落6万割れ📉キオクシア時間外9000割れ📉 [709039863]
- ★★★ケンモメン引っ越しのお知らせ★★★ [156586975]
- 高市早苗、共和党大敗を受けコメント「日本はトランプ大統領と連携していく」 [377482965]
- 【悲報】あの暇空、まさかの… [268718286]
- 【実況】博衣こよりのえちえちホロ鯖ARK🧪★6
- 【ジャップ】「ヤリマンがいるぞ、このアパートにはヤリマンがいる」妻の住所をネットの掲示板に投稿してレイプさせた男逮捕 [717870982]