2010-11-14 11 views
0

Je suis en train de coder un projet, qui doit lancer des webbrowsers avec l'URL donnée.Qt - Comment ouvrir un site Web dans un navigateur particulier

J'ai vu quelques exemples de QT, mais ils ont expliqué comment lancer le navigateur par défaut, pas un navigateur particulier.

Toute suggestion d'aide sera appréciée.

Edit1:

Voici le code que j'utilise actuellement

QString temp="C:/Program Files/Internet Explorer/iexplore.exe"; 
process->start(temp.toStdString().c_str()); 

Edit2

Salut, je trouve que le problème est pas QProcess-> commencer, Parce qu'il fonctionne parfaitement pour "explorer.exe", mais ne fonctionne pas, pour les exécutables qui sont dans les fichiers programme. Donc, je poste une nouvelle question à ce sujet.

+1

Je suis assez sûr qu'il ya quelque chose de mal avec le chemin. Trouvez le chemin de l'exécutable que vous essayez d'utiliser. – anijhaw

+0

En réponse à votre Edit2: Ben Voigt a la bonne solution. vous devez 'échapper' des caractères d'espace, sinon ils sont considérés comme des arguments et non comme un chemin. – g19fanatic

Répondre

2

Si vous connaissez le navigateur que vous voulez commencer et où ils se trouvent sur le système (comme l'installation par défaut répertoires). Vous devriez être en mesure d'utiliser QProcess

Cela peut être fait comme suit:

iexplore.exe http://www.locationOfUrl.com

ou

//path/to/app/firefox.exe http://www.locationOfUrl.com

+1

+1 pour QProcess. Vérifiez le doc. pour la méthode QProcess :: start: http://doc.qt.nokia.com/4.7/qprocess.html#start-2 –

+0

Le résultat est négatif. Ça ne marche pas – prabhakaran

+0

@prabhakaran: un peu plus d'informations est nécessaire à part "ça ne marche pas". Avez-vous des erreurs? Pouvez-vous montrer du code? Qu'avez-vous essayé exactement? QProcessus de Qt est multi plate-forme, donc il devrait 'fonctionner' sans accroc (j'ai déjà démarré des processus avec des arguments, ce qui est exactement ce que vous devez faire ...) – g19fanatic

1
system("/path/to/the/browser \"http://www.the.com/url\""); 

ou spawn au lieu de system (vous permet de contrôler les variables d'environnement, etc.)

+0

@Ben Les deux n'ont pas fonctionné. – prabhakaran

+0

@Ben Ce qui suit n'a pas fonctionné système ("C:/Program Files/Internet Explorer/iexplore.exe"); – prabhakaran

+0

@Ben La nouvelle console plrints un message, Mais je ne peux pas l'obtenir. Parce que la console se ferme dans les 2 min. Pouvez-vous dire comment obtenir ce message, ou faire geler la console pendant quelques minutes? – prabhakaran