我要在一个自己建的类中向一个对话框的编辑框中写入字符串,以下是我的代码:
HWND hwnd;
hwnd=FindWindow(TEXT("CDlgComm"),TEXT("Communication"));//CDlgComm是对话框的类名,Communication是对话框的标题
if(hwnd)
  SendMessage(GetDlgItem(hwnd,1001), WM_SETTEXT, 0, (LPARAM)(LPCTSTR)buf);//#define IDC_EDIT2 1001,buf为TCHAR类型的字符串
else
  MessageBox(NULL,TEXT("Can't find the window."),TEXT("error"),MB_OK);
运行时提示"Can't find the window."我的系统是2000。兄弟们帮忙看看,问题出在哪里?是不是FindWindow的使用出错?

解决方案 »

  1.   

    BOOL SendNotifyMessage(
      HWND hWnd,      // handle to window
      UINT Msg,       // message
      WPARAM wParam,  // first message parameter
      LPARAM lParam   // second message parameter
    );
      

  2.   

    hwnd=FindWindow(TEXT("CDlgComm"),TEXT("Communication"));
    改为hwnd=FindWindow(NULL, TEXT("Communication"));
    试试看,估计试可以的。
      

  3.   

    一般的情况下对话框类是32770
    不妨先用spy++看一下先
    看清了类名和窗体名就可以了