我就想做一个简单的功能  模拟键盘在IE上按回车  而IE不必是活动窗体 

解决方案 »

  1.   

    通过FindWindow获取IE,取值 
    [DllImport("User32.dll")] 
            static extern int FindWindow(string lpClassName, string lpWindowName); 
            [DllImport("User32.dll")] 
            static extern int FindWindowEx(int hwndParent, int hwndChildAfter, string lpszClass, string lpszWindow);         public static string GetURL() 
            { 
                int parent = FindWindow("IEFrame", null); 
                int child = FindWindowEx(parent, 0, "", null); 
            }
      

  2.   

     IntPtr i= FindWindowA("IEFrame", null);
    你开个IE,然后用SPY++就可以查到IE的classname了,第二个参数是IE的标题,如果不确定就用null;
    如果你同时开了很多IE,那你必须把你想找的IE的标题传到第二个参数,不然是找不到的
      

  3.   


    哇   有学到一点东西了  原来spy++ 有这么些功能  
      

  4.   

    我在想 要控制非活动的应用程序  是不能用 SendKeys.Send();是吧  那是用PostMessage SendMessage  还是keybd_event呢  小弟愚昧   看了一晚上的资料 还是没得到我想要的效果
    是不是不能实现这样的效果呢(编程控制键盘在IE上操作而我在聊QQ 或干别的事)
      

  5.   

    用PostMessage了
    SendKeys.Send()和keybd_event都需要应用程序当前是活动的
    SendMessage是发完消息需要等接收方回应的,但因为是外部的程序无法给你回应,所以用PostMessage直接发消息,不用等回应