[C#] Felder ausfüllen auf einer Webseite

07/10/2010 13:45 scenebase#1
Huhu, hab da ein kleines Problem mit der Paysafecard Seite.

Der Quelltext wo ich was eingeben will ist:
Code:
<input type="hidden" name="mainPagePart" value="mainPagePart" />

            <!-- START PIN -->
            <fieldset><div id="mainPagePart:j_id51" class="form-inner-pin"><div id="mainPagePart:j_id52" class="col-left1"><div id="mainPagePart:j_id53" class="row pin">
                            <label>PIN-Code:</label></div><div id="mainPagePart:j_id57" class="row pin"><div id="mainPagePart:j_id58" class="form-block"><span class="text text-small3"><input id="mainPagePart:rn1" type="text" name="mainPagePart:rn1" autocomplete="off" class="text" maxlength="4" onkeyup="return autoTab(this, 4, event);" size="4" style="text-align:center" /></span><span class="text text-small3"><input id="mainPagePart:rn2" type="text" name="mainPagePart:rn2" autocomplete="off" class="text" maxlength="4" onkeydown="return autoBack(this, event);" onkeyup="return autoTab(this, 4, event);" size="4" style="text-align:center" /></span><span class="text text-small3"><input id="mainPagePart:rn3" type="text" name="mainPagePart:rn3" autocomplete="off" class="text" maxlength="4" onkeydown="return autoBack(this, event);" onkeyup="return autoTab(this, 4, event);" size="4" style="text-align:center" /></span><span class="text text-small3"><input id="mainPagePart:rn4" type="text" name="mainPagePart:rn4" autocomplete="off" class="text" maxlength="4" onkeydown="return autoBack(this, event);" size="4" style="text-align:center" />
Mein Code sieht so aus:
Code:
        private void check_Click(object sender, EventArgs e)
        {
            for (int i = 0; i < webBrowser1.Document.Forms.Count; i++)
            {
                HtmlElement element = webBrowser1.Document.Forms[i].All["mainPagePart"];
                Thread.Sleep(200);
                if (element != null && element.GetAttribute("").Equals(""))
                {
                    webBrowser1.Document.All["mainPagePart:rn1"].SetAttribute("text", id1.Text);//Pin Teil 1
                    webBrowser1.Document.All["mainPagePart:rn2"].SetAttribute("text", id2.Text);
                    //webBrowser1.Document.Forms[i].InvokeMember("submit"); //Drückt Absenden!
                }

            }
Das Submit funktioniert wunderbar, nur das ausfüllen der boxen nicht.

[Only registered and activated users can see links. Click Here To Register...] <- Wo man den PIN eingeben muss.

Ich verstehe nicht, warum das nicht gehen will. Hat wer vllt nen lösungs- ansatz?
07/10/2010 18:43 マルコ#2
wenns so nicht geht, dann mach einfach folgendes: Lass das Programm Pixel auslesen(um die Box zu finden). Dann lass es in die Box klicken. Dann lass es dein Passwort schreiben und Enter drücken. Das Klicken, Eingeben und Enter drücken kann man per Makro machen. Sry, dass ich dir keinen Code geben kann, da ich mit Delphi programmiere ;)