Open url button – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Open url button – C / C++ – Fórum – Programujte.comOpen url button – C / C++ – Fórum – Programujte.com

 

Brano
~ Anonymní uživatel
22 příspěvků
12. 6. 2013   #1
-
0
-

Ahoj, potreboval by som vo VS2010 spraviť tlačítko ktoré by otvorilo nejakú url. Vlastne by to malo vyhľadať na google konkrétny string z programu.

nasiel som na nete niečo, ale nefunguje mi to:

private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
			
	//ShellExecute(NULL, "open", "iexplore", "http://www.gamedev.net", NULL, SW_SHOWNORMAL); 
	//system ("start http://www.google.sk/");

	//ShellExecute(NULL, "open", "http://twigstechtips.blogspot.com/", NULL, NULL, SW_SHOWNORMAL);
}

To som len skúšal či by to fungovalo vôbec a otvorilo akúkoľvek url, ale nefungovalo to. Potreboval by som teda otvárať takúto url.

http://www.google.sk/#sclient=psy-ab&q=("STRING")
Nahlásit jako SPAM
IP: 2001:67c:1220:c1a1:3852:1...–
Brano
~ Anonymní uživatel
22 příspěvků
12. 6. 2013   #2
-
0
-

našiel som niečo nové, čo by sa dalo použiť, ale otvára to url v novom Form-e v ktorom je vložený webBrowser :)

Ale tak aby to otvorilo v default prehliadači?

Nahlásit jako SPAM
IP: 2001:67c:1220:c1a1:3852:1...–
Matherz0
Newbie
12. 6. 2013   #3
-
0
-

   

#include <Windows.h>
#include <iostream>

int main()
{
	char sTextBox[255] = "Hello !"; // Obsah parametru z textboxu 
	char sWebUrl[255]; 
	sprintf_s(sWebUrl, "http://www.google.sk/#sclient=psy-ab&q=%s", sTextBox);

	ShellExecute(NULL, "open", (LPCSTR)sWebUrl, NULL, NULL, SW_SHOWNORMAL);
	return 0;
}

Jednouchá konzolová aplikace. Ty ale pracuješ s frameworkem Visual Studia (C++/CLI nemam-li pravdu) a tak můžeš použít nějakou z API funkcí abys nemusel otrocky sestavovat řetězec webové adresy (sprintf -> iostream knihovna), nebo rovnou obsah samotného textboxu.

Myslím že v C# to je něco ve smyslu

string sWebAddress = "http://www.google.sk/#sclient=psy-ab&q=" + sTextBox1.ToString();
Nahlásit jako SPAM
IP: 212.96.160.–
Brano
~ Anonymní uživatel
22 příspěvků
13. 6. 2013   #4
-
0
-

To prvé mi nefunguje, keď som to dal napr. takto:
 

private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
	char sTextBox[255] = "autobus";
	char sWebUrl[255]; 
	sprintf_s(sWebUrl, "http://www.google.sk/#sclient=psy-ab&q=%s", sTextBox);
	ShellExecute(NULL, "open", (LPCSTR)sWebUrl, NULL, NULL, SW_SHOWNORMAL);
}

vyhodí chyby:
Error 6 error C2059: syntax error : ')' 
Error 4 error C2065: 'LPCSTR' : undeclared identifier 
Error 3 error C2065: 'NULL' : undeclared identifier 
Error 5 error C2146: syntax error : missing ')' before identifier 'sWebUrl' ä
Error 2 error C3861: 'sprintf_s': identifier not found


A ani to druhé mi nefunguje  

Nahlásit jako SPAM
IP: 2001:67c:1220:c1a1:c0c3:7...–
13. 6. 2013   #5
-
0
-

v tom, co tu píšeš nemáš #include <Windows.h> a #include <iostream>, nezapomněls na ně?

hu

Nahlásit jako SPAM
IP: 195.178.67.–
Brano
~ Anonymní uživatel
22 příspěvků
13. 6. 2013   #6
-
0
-

nezabudol dal som to normalne do ***.cpp ku ostatným

Nahlásit jako SPAM
IP: 2001:67c:1220:c1a1:c0c3:7...–
13. 6. 2013   #7
-
0
-

to private: je v hlavičkovém souboru? pokud ano, include patří na začátek tohoto hlavičkového souboru

hu

Nahlásit jako SPAM
IP: 195.178.67.–
Brano
~ Anonymní uživatel
22 příspěvků
13. 6. 2013   #8
-
0
-

dík, už to vyzerá lepšie :)


len jeden error:
Error 2 error C2664: 'ShellExecuteW' : cannot convert parameter 2 from 'const char [5]' to 'LPCWSTR'

Nahlásit jako SPAM
IP: 2001:67c:1220:c1a1:c0c3:7...–
Brano
~ Anonymní uživatel
22 příspěvků
13. 6. 2013   #9
-
0
-

Ale stále to nefunguje

Nahlásit jako SPAM
IP: 2001:67c:1220:c1a1:c0c3:7...–
Brano
~ Anonymní uživatel
22 příspěvků
13. 6. 2013   #10
-
0
-

Tak som to spravil ako v tom videu podobne že som pridal Form2, už len potrebujem aby mi to našlo na google text z textBoxu z Form1   

Máte nejaké nápady?

Nahlásit jako SPAM
IP: 2001:67c:1220:c1a1:c0c3:7...–
Matherz0
Newbie
14. 6. 2013   #11
-
0
-

   

ShellExecute(NULL, "open", sWebUrl, NULL, NULL, SW_SHOWNORMAL);


Kodování
(LPCSTR) - ANSI - (No Set)
(LPCWSTR) - Unicode

Když používáš CLI myslím že bys mohl s datovými typy pracovat efektivněji.

C++ Cli toString ...

-----------------

Jaký je problém "vytáhnout" vstupní data z textboxu z form1 a "dosadit" je do funkce ShellExecute ?

ShellExecute(NULL, "open", "http://www.google.sk/#sclient=psy-ab&q=" + textbox1->Text, NULL, NULL, SW_SHOWNORMAL);

// Takto podobně bych to napsal v C# a CLI je jemu dost podobné

Měl bys ses jazyk opravdu snažit naučit a né kopírovat kusy kodů z diskuzních for.

Nahlásit jako SPAM
IP: 212.96.160.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 147 hostů

Podobná vlákna

čtení url/braní dat z url — založil tribalcz

Button — založil Tomasek

On/Off button — založil Martin

Like Button — založil Marek

Dělený Button — založil MilanL

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý