Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1470 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Chargement du navigateur depuis la fonction system ( )

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Chargement du navigateur depuis la fonction system ( )

n°1373285
jipo
Kamoulox !
Posté le 23-05-2006 à 15:41:24  profilanswer
 

Bonjour,
 
J'aimerais savoir comment lancer simplement l'affichage d'une page html dans un navigateur depuis un programme C ... sous Linux.
Y a-t-il une commande Linux simple qui appelle le bon programme pour un fichier passé en paramètre.
 
 [:aztechxx]


---------------
"Comme des pommes d'or sur des ciselures d'argent, Ainsi est une parole dite à propos" (Proverbes de Salomon)
mood
Publicité
Posté le 23-05-2006 à 15:41:24  profilanswer
 

n°1373287
Elmoricq
Modérateur
Posté le 23-05-2006 à 15:42:24  profilanswer
 

system("/chemin/vers/le/navigateur/binaire http://www.adresse.ext/page.html" );


Message édité par Elmoricq le 23-05-2006 à 15:42:39
n°1373295
jipo
Kamoulox !
Posté le 23-05-2006 à 15:52:45  profilanswer
 

Elmoricq,
 
Merci !
Mais est-il possible de le faire sans spécifier le chemin et le programme du navigateur ?


---------------
"Comme des pommes d'or sur des ciselures d'argent, Ainsi est une parole dite à propos" (Proverbes de Salomon)
n°1373299
Elmoricq
Modérateur
Posté le 23-05-2006 à 15:54:29  profilanswer
 

Si c'est dans $PATH, oui.
 
Sinon, je ne vois pas bien comment ton système saurait où se trouve ton programme à exécuter.

n°1373316
jipo
Kamoulox !
Posté le 23-05-2006 à 16:11:32  profilanswer
 

OK,
 
Merci, au moins c'est clair !  ;)
 
Ah ! les mauvaises habitudes sous Windows ... beuurrrkkkk ! ! !  [:aztechxx]


Message édité par jipo le 23-05-2006 à 16:12:20

---------------
"Comme des pommes d'or sur des ciselures d'argent, Ainsi est une parole dite à propos" (Proverbes de Salomon)
n°1373348
Elmoricq
Modérateur
Posté le 23-05-2006 à 16:46:07  profilanswer
 

C'est pareil sous Windows, hein. Sauf que la variable se nomme %PATH%.

Message cité 1 fois
Message édité par Elmoricq le 23-05-2006 à 16:46:28
n°1373365
jipo
Kamoulox !
Posté le 23-05-2006 à 17:03:14  profilanswer
 

Sous Windows il existe des apis qui executent le bon programme en fonction du type de fichier passé. C'est ce genre de fonctionnement qui m'aurait interesser !
 


---------------
"Comme des pommes d'or sur des ciselures d'argent, Ainsi est une parole dite à propos" (Proverbes de Salomon)
n°1373368
Arjuna
Aircraft Ident.: F-MBSD
Posté le 23-05-2006 à 17:06:29  profilanswer
 

Elmoricq a écrit :

C'est pareil sous Windows, hein. Sauf que la variable se nomme %PATH%.


ben si, sous Windows :
 
start http://www.google.com
 
t'ouvre le navigateur par défaut dans google :spamafote:

n°1373369
_darkalt3_
Proctopathe
Posté le 23-05-2006 à 17:06:52  profilanswer
 

lesquelles ?

n°1373370
Arjuna
Aircraft Ident.: F-MBSD
Posté le 23-05-2006 à 17:07:14  profilanswer
 

jipo a écrit :

Sous Windows il existe des apis qui executent le bon programme en fonction du type de fichier passé. C'est ce genre de fonctionnement qui m'aurait interesser !


et donc, y'a pas besoin d'une API "àlakon" pour faire ça.
c'est géré en natif par l'os, parcequ'il est moins polio que linux (ouais, c'est pas vendredi, mais je suis pas là vendredi :o)

Message cité 1 fois
Message édité par Arjuna le 23-05-2006 à 17:08:26
mood
Publicité
Posté le 23-05-2006 à 17:07:14  profilanswer
 

n°1373378
Elmoricq
Modérateur
Posté le 23-05-2006 à 17:17:39  profilanswer
 

Arjuna a écrit :

et donc, y'a pas besoin d'une API "àlakon" pour faire ça.
c'est géré en natif par l'os, parcequ'il est moins polio que linux (ouais, c'est pas vendredi, mais je suis pas là vendredi :o)


 
Essaie :
 
Démarrer->Exécuter->"iexplore" : ça fonctionne.
 
Maintenant, ouvre une fenêtre de commandes :

C:\> iexplore
'iexplore' n'est pas reconnu en tant que commande interne
ou externe, un programme exécutable ou un fichier de commandes.
 
C:\> echo %PATH%
blahblahblah
 
C:\> PATH=%PATH%;"C:\Program Files\Internet Explorer"
 
C:\> iexplore


 
Et hop, ça marche.
Bref. Ce n'est pas de l'archaïsme, c'est juste que Windows ajoute quelques "path" supplémentaires, automatiquement, dans certaines parties de son interface, notamment le contenu de Program Files.
C'est du coup beaucoup moins strict, mais c'est bien plus pratique pour pas mal de choses.
 
