Ouvrir un document sans IE

Résolu
Slyders Messages postés 300 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 8 janvier 2010 - 28 juin 2007 à 09:44
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 - 29 juin 2007 à 15:39
Bonjour, je cherche à ouvrir un docmuent RTf sous WORD et pas son substitue d'IE ou il manque 90% des choses.

j'ai pour le mment le code suivant :





<a href= "
<?php
echo
( 'doc/'
.$nomfic
.'.rtf'
);
?>"
><img src ="img/ouvrir.JPG" border= "0" width ="25" height="12"></
a>






Mais sa ne marche pas comme je veu car sa m'ouvr le substitue.
Il existe bien une méthode mais il faut passer sur tous les postes clients pour décocher des cases dans les paramètres des dossier. Ce qui n'est pas pensable!

Merci d'avance de votre aide.

16 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
28 juin 2007 à 15:38
tu veux donc lancer Word ?
    ActiveX nécessaire...   pas tout à fait exclusif IE, mais...

    var app_word = new ActiveXObject("Word.Application");
    app_word.Application.Visible = true;
    app_word.documents.open("document.doc");
   
ou

  wsh = new ActiveXObject("WScript.Shell");
  wsh.run ('cmd /c "document.doc"');    // pour windows XP

ça va être sur intranet ? donc nommer les pages .htas à priori (?)
car si .htm, message pour urilisation ActiveX.
et si .hta : proposition de téléchargement ou exécution.
   
<hr />


Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
3
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
29 juin 2007 à 14:43
wsh

.

run

(

'cmd /c "[file://%5c%5catlas%5cworkflow%5cdoc%5caaaaaaaa.rtf%22%27/ \\atlas\workflow\doc\aaaaaaaa.rtf]"'

);      les anti-slash.





on les double ou on met le "slash normal"




wsh

.

run

(

'cmd /c "[file://%5c%5catlas%5cworkflow%5cdoc%5caaaaaaaa.rtf%22%27/ /atlas/workflow/doc/aaaaaaaa.rtf]"'


);



donc là, le répertoire est sous la racine ( puisque / en tête )



<hr />



Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
3
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
29 juin 2007 à 15:30
>>Me reste
à trouver le système pour Activer les controles ActiveX
>>sur tous les
postes de mes utilisateurs en même temps ou par un script
    ce doit être dans une clé du registre. dans ce cas :




possible en javascript,
            vbscript, VB,C++,Ruby... ou tout autre langage.




<hr />



Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
3
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
28 juin 2007 à 10:06
Bonjour,

>>qu'appelles-tu le "substitue" ?

    ça fait ouvrir le document par le programme chargé
        de le traiter par défaut ( avec windows )
        comme si on double cliquait sur ce document.

>> faut passer sur tous les postes clients pour décocher des cases dans les paramètres des dossier.
    ça, j'ai encore moins compris






<hr />



Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Slyders Messages postés 300 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 8 janvier 2010 2
28 juin 2007 à 10:16
j'ai un .rtf qui s'ouvre logiquement avec WORD.
quand je le met en lien et que je clique dessus j'ai soit, ouvrir ou enregistrer.
Je clique sur Ouvrir et sa me l'ouvre dans une fenetre d'internet Explorer.
En sachant que je ne veu pas le déplacer d'ou il est donc exclure la solution d'enregistrer et de remetre ensuite.

Windowd propose de décocher certain option sur les postes clients pour que sa marche. en effet sa marche, quand on clique sur ouvrir sa va directement dans Word mais je ne peu pas passer sur tous les postes Client pour décocher un bouton ...
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
28 juin 2007 à 11:20
    si c'est un problème de paramétrage d'un logiciel sur différents postes,
    il vaudrait mieux oublier javascript pour tenter de modifier ces paramètres...
<hr />


Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
0
Slyders Messages postés 300 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 8 janvier 2010 2
28 juin 2007 à 15:19
Non c'est pas un problème de paramétrage, n'importe quel pc est paramétré comme sa, en trifouillant on peu éventuellement le faire marcher. Mais comme je dit bien: Trifouiller...
Je pensais qu'il pouvais y avoir une fonction JS open.appplication ou je ne sais quoi dans le même genre ?
0
Slyders Messages postés 300 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 8 janvier 2010 2
28 juin 2007 à 16:19
Il me dit quand j'utilise:
<?php

