1

我在调用 SendMessage(WM_SETTEXT..) API 时遇到问题,我们的客户端机器抛出错误。它在其他客户的机器和我们这里的所有机器上都可以正常工作。抛出的错误是 System.Security.Permissions.SecurityPermission。我用谷歌搜索,但找不到任何关于原因的参考资料。即使 hwnd 没有指向真正的窗口,我的测试也没有错误。任何帮助,将不胜感激。

[DllImport("user32.dll", CharSet = CharSet.Auto)]
static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, int wParam, string lParam);
...

private void RegisterWithCaller()
{
    if (this.hwndCaller != IntPtr.Zero)
    {
        if (FormMode.DELIVERY == this.formMode)
        {
            SendMessage(this.hwndCaller, WM_SETTEXT, 0, "hWndInvoiceDisplay=" + this.txtCommunicate.Handle.ToInt32().ToString());
        }
        else
        {
            SendMessage(this.hwndCaller, WM_SETTEXT, 0, "hWndBOLsDisplay=" + this.txtCommunicate.Handle.ToInt32().ToString());
        }
    }
}
4

0 回答 0