怎么实现一个程序向另个程序输入数据(宽带连接自动添加用户名 密码)

如何实现一个程序向另个程序输入数据(宽带连接自动添加用户名 密码)
比如向系统自带的宽带连接自动添加用户名 密码
第一步。用findwindow得到别的程序的窗口句柄,可以用spy++看一下窗口的标题和类是什么
第二步。用Getwindow得到子窗口的句柄,判断是否为你所要的输入框。
第三步。若不是,再用GetNextWindow遍历所有的子窗口,直到找到所要的输入框。
第四步。发个wm_settext消息过去进行写信息
以上思路对不对 能否给个完整的代码

------解决方案--------------------
收到你的留言,
下面是实现代码:
//hwnd_login 父窗口句柄
//Ahwnd      输入框句柄
HWND hWnd_login,Ahwnd;
hWnd_login = ::FindWindow(NULL,L"Demo1");         //获取窗口名为Demo1的句柄
  //你可以使用SPY++查看宽带连接窗口输入框的名称
Ahwnd=::FindWindowEx(hWnd_login,0,L"Edit",L"");   //获取父窗口为Demo1内名为Edit的控件句柄
if(hWnd_login)
{
CString buf("Hello!!!");
::SendMessage(Ahwnd,WM_SETTEXT,0,(LPARAM)(LPCTSTR)buf);    //这里是发送消息并更改内容。
}
else
{
MessageBox(L"没有找到窗口...",NULL,NULL);
}

实例代码:http://pan.baidu.com/share/link?shareid=1411481505&uk=605320165
代码里面有2个工程,2个Demo,运行两个Demo,点击Demo2上的Set按钮,即可修改掉Demo1的Edit内容。怎么实现一个程序向另个程序输入数据(宽带连接自动添加用户名 密码)