EM_GETLINE在第二次调用时不返回任何内容

时间:2012-09-02 20:29:28

标签: c# winapi

  

可能重复:
  can't use SendMessage_EX twice in my c# program

我使用EM_GETLINE消息来获取特定行中的文本,但是当我第二次调用它时它返回一个空字符串。

运行此代码,然后单击button1两次,在第一次单击文本将显示在消息框中,但在第二次,将显示消息框为空。

    private void button1_Click(object sender, EventArgs e)
    {
        StringBuilder str = new StringBuilder(256);
        SendMessage_Ex(richTextBox1.Handle, EM_GETLINE, 0, str);
        MessageBox.Show(str.ToString());
    }
    public const int EM_GETLINE = 0xc4;
    [DllImport("user32.dll", EntryPoint = "SendMessageA")]
    public static extern int SendMessage_Ex(IntPtr hwnd, int wMsg, int wParam, StringBuilder lParam);

0 个答案:

没有答案