14 de septiembre de 2011

Abrir una dirección URL con C++



Para abrir enlaces a través de un programa en c++ , se debe utiliza la función ShellExecute  de la API de Windows.
Una sencilla aplicación que pregunte al usuario si desea visitar mi nuevo blog sería:


#include <windows.h>
#include <iostream>

using namespace std;
int main()
{
int val = MessageBox(NULL,"Quieres Visitar mi nuevo Blog?","Ventantita",MB_YESNO);
cout<<"Valor Retornado: "<<val;

if(val==6)
 {
        ShellExecute(NULL, "open", "http://www.tutsnt.com/",NULL, NULL, SW_SHOWNORMAL);

 }
return 0;
}


De igual manera si deseo Ejecutar un programa externo sería así:

Abriendo el Winrar:

#include <windows.h>
#include <iostream>


using namespace std;
int main()
{
 ShellExecute(NULL, "open", "C:\Program FilesWinRAR\WinRar.exe",NULL, NULL, SW_SHOWNORMAL);

return 0;
}

Del mismo modo para abrir un archivo, solo pondrías la Ruta del archivo por ejemplo una Foto o un PDF, ojo siempre las rutas van con la cadena de escape \.


NOTA:
El ejemplo fue compilado utilizando el IDE , Codeblocks . Cualquier pregunta dejensus comentarios, saludos :)

3 comentarios:

Anónimo,  octubre 23, 2011  

uso Turbo C++ 4.5 y cuando compilo me sale un error y se debe a que no se reconoce la función ShellExecute a pesar de que si reconoce la libreria Windows.h ah y me toco quitarle el " using namespace std;" y ponerle la h la libreria basica de entrada i salida iostream ¿Qué puedo hacer para poder usar esta API de windows?

Ziney octubre 27, 2011  

Para utilizar la API de Windows es recomendado trabajar con un IDE como CODEBLOCKS o DEV C++ o Visual C++.
Ya que el Turbo C++ no tiene las liberías estándar.

Saludos.

Anónimo,  noviembre 19, 2011  

ok gracias por tu recomendación