C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■96436 / 7階層)  フォルダーの選択ダイアログ
□投稿者/ Hongliang (1124回)-(2020/11/22(Sun) 21:20:53)
Declareは既定では文字列をANSIとして扱いますが、SHILCreateFromPathは文字列をPCWSTR、つまりUnicode(UTF-16)で要求しています。
Declare宣言部で以下のようにUnicodeの関数であると明示するか、
Declare Unicode Function ...
引数がUnicodeの文字列であると明示する必要があります。
<MarshalAs(UnmanagedType.LPWStr)> ByVal pszPath As String
リンク先は後者でやってますね。

ちなみに前者をDllImport属性でやる場合は、
DllImport("...", CharSet:=CharSet.Unicode)
という形になります。
編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←Re[6]: フォルダーの選択ダイアログ /sony →Re[8]: フォルダーの選択ダイアログ /sony
 
上記関連ツリー

フォルダーの選択ダイアログ / sony (20/11/22(Sun) 18:39) #96429
Re[1]: フォルダーの選択ダイアログ / Hongliang (20/11/22(Sun) 18:50) #96430
  └ Re[2]: フォルダーの選択ダイアログ / sony (20/11/22(Sun) 19:14) #96431
    └ Re[3]: フォルダーの選択ダイアログ / Hongliang (20/11/22(Sun) 19:53) #96432
      └ Re[4]: フォルダーの選択ダイアログ / sony (20/11/22(Sun) 20:00) #96433
        └ Re[5]: フォルダーの選択ダイアログ / Hongliang (20/11/22(Sun) 20:24) #96434
          └ Re[6]: フォルダーの選択ダイアログ / sony (20/11/22(Sun) 20:43) #96435
            └ フォルダーの選択ダイアログ / Hongliang (20/11/22(Sun) 21:20) #96436 ←Now
              └ Re[8]: フォルダーの選択ダイアログ / sony (20/11/22(Sun) 21:39) #96437
                └ Re[9]: フォルダーの選択ダイアログ / Hongliang (20/11/22(Sun) 22:06) #96438
                  └ Re[10]: フォルダーの選択ダイアログ / sony (20/11/22(Sun) 23:04) #96439 解決済み

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信