1

またもやミスター・コンファシングです。

実行後にコンピューターの .txt ファイルからこのコードを追加しようとしています (このコードを呼び出します)。

コンパイルする前に、このコードをフォームに追加できます。手動で webbrowser.navigate と addhandlers をボタンの下に配置し、残りを単独で配置することでうまく動作しますが、ボタンをクリックしてアプリをコンパイルした後にこのコードを追加したいと考えています。 .

これに関する私の思考プロセスは、私が持っているようにコードを.txtで実行し、コンパイルの前にフォームのbtn1に入り、openfiledialogを使用して開いた.txtを言うようにコーディングすることでしたフォームにコードを引っ張って使用しますそれ。

手動で webbrowser.navigate と addhandlers をボタンの下に手動で配置する (およびフォームの hanlders とパブリックの新しいインスタンスを追加する) だけでうまくいくことはわかっていますが、私が約 500 の .txt ファイルから描画する予定です。

フォルダーをループして、フォルダー内の各.txtを取得し、何かをしてフォームに呼び出すことを考えていましたか??? しかし、私はこのステップで迷っています。

これをどうやって進めるかについてのアイデアはありますか?

ありがとう

以下は、.txt ファイルの 1 つからのコードです。

'Connotea DECLARATION
Public Connotea as new captchawindow

Public Sub ConnoteaNavigate
Connotea.webbrowser1.navigate("http://www.connotea.org/register")
End Sub

Public Sub ConnoteaHandlers

AddHandler Connotea.button1.click, addressof Connoteabutton
AddHandler Connotea.webbrowser1.documentcompleted, addressof Connoteabrowsercompleted
End Sub

Public Sub Connoteabrowsercompleted

For Each element as HtmlElement in Connotea.WebBrowser1.Document.Getelementsbytagname("input")
If element.getattribute("id") = "firstname" then
element.setAttribute("value", ProfileMaker.FirstName.Text)
End If
Next

For Each element as HtmlElement in Connotea.WebBrowser1.Document.Getelementsbytagname("input")
If element.getattribute("id") = "lastname" then
element.setAttribute("value", ProfileMaker.LastName.Text)
End If
Next

For Each element as HtmlElement in Connotea.WebBrowser1.Document.Getelementsbytagname("input")
If element.getattribute("id") = "username" then
element.setAttribute("value", ProfileMaker.Username.Text)
End If
Next

For Each element as HtmlElement in Connotea.WebBrowser1.Document.Getelementsbytagname("input")
If element.getattribute("id") = "password" then
element.setAttribute("value", ProfileMaker.Password.Text)
End If
Next

For Each element as HtmlElement in Connotea.WebBrowser1.Document.Getelementsbytagname("input")
If element.getattribute("id") = "passwordconfirm" then
element.setAttribute("value", ProfileMaker.Password.Text)
End If
Next

For Each element as HtmlElement in Connotea.WebBrowser1.Document.Getelementsbytagname("input")
If element.getattribute("id") = "email" then
element.setAttribute("value", ProfileMaker.Email.Text)
End If
Next

For Each element as HtmlElement in Connotea.WebBrowser1.Document.Getelementsbytagname("input")
If element.getattribute("id") = "email2" then
element.setAttribute("value", ProfileMaker.Email.Text)
End If
Next

If Connotea.WebBrowser1.ReadyState = WebBrowserReadyState.Complete Then
For Each Captcha As HtmlElement In Connotea.WebBrowser1.Document.Images
If Captcha.GetAttribute("src").Contains("http://www.google.com/recaptcha/api/image?c=") Then
Connotea.PictureBox1.Load(Captcha.GetAttribute("src"))
End If
Next
End If


End Sub

Public Sub Connoteabutton

Connotea.show

For Each element as HtmlElement in     Connotea.WebBrowser1.Document.Getelementsbytagname("input")
If element.getattribute("id") = "recaptcha_response_field" then
element.setAttribute("value", Connotea.Textbox1.Text)
End If
Next

For Each element as HtmlElement in             Connotea.WebBrowser1.Document.Getelementsbytagname("input")
If element.getattribute("value") ="register" then
 element.InvokeMember("click")
End If
Next

Connotea.dispose
End Sub
4

1 に答える 1

0

CodeDOMを使用して探しているソリューションだと思います

SOに関するこの質問はC#にありますが、いくつかの指針が得られるはずです。

Microsoft サイトのこの記事では、VB でこれを実現するためのステップ バイ ステップ ガイドを提供しています。

于 2012-07-16T08:36:08.900 に答える