Un OS c'est pas de la magie, hein.  [:petrus75]


Message édité par Elmoricq le 23-05-2006 à 17:19:04
n°1373380
Arjuna
Aircraft Ident.: F-MBSD
Posté le 23-05-2006 à 17:20:37  profilanswer
 

on te parle pas des variables path vin dieu !
 
évidement le path du navigateur doit être dans la variable path...
mais c'est de toute façon "toujours" le cas, que ce soit sous linux ou sous windows.
 
on te parle d'une commande capable de se dire "tiens, c'est une adresse web... c'est donc du "text/html"... quelle est donc l'application par défaut qui supporte ce type mime ?
 
et en cas, la commande "start" de Windows fonctionne. pas sûr que sous Linux il y ait un équivalent.
 
je ne vois pas ce que vient foutre le path là dedans...

n°1373382
Elmoricq
Modérateur
Posté le 23-05-2006 à 17:22:08  profilanswer
 

Ah, ok, je n'avais pas compris.
 
Je crois qu'il y a une gestion des types MIME sous Linux, mais je ne me suis jamais penché sur la question (suis pas admin du Solaris de ma boite, et j'ai Windows chez moi :o )

n°1373388
Arjuna
Aircraft Ident.: F-MBSD
Posté le 23-05-2006 à 17:27:54  profilanswer
 

Deplus, start se base sur la déclaration des types mime, et non le path.
 
Test :
 


C:\Documents and Settings\Administrateur>echo %PATH%
C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\oracle\ora92\bin;C:\P
rogram Files\Oracle\jre\1.3.1\bin;C:\Program Files\Oracle\jre\1.1.8\bin;C:\Progr
am Files\Microsoft SQL Server\80\Tools\BINN;C:\Program Files\ATI Technologies\AT
I Control Panel;C:\Program Files\StreamServe\3.0\Common\bin;c:\generix\exe\com\u
tils;C:\Program Files\Fichiers communs\Adobe\AGL;c:\Program Files\Microsoft SQL
Server\90\Tools\binn\;C:\Documents and Settings\Administrateur\Mes documents\Pro
jets Borland Studio\Bpl


 
PhotoShop se trouve chez moi dans "c:\program files\adobe\Adobe Photoshop CS2"
le répertoire "C:\Program Files\Fichiers communs\Adobe\AGL" ne contient que des dll
 
et pourtant...
 


C:\Documents and Settings\Administrateur\Mes documents\logos>start led.psd


 
Ca me lance bien PhotoShop avec le fichier en question...
 
Simplement parceque dans la BDR, "*.psd" est associé à Photoshop.Image.9 et que ce dernier pointe sur le répertoire de Photoshop...

n°1373392
Arjuna
Aircraft Ident.: F-MBSD
Posté le 23-05-2006 à 17:33:27  profilanswer
 

tiens d'ailleurs...
 
ça m'étonnes que bilou ait inventé comme un grand ce truc (quoique des fois, on a de bonnes surprises)
 
tu peux tenter un "man start" sur un x-like ?

n°1373393
Arjuna
Aircraft Ident.: F-MBSD
Posté le 23-05-2006 à 17:35:19  profilanswer
 

