<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Webbutton drücken]]></title><description><![CDATA[<p>Hi Leute,</p>
<p>banale Frage: Wie kann ich in C++ einen Webbutton drücken...</p>
<p>Ich habe eine Funktion geschrieben die mir den Seitenquelltext einer Homepage zurückgibt. Dieser Quelltext enthält manchmal einen Button der in diesem Fall gedrückt werden soll.</p>
<p>Der Quelltext des Button sieht wie folgt aus:</p>
<pre><code>&lt;center&gt;&lt;form name=rconf method=post&gt;
				&lt;input type=hidden name=list value=111&gt;
				&lt;input type=hidden name=fname value=&gt;
				&lt;input type=hidden name=lname value=&gt;
				&lt;input type=hidden name=dodel value=yes&gt;

				&lt;input type=hidden name=u value=8cbef1e&gt;
				&lt;input type=submit value=&quot;OK&quot;&gt;
				&lt;/form&gt;&lt;/center
</code></pre>
<p>Gibt es eine Möglichkeit das in C++ zu realisieren?</p>
<p>Gruß<br />
<img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> WARFIRE <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/237043/webbutton-drücken</link><generator>RSS for Node</generator><lastBuildDate>Tue, 07 Apr 2026 13:48:49 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/237043.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 23 Mar 2009 16:57:15 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Webbutton drücken on Mon, 23 Mar 2009 16:57:15 GMT]]></title><description><![CDATA[<p>Hi Leute,</p>
<p>banale Frage: Wie kann ich in C++ einen Webbutton drücken...</p>
<p>Ich habe eine Funktion geschrieben die mir den Seitenquelltext einer Homepage zurückgibt. Dieser Quelltext enthält manchmal einen Button der in diesem Fall gedrückt werden soll.</p>
<p>Der Quelltext des Button sieht wie folgt aus:</p>
<pre><code>&lt;center&gt;&lt;form name=rconf method=post&gt;
				&lt;input type=hidden name=list value=111&gt;
				&lt;input type=hidden name=fname value=&gt;
				&lt;input type=hidden name=lname value=&gt;
				&lt;input type=hidden name=dodel value=yes&gt;

				&lt;input type=hidden name=u value=8cbef1e&gt;
				&lt;input type=submit value=&quot;OK&quot;&gt;
				&lt;/form&gt;&lt;/center
</code></pre>
<p>Gibt es eine Möglichkeit das in C++ zu realisieren?</p>
<p>Gruß<br />
<img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> WARFIRE <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1684942</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1684942</guid><dc:creator><![CDATA[WAR**FIRE]]></dc:creator><pubDate>Mon, 23 Mar 2009 16:57:15 GMT</pubDate></item><item><title><![CDATA[Reply to Webbutton drücken on Mon, 23 Mar 2009 21:14:09 GMT]]></title><description><![CDATA[<p>Mit disphelper library ist es so einfach:</p>
<pre><code class="language-cpp">dhCallMethod(browser, L&quot;Document.rconf.submit()&quot;);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1685090</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1685090</guid><dc:creator><![CDATA[sapero]]></dc:creator><pubDate>Mon, 23 Mar 2009 21:14:09 GMT</pubDate></item><item><title><![CDATA[Reply to Webbutton drücken on Mon, 23 Mar 2009 21:44:11 GMT]]></title><description><![CDATA[<p>einfach das request senden? hat aber auch nix mit winapi zu tun.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1685107</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1685107</guid><dc:creator><![CDATA[asdca]]></dc:creator><pubDate>Mon, 23 Mar 2009 21:44:11 GMT</pubDate></item><item><title><![CDATA[Reply to Webbutton drücken on Tue, 24 Mar 2009 13:39:23 GMT]]></title><description><![CDATA[<p>Ja, aber wenn das klappt nicht, mußt du vielleicht die Methode direkt an dem Dokument ausführen:</p>
<pre><code class="language-cpp">IDispatch *document = 0;
dhGetValue(L&quot;%o&quot;, &amp;document, browser, L&quot;Document&quot;); // oder L&quot;Document.script&quot;
if (document)
{
   dhCallMethod(document, L&quot;formname.buttonname.click()&quot;);
   document-&gt;Release();
}
</code></pre>
<p><a href="http://disphelper.sourceforge.net/readme.htm" rel="nofollow">http://disphelper.sourceforge.net/readme.htm</a></p>
<p>Mit raw C++ es ist echt verrückt:</p>
<pre><code class="language-cpp">IDispatch *docdsp;
if (!browser-&gt;get_Document(&amp;docdsp) &amp;&amp; docdsp)
{
	IHTMLDocument2 *document;
	if (!docdsp-&gt;QueryInterface(IID_IHTMLDocument2, &amp;document))
	{
		IHTMLElementCollection *forms;
		if (!document-&gt;get_forms(&amp;forms))
		{
			VARIANT vName;
			VARIANT vIndex;
			vName.vt  = VT_I4;
			vIndex.vt = VT_EMPTY;

			long formCount;
			forms-&gt;get_length(&amp;formCount); // count&gt;0 ?

			for (vName.lVal=0; vName.lVal&lt;formCount; vName.lVal++)
			{
				IDispatch *pDisp = NULL;
				if (!forms-&gt;item(vName, vIndex, &amp;pDisp) &amp;&amp; pDisp)
				{
					IHTMLFormElement *form;
					if (!pDisp-&gt;QueryInterface(IID_IHTMLFormElement, &amp;form))
					{
						// &lt;FORM&gt;
						//long inputCount;
						//form-&gt;get_length(&amp;inputCount);

						VARIANT name, index;
						name.vt      = VB_BSTR;
						name.bstrVal = SysAllocString(&quot;submit1&quot;); // &lt;input name=submit1
						index.vt     = VT_I4;
						index.lVal   = 0; // erstes element mit dem Name &quot;submit1&quot;

						IDispatch *inputdsp=0;
						if (!form-&gt;item(name, index, &amp;inputdsp) &amp;&amp; inputdsp)
						{
							IHTMLElement *element;
							if (!inputdsp-&gt;QueryInterface(IID_IHTMLElement, &amp;element))
							{
								element-&gt;click();
								element-&gt;Release();
								// gefunden
								vName.lVal = formCount;
							}
							inputdsp-&gt;Release();
						}
						VariantClear(&amp;name);

						form-&gt;Release();
					}
					pDisp-&gt;Release();
				}
			}
			forms-&gt;Release();
		}
		document-&gt;Release();
	}
	docdsp-&gt;Release();
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1685188</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1685188</guid><dc:creator><![CDATA[sapero]]></dc:creator><pubDate>Tue, 24 Mar 2009 13:39:23 GMT</pubDate></item></channel></rss>