Dieses Snippet zeigt, wie man sein Postfach in einem WebBrowser-Control (WinForms) laden kann, wobei das Passwort und der Benutzername vom Programm automatisch in das Formula übertragen und abgesendet werden.
Auf der Form...
WebBrowser (wb): mit möglichst großer Fläche
TextBox (tbUser)
TextBox (tbPwd): PasswordChar einstellen
Button (bLogin): Click-Event abonnieren
Tipp
Der WebBrowser sollte wärend des Ladens nicht bedienbar sein. Denn kurzzeitig wird das Login-Formula angezeigt, sodass der Benutzer dieses verändern kann. Ausblenden oder deaktivieren sollten am Effektivsten sein, um den Benutzer daran zu hindern.
Benötigte Namespaces
System
System.Windows.Forms
Beispielanwendung
Das komplette C#-Projekt für Visual Studio 2013 finden Sie hier:
http://code-13.net/dl/Outlook_Auto-Login_Demo.zip
private void bLogin_Click(object sender, EventArgs e)
{
wb.DocumentCompleted += wb_DocumentCompleted;//Wird ausgelöst, wenn das Dokument geladen wurde
wb.Navigate("http://outlook.com/");//Navigation zum Login-Formula starten
}
void wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
//Input-Boxen anhand der ID's abfragen
var pwdBox = wb.Document.GetElementById("i0116");//Benutzername-Input-Box
var usrBox = wb.Document.GetElementById("i0118");//Passwort-Input-Box
//Werte setzen
pwdBox.SetAttribute("value", tbUser.Text);
usrBox.SetAttribute("value", tbPwd.Text);
//Button zum bestätigen finden und clicken
var btn = wb.Document.GetElementById("idSIButton9");
btn.InvokeMember("click");//Click-Event auslösen
wb.DocumentCompleted -= wb_DocumentCompleted;//Event nach Login deabonnieren
}
Kommentare zum Snippet