NETLink`
NETLink`

MarshalStringsAs

MarshalStringsAs

DefineDLLFunctionのオプションであり,文字列の引数がどのようにDLL関数にマーシャルされるべきかを指定する.これはSystem.Stringクラスにマップされる任意の引数に適用され,このクラスには"char*""string""ByVal As String"のいずれかとして宣言で指定された型を含む.

詳細とオプション

  • MarshalStringsAsを使うためには,まず.NET/Link をロードしなくてはならない.それにはNeeds["NETLink`"]を実行する必要がある.
  • 可能な値:
  • "ANSI"文字列は1バイトのCスタイルの文字列として送られる(デフォルト)
    "Unicode"文字列は2バイトのUnicodeの文字列として送られる
    Automatic文字列はプラットフォームのデフォルトの形式で送られる
  • Automatic設定は,プラットフォームのデフォルト(Windows NT/2000/XPには"Unicode",98/MEには"ANSI")を選ぶ. Automaticは,主に異なるバージョンのWindowsにおける動作を自動的に切り換える特定のWindows API関数のための設定であるので,ほとんど使われるべきではない.