В Asp.net C#
, используя управление веб-браузером, мне нужно реализовать автоматический вход на живые веб-сайты, его работает только в Internet Explorer(IE)
и не работает в Firefox и Chrome и других браузерах. Как решить этуASP.net C# браузер веб-браузера всегда открыт, т. Е. Только браузер?
Вот мой C#
Код
void capture()
{
Thread thread = new Thread(delegate()
{
using (WebBrowser browser = new WebBrowser())
{
browser.ScrollBarsEnabled = false;
browser.AllowNavigation = true;
browser.Navigate("My URL");
browser.Width = 1024;
browser.ScriptErrorsSuppressed = true;
browser.Height = 768;
browser.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(DocumentCompleted);
while (browser.ReadyState != WebBrowserReadyState.Complete)
{
System.Windows.Forms.Application.DoEvents();
}
}
});
thread.SetApartmentState(ApartmentState.STA);
thread.Start();
thread.Join();
}
private void DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
WebBrowser browser1 = sender as WebBrowser;
HtmlDocument doc = browser1.Document;
string user = txtUsername.Text.Trim();
string pass = password;
doc.GetElementById("Your userID").SetAttribute("value", user);
doc.GetElementById("Your Password").SetAttribute("value", pass);
//get Button on page and fire its click event
doc.GetElementById("Your Buttonid").InvokeMember("Click");
Thread thread = new Thread(delegate()
{
using (WebBrowser browser = new WebBrowser())
{
browser.ScrollBarsEnabled = false;
browser.AllowNavigation = true;
browser.Navigate("My URL");
browser.Width = 1024;
browser.Height = 768;
browser.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(DocumentCompleted1);
while (browser.ReadyState != WebBrowserReadyState.Complete)
{
System.Windows.Forms.Application.DoEvents();
}
}
});
thread.SetApartmentState(ApartmentState.STA);
thread.Start();
thread.Join();
}
благодарит за информацию. пожалуйста, мне нужны четкие детали. Я хочу использовать этот веб-элемент управления для всех браузеров –