Marshal.PtrToStringBSTR メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > Marshal.PtrToStringBSTR メソッドの意味・解説 

Marshal.PtrToStringBSTR メソッド

マネージ String を割り当て、アンマネージ メモリに格納されている BSTR 文字列をコピーします。

名前空間: System.Runtime.InteropServices
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Public Shared Function PtrToStringBSTR
 ( _
    ptr As IntPtr _
) As String
Dim ptr As IntPtr
Dim returnValue As String

returnValue = Marshal.PtrToStringBSTR(ptr)
public static string PtrToStringBSTR
 (
    IntPtr ptr
)
public:
static String^ PtrToStringBSTR (
    IntPtr ptr
)
public static String PtrToStringBSTR (
    IntPtr ptr
)
public static function PtrToStringBSTR
 (
    ptr : IntPtr
) : String

パラメータ

ptr

アンマネージ文字列の最初の文字のアドレス。

戻り値
ptr パラメータの値が null 参照 (Visual Basic では Nothing) でない場合は、ネイティブ文字列のコピーを保持するマネージ文字列。それ以外の場合、このメソッドは null 参照 (Visual Basic では Nothing) を返します。

解説解説

アンマネージの SysAllocString 関数および SysAllocStringLen 関数で割り当てられている文字列でだけ、このメソッドを使用してください。

PtrToStringBSTR は、カスタム マーシャリングを実行するとき、またはマネージ コードとアンマネージ コードを混在させるときに使用します。このメソッドはアンマネージ文字列の内容のコピーを作成するため、適切な形で元の文字列を解放する必要があります。このメソッドは、Marshal.StringToBSTR と反対の機能を提供します。

メモメモ

このメソッドは SecurityAction.LinkDemand を使用して、信頼関係のないコードからの呼び出しを防ぎます。SecurityPermissionAttribute.UnmanagedCode アクセス許可は、直前の呼び出し元にのみ要求されます。信頼性が一部しか確認されていないコードから呼び出すことができるコードの場合、ユーザー入力を検証せずに Marshal クラスに渡すことは避けてください。LinkDemand メンバの使用に関する重要な制約事項については、「Demand と LinkDemand」を参照してください。

.NET Framework のセキュリティ.NET Framework のセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
Marshal クラス
Marshal メンバ
System.Runtime.InteropServices 名前空間
StringToBSTR



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「Marshal.PtrToStringBSTR メソッド」の関連用語

Marshal.PtrToStringBSTR メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Marshal.PtrToStringBSTR メソッドのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS