请问如果在VC++6.0中实现读取IE地址栏中的地址呢?谢谢!!

解决方案 »

  1.   

    可以先使用FindWindow获得IE的主窗口。然后使用GetWindow函数列举主窗口的子窗口,并使用GetClassName获得该子窗口的类。对于每个WorkerA类的窗口再列举它的子窗口。这个搜索过程如下: 
        IEFrame(IE的主窗口)->WorkerA->RebarWindow32->ComboBoxEx32->ComboBox->Edit。 
     得到Edit的句柄后,就可以得到其中的文字了 hwndIE = FindWindow("IEFrame", NULL); 
     hwndWorker = FindWindowEx(hwndIE, 0, "WorkerA", NULL); 
     hwndToolbar = FindWindowEx(hwndWorker, 0, "rebarwindow32", NULL); 
     hwndComboboxex = FindWindowEx(hwndToolbar, 0, "comboboxex32", NULL); 
     hwndCombo = FindWindowEx(hwndComboboxex,0,"ComboBox", NULL); 
     hwndEdit = FindWindowEx(hwndCombo,0, "Edit", NULL); 
     SendMessage (hwndEdit, WM_GETTEXT, 255, buffer); 
      

  2.   

    为什么我运行你的程序找不到WorkerA窗口?
      

  3.   

    浏览器版本不一样,可能类名会有不同你用 spy 查看一下你的浏览器,就可以知道它的类名了
      

  4.   

    请问 SendMessage (hwndEdit, WM_GETTEXT, 255, buffer);  中的 buffer 怎么定义?是什么型?
      

  5.   

    char buffer[256];
    强制转化一下