if(isset
($_POST
['ouvrir_fichier'
]))

{
wsh
=
new ActiveXObject
( "WScript.Shell"
);
wsh
.run
('cmd /c "doc/"'
.$nomfic
.'".rtf"'
);

}

?>

...Parse error: parse error, unexpected ' =' in c:\program files\easyphp1-7\www\workflow\circuit.php on line 171
La  ligne 171 correspond à  wsh=new
ActiveXObject("WScript.Shell");

:x
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
28 juin 2007 à 16:29
ben oui, c'est pas du php. donc il rale...
tu mélange php et javascript. je viens juste d'en causer :

    php et javascript sont 2 langages différents.
    ils n'ont pas la même syntaxe.
    il ne se déroulent pas sur la même machine.
    ils ne s'exécutent pas en même temps.

    php crée, génère une page html/javascript et l'envoie vers le micro
       du client. il se termine. plus rien sur le serveur ne tourne.
    3 jours plus tard, la page est affichée sur l'écran du micro.
       le javascript peut s'exécuter.
    pour appeler le php, il faut envoyer un formulaire, modifier
       l'Url ou utiliser xmlhttprequest.

    on peut lancer des exécutables avec PHP    ( pas la syntaxe en tête ).

<hr />


Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
0
Slyders Messages postés 300 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 8 janvier 2010 2
28 juin 2007 à 16:40
Bon oui en effet a force de buter dedans je commence à me mélanger les pinceaux.

Maintenant sa me dit:
Un composant ActiveX ne peut pas créer un objet.

J'avais deja eu se message il y a quelque minutes en essayant cet méthode.
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
28 juin 2007 à 16:58
    les ActiveX ne sont pas autorisés ( paramétrage de IE ),
    ou Word n'est pas installé ( ou a n'a pas les droits ... )
<hr />


Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
0
Slyders Messages postés 300 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 8 janvier 2010 2
29 juin 2007 à 14:29
ok !
Donc j'ai créé une fonction:




<SCRIPT language= JavaScript>
functionouvriractivex
()
{
wsh
=
new
ActiveXObject("WScript.Shell"
);
wsh
.run
('cmd /c "[file://\\atlas\workflow\doc\aaaaaaaa.rtf"' \\atlas\workflow\doc\aaaaaaaa.rtf]
"');
}
</SCRIPT>

Donc sa m'ouvre bien une fenetre msdos, mais sa n'ouvre pas mon fichier.
Pourtant si je fait démarrer, éxecuter, cmd et que je tape [file://\\atlas\workflow\doc\aaaaaaaa.rtf \\atlas\workflow\doc\aaaaaaaa.rtf] sa m'ouvre bien mon fichier comme je veu.

Sa peu venir d'ou ?
0
Slyders Messages postés 300 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 8 janvier 2010 2
29 juin 2007 à 14:30
J'oubliais, je lance le script avec :
();<gras>"
value="open">
0
Slyders Messages postés 300 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 8 janvier 2010 2
29 juin 2007 à 15:00
wsh




.

run


(

'cmd /c "//atlas/workflow/doc/aaaaaaaa.rtf"'


);
Sa marche !

(Il fallait quand même doublé les // à la racine car c'est sur un réseau.)

Merci bien Bultez encore un épineux problème réglé.

Me reste à trouver le système pour Activer les controles ActiveX sur tous les postes de mes utilisateurs en même temps ou par un script ^^
0
Slyders Messages postés 300 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 8 janvier 2010 2
29 juin 2007 à 15:35
Oui je me penchais déjà sur le registre.
Je suis entrain d'utiliser un comparateur de registre avant et après l'option coché. ^^
Merci bien, Je valide se poste!
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
29 juin 2007 à 15:39
nickel si ça baigne. merci du retour.
<hr />


Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
0
Rejoignez-nous