(ps: depuis tout à l'heure, je parle de "start". c'est une commande batch, qu'on démarre donc depuis un cmd)

n°1373476
jipo
Kamoulox !
Posté le 23-05-2006 à 18:47:02  profilanswer
 

Et donc sous Linux ???  [:aztechxx]


---------------
"Comme des pommes d'or sur des ciselures d'argent, Ainsi est une parole dite à propos" (Proverbes de Salomon)
n°1373481
Arjuna
Aircraft Ident.: F-MBSD
Posté le 23-05-2006 à 18:52:57  profilanswer
 

n'est-il pas ? :D

n°1373485
Arjuna
Aircraft Ident.: F-MBSD
Posté le 23-05-2006 à 19:00:01  profilanswer
 
n°1373581
Arjuna
Aircraft Ident.: F-MBSD
Posté le 23-05-2006 à 20:41:58  profilanswer
 

Bon ben... JIPO, t'as pas de POT (il te reste le J) :D
 
http://forum.hardware.fr/forum2.ph [...] w=0&nojs=0

n°1373596
skelter
Posté le 23-05-2006 à 21:07:30  profilanswer
 

vu que ca existe que sous windows faudrait voir si cette fonctionnalité ne pourrait pas poser des probleme d'administration ou de sécurité par exemple.

n°1373597
Arjuna
Aircraft Ident.: F-MBSD
Posté le 23-05-2006 à 21:09:26  profilanswer
 

nan, le problème sous nux, c'est que :
1/ sous windows, y'a qu'un shell : cmd.exe
2/ sous windows, y'a toujours un GUI actif et connu du kernel, même si son interface (explorer.exe) est désactivée

n°1373598
Arjuna
Aircraft Ident.: F-MBSD
Posté le 23-05-2006 à 21:10:38  profilanswer
 

hors il faut ces deux conditions pour que ça marche.
 
sous linux, le kernel ne sait à priori même dans quel shell/GUI un programme tourne

n°1373606
0x90
Posté le 23-05-2006 à 21:32:08  profilanswer
 

Si c'est faisable sous linux, juste que personne n'ai pris le temps de le coder.
 
Tu dois pouvoir te débrouiller avec un script bash ( ou n'importequel language ) pour te faire la commande :

Code :
  1. file -ib "nomdufichier"


va te renvoyer le type mime, il te reste plus qu'a avoir une liste de paires  (mimetype,programme) pour savoir lequel lancer. Ensuite tu as quelques variables d'environnement pour rendre le programme plus intelligent, Si tu as une variable DISPLAY non nulle tu sais que tu es sous X, tu peut lancer des programmes graphiques. la variable TERM peut te permettre de savoir que tu es en console pure, etc ...
 
Ca sera jamais parfait, parfait étant donné la flexibilité sous linux, mais tu peut arriver à un résultat déja très pratique à utiliser ;)


---------------
Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck.
n°1373627
jipo
Kamoulox !
Posté le 23-05-2006 à 22:13:14  profilanswer
 

MERCI A TOUS POUR LES EFFORTS DEPLOYES
Je suis touché  :sweat:  
 
Mon problème est plus simple : Dans un programme XMotif, il s'agit systématiquement, lorsque l'utilisateur appuie sur un bouton "Aide", d'appeler une page HTML correspondant à l'aide en ligne de la fenêtre courante ...
 
Donc je voulais savoir quelle était la manière la plus simple d'appeler le navigateur par défaut pour afficher le fichier d'aide HTML.
 
Voilà ... Peut être que cette réduction du problème de départ peut donner d'autres idées. Après tout je ne suis pas obligé d'utiliser des pages HTML ni un navigateur pour afficher une aide en ligne ... je dois juste fournir une infrastructure simple aux utilisateurs pour qu'ils puissent eux-même composés les fichiers d'aide qui seront affichés lors du click sur le bouton "Aide" dans chaque fenêtre.
 
Donc tout autre moyen que Navigo + HTML peut être bienvenu !
 
Merci encore,
Votre humbre serviteur  :jap:


Message édité par jipo le 23-05-2006 à 22:14:16

---------------
"Comme des pommes d'or sur des ciselures d'argent, Ainsi est une parole dite à propos" (Proverbes de Salomon)
n°1373634
Elmoricq
Modérateur
Posté le 23-05-2006 à 22:18:00  profilanswer
 

Pour moi, c'est plus une question d'ergonomie qu'autre chose. Surtout que la notion de "navigateur par défaut" n'existe pas sur *nix.
 
Il y a plusieurs solutions, l'une d'entre elles étant de rechercher les navigateurs les plus courants lors et en proposer le choix à l'utilisateur au moment de l'installation, avec possibilité de saisir le chemin vers le navigateur de son choix.
Et laisser l'option accessible dans un menu de configuration.

n°1374261
Arjuna
Aircraft Ident.: F-MBSD
Posté le 24-05-2006 à 15:21:53  profilanswer
 

http://forum.hardware.fr/forum2.ph [...] =0#t812777
 
y'a un équivalent de start pour gnome
 
tu trouves celui pour kde, et hop :) tu couvre 95% des nux

n°1374645
Arjuna
Aircraft Ident.: F-MBSD
Posté le 24-05-2006 à 22:09:26  profilanswer
 

et hop !
 
http://forum.hardware.fr/forum2.ph [...] =0#t812947
 
t'as un module à distribuer avec ton programme, et à priori tu devrais pouvoir t'en sortir :)

n°1377741
jipo
Kamoulox !
Posté le 30-05-2006 à 18:59:02  profilanswer
 

Mais j'ai lu l'autre topic, mais j'ai pas compris  :whistle:  
A part le gnome-open ... je vois pas autre chose ...


---------------
"Comme des pommes d'or sur des ciselures d'argent, Ainsi est une parole dite à propos" (Proverbes de Salomon)
n°1377779
Arjuna
Aircraft Ident.: F-MBSD
Posté le 30-05-2006 à 20:12:26  profilanswer
 

Ben si, vers la fin, y'en a un qui pose des liens vers un truc en cours de dev qui devrait permettre de remplacer start.
J'avoue que je suis pas allé voir le lien. Mais à priori ça devrait te permettre de faire ce que tu veux... Renseigne-toi auprès des gens sur ce site.

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Chargement du navigateur depuis la fonction system ( )

 

Sujets relatifs
fonction mailFonction qui renvoit l'adresse du serveur web
Configuration touche + fonction aléatoire pic 18f452Heritage Fonction abstraite, Probleme conteneur Heterogene
Biblio/Fonction C++ pour manipuler fichier (couper/coller) sous OSX[RESOLU] [VB] Appel d'une fonction sur sélection d'une case
[.NET] System.Drawing > Comment remplir une zone avec une image ?Fonction indépendantes en java du DC
Modification de la fonction de conversation de PAMdéclaration fonction dans macro
Plus de sujets relatifs à : Chargement du navigateur depuis la fonction system ( )


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR