EM_STREAMIN
The EM_STREAMIN message replaces the contents of a rich edit control with a stream of data provided by an application-defined EditStreamCallback callback function.EM_STREAMIN 
wParam = (WPARAM) (UINT) uFormat; 
lParam = (LPARAM) (EDITSTREAM FAR *) lpStream; 
 

解决方案 »

  1.   

    char szOut[5] = "TEST";m_rtfText.SendMessage(WM_SETTEXT,0,(long)szOut);就这样很简单呀.结果也是正常地.你是不是定义了UNICODE.而用的ANSI字符串所以被截了呀?
      

  2.   

    我用了
    TCHAR string = "abcd";
     SendMessage(hRichEdit, WM_SETTEXT, sizeof(string), (LPARAM)string);不行啊,呵呵,和UNICODE有关吗?我这样写有什么问题?
      

  3.   

    我用了TCHAR ,给它赋的值应该是UNICODE码的了吧?
      

  4.   

    RichEdit有些消息存在问题,其中某些微软已作了说明,但是还有没有说明的需要自己摸索。
      

  5.   

    用TCHAR也未必是UNICODE呀,还要#define _UNICODE
    干脆用WCHAR吧
      

  6.   

    ::SendMessage(m_hEditCtrl,WM_SETTEXT,0,(LPARAM)szText);
    可以的
      

  7.   

    不知道你怎么写的,反正如下是对的
    TCHAR szMsg[]="Abcd";
    ::SendMessage(hEditCtrl,WM_SETTEXT,0,(LPARAM)szMsg);
      

  8.   

    不要在进程之间使用SendMessage改变窗口文字。使用SendMessageTimeout函数比较好。另外,尽量使用strlen(char *sz);代替sizeof获取字符串长度
      

  9.   

    To:Useyourillusion(幻觉) 
    谢谢,我测试的是EDIT,我回去试试。