void CMy1Dlg::OnButton1()
{
// TODO: Add your control notification handler code here
HWND hwnd1;
HWND hwnd2;
HWND hwnd3;
HWND hwnd4;
HWND hwnd5;
HWND mainhwnd1;
mainhwnd1=::FindWindow("IEFrame",NULL);
if(mainhwnd1 != NULL)
{
hwnd2 = ::FindWindowEx (mainhwnd1, NULL, "WorkerW", NULL);
hwnd3 = ::FindWindowEx (hwnd2, NULL, "ReBarWindow32", NULL);
hwnd4 = ::FindWindowEx (hwnd3, NULL, "ComboBoxEx32", NULL);
hwnd5 = ::FindWindowEx (hwnd4, NULL, "ComboBox", NULL);
hwnd1 = ::GetDlgItem(hwnd5,0xA205);
if (hwnd1 != NULL)
{
CString strLine;
CStdioFile file;
file.Open("a.txt", CFile::modeRead);
file.ReadString(strLine);
file.Close();
::SendMessage (hwnd1, WM_SETTEXT, NULL,(LPARAM)(LPCSTR)strLine);
::UpdateWindow (mainhwnd1);
}
}
else
MessageBox("找不到IE");
}
这个代码可以把a.txt的头行写到ie地址栏中去(xp sp3 ie6.0)
a.txt的内容如下:
写到IE地址栏1
写到IE地址栏2
写到IE地址栏3
.................
文件可能很大
我想知道的是怎样读取字符串比较,分割字符串,从指定的字符开始读起
比较用strcmp??分割的话是不是先转(LPCSTR)strLine,然后用char[]数组一个一个跟ascii码比较??读的话是不是if指定的ascii码。。。。然后?????全读进来find???文件很大的话也全读?(1MB左右)
怎么样才能使它再次按下按钮时写出第二行内容还有如果程序关闭后再打开时不重新输出已经输出过的内容(再用个.txt文件保存最后输出然后再比较?)
实现代码......不会....
这里全是大牛如果没时间给代码的话至少给我几个关键字啊...好让我知道要搜索什么...
搜索一下午网上跟csdn中没有一个用vc做读取字符串比较,分割字符串,从指定的字符开始读起...
不要叫我换成excel或XML, 数据库什么的我的条件就是上面这些,当然我的目的不是在ie地址栏中输出中文...但如果上面的成功的话剩下的我就知道怎么改写了
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!