PDA

View Full Version : [C++] Problema,forse banale con shellexecute


Marco95
29-04-2012, 20:41
Ciao ho letto come il comando shellexecute possa far aprire anche delle pagine web così:

.
.
.

ShellExecute(NULL,"open","www.google.com",NULL,NULL,SW_SHOW);
.
.
.
.


e infatti apre la pagina web di google...ma se io volessi aprire una pagina web il cui indirizzo è contenuto all'interno di una variabile come posso fare??
Scusate se la domanda può essere banale ma sono alle prime armi.Grazie..se nn avete capito non esitate a rispondere :D :D

lorenzo001
29-04-2012, 20:52
Se lavori in C++, usa una string

Marco95
29-04-2012, 20:56
Ma la domanda resterebbe sempre la stessa...come faccio a passare una string al posto di "www.google.com" ??Scusa...forse non ho capito il senso di quello che hai detto :S

lorenzo001
29-04-2012, 21:28
Scusa, ma hai provato a farlo o no?

Marco95
29-04-2012, 21:42
Ho dichiarato la variabile prova di tipo stringa e poi usando la shellexecute invece di scrivere l'indirizzo web ho scritto il nome della variabile stringa ma mi dice invalid conversion from int to connst char*


string prova='www.google.com'
ShellExecute(NULL,"open",prova,NULL,NULL,SW_SHOW);

lorenzo001
29-04-2012, 21:55
Devi usare il metodo c_str() per utilizzare la stringa del C++ in una API che prevede una stringa del C. Ovvero

ShellExecute(NULL,"open",prova.c_str(),NULL,NULL,SW_SHOW);

Marco95
29-04-2012, 22:07
#include<iostream.h>
#include<conio.h>
#include <windows.h>
#include<string.h>
main()
{
string prova='www.google.com'
ShellExecute(NULL,"open",prova.c_str(),NULL,NULL,SW_SHOW);
getch();
}


Mi genera un errore...in function int main invalid conversion from int to const char..Dove sbaglio? :muro: :muro:

lorenzo001
29-04-2012, 22:14
Questa

string prova='www.google.com'

va scritta così

string prova="www.google.com";

Però dovresti studiare le basi del linguaggio per scrivere programmi ... non puoi andare a caso su questioni tanto banali ...

Marco95
29-04-2012, 22:24
Scusa...sarò io che sono grullo ma facendo
string prova"www.google.com"
mi dice error:string was not declared in this scope...

Marco95
29-04-2012, 22:45
Niente risolto...dovevo fare using namespace std ;) grazie ancora