私はC#(ネイティブC++のバックグラウンドから)を初めて使いました.Windowsのブロードキャストメッセージを印刷するための小さなUIを作成しようとしています。私はそうのように私のC#プログラムでデフォルトのWndProcメッセージループを上書きしました:私が知りたいのですがどのようなアンマネージドIntPtr型をC#文字列に変換するにはどうすればよいですか?
[System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name = "FullTrust")]
protected override void WndProc(ref Message m)
{
// Listen for operating system broadcasts.
switch (m.Msg)
{
case WM_SETTINGCHANGE:
this.richTextLog.Text += "WM_SETTINGCHANGE - lParam=" + m.LParam.ToString() + "\n";
break;
}
base.WndProc(ref m);
}
は、タイプのIntPtrであるlParamにオブジェクトの文字列表現を取得する方法です。 C + +の土地では本質的にvoid *ですが、何とかC#の中にキャストできますか?恐らくそれは本質的に安全ではありません。
最初にIntPtr.Zeroをテストします。情報は正確に価値があるわけではありません。 –
ありがとう、ありがとう。 – Benj