Déclencher une commande DOS [Résolu]

francoisch 260 Messages postés vendredi 19 novembre 2004Date d'inscription 16 février 2015 Dernière intervention - 14 mai 2008 à 18:38 - Dernière réponse : Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention
- 6 mars 2009 à 09:54
Bonjour

Je voudrais déclencher une commande DOS depuis du code Javascript pour, par exemple, lancer Word, Messenger, ?

La commande est naturellement exécutée sur le PC qui consulte la page contenant le JS; toute autre solution qu'avec du JS serait aussi bienvenue.

Merci par avance de vos suggestions.

Francois
Afficher la suite 

Votre réponse

20 réponses

Meilleure réponse
francoisch 260 Messages postés vendredi 19 novembre 2004Date d'inscription 16 février 2015 Dernière intervention - 15 mai 2008 à 19:03
3
Merci
bonjour Bultez et merci de ta réponse plus que complète.

Tu as répondu au delà de ce que j'espérais et ça va m'être très utile.

Merci encore.

Francois

Merci francoisch 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 95 internautes ce mois-ci

Commenter la réponse de francoisch
nicomilville 3498 Messages postés lundi 16 juillet 2007Date d'inscription 28 février 2014 Dernière intervention - 14 mai 2008 à 18:42
0
Merci
Salut,

Je ne suis pas sur que c'est possible en javascript mais si c'est possible tu devrai te tourné vers les objets ActiveX !

a++

Si t'a besoin d'aide, MP !!!
Un forum...
Commenter la réponse de nicomilville
francoisch 260 Messages postés vendredi 19 novembre 2004Date d'inscription 16 février 2015 Dernière intervention - 14 mai 2008 à 19:03
0
Merci
bonjour

Je me tournerai bien volontiers dans la direction où se trouvera une solution.

Aurais tu un début de piste pour chercher qqechose en ActiveX? des Forums en particulier.

Merci à toi.

Francois
Commenter la réponse de francoisch
nicomilville 3498 Messages postés lundi 16 juillet 2007Date d'inscription 28 février 2014 Dernière intervention - 14 mai 2008 à 19:07
0
Merci
non pas particulièrement, peut être une recherche sur google sur les controles ActiveX en javascript par exemple le filesystemobject !!!

a++

Si t'a besoin d'aide, MP !!!
Un forum...
Commenter la réponse de nicomilville
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 15 mai 2008 à 10:08
0
Merci
Bonjour,

>>Je voudrais déclencher une commande DOS depuis du code Javascript
    c'est possible facilement
        new ActiveXObject("WScript.Shell").Exec("cmd /c toutes les commandes DOS possibles").
       je dis facilement, mais pas tant que cal, puisque le DOS n'existe plu depuis XP.
       c'est windows en ligne de commande.

>>pour, par exemple, lancer Word, Messenger, …

    ah ben là... même pas la peine de passer par le DOS....
    pour lancer excell par exemple :


    var ExcelApp = new ActiveXObject("Excel.Application");
    ExcelApp.Application.Visible = true;
    ExcelApp.Workbooks.Open("c:\\yourfile2.xls");

    l'équivalent exsite sur la plupart des produits microsoft au moins

>>toute autre solution qu’avec du JS serait aussi
bienvenue.


    ah bon ?
    pas de js ?
    tu veux faire quoi.... exactement ?

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Commenter la réponse de cs_bultez
francoisch 260 Messages postés vendredi 19 novembre 2004Date d'inscription 16 février 2015 Dernière intervention - 15 mai 2008 à 11:46
0
Merci
bonjour


Mon besoin est tres simple: lancer une commande DOS sur le PC de celui qui consulte une page Web.

De manière générale, je veux proposer sur une page des boutons pour aller aussi bien sur le Web que pour lancer des applications locales: Word, ...

En Javascript, ça m'irait très bien; as tu une solution simple?

Par avance merci de ton aide.

Francois
Commenter la réponse de francoisch
francoisch 260 Messages postés vendredi 19 novembre 2004Date d'inscription 16 février 2015 Dernière intervention - 15 mai 2008 à 11:52
0
Merci
J'ai trouvé / modifié ça mais ça ne fonctionne pas:
<HEAD>

<script type=

"text/javascript">function lancer(exe) 

{ 

var ws = new ActiveXObject("WScript.Shell");

try 

{ 

ws.run (exe,1,true); 

} 

catch(erreur) 

{

alert(erreur.description);

} 

}

function clair()

{

lancer('"C:\WINDOWS\system32\osk.exe"' );

}

</script>

</HEAD>

Clavier visuel



Une suggestion?

Francois
Commenter la réponse de francoisch
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 15 mai 2008 à 12:49
0
Merci
[auteur/FRANCOISCH/384054.aspx
]



>>J'ai trouvé
    c'est aussi une possibilité...
        pas celle que je préfère, mais bon...

    ça ressemble d'ailleurs à l'un de mes exemples

       qui trainent, mais je ne suis pas le seul
       à avoir montré ça...      



>>modifié ça mais ça ne fonctionne pas:
    pas de souci.... enfin avec IE, et si
       on met




lancer("C:\WINDOWS\system32\osk.exe");

  et si osk.exe existe bien là où tu le dis...






sinon essaye lancer("notepad.exe");
tu verras que ça baigne....

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Commenter la réponse de cs_bultez
francoisch 260 Messages postés vendredi 19 novembre 2004Date d'inscription 16 février 2015 Dernière intervention - 15 mai 2008 à 14:38
0
Merci
Oui, tu as raison, ça marche avec Notepad (sur notepad.exe ou sur c:/windows/system32/notepad.exe) et ça ne marche pas avec le clavier visuel (osk.exe).

Pourtant, ils sont tous les deux dans le même répertoire Windows/system32, qui est aussi un des 3 Paths définis dans mon PC; comment ça se fait?

Quand j'appelle c:/windows/system32/osk.exe, une boite DOS fugitive me dit que le chemin d'accès spécifié est introuvable; pourtant, j'ai appellé c:/windows/system32/notepad.exe avec succès et osk.exe est bien là aussi.

Est-ce qu'il me manque une information sur le fonctionnement de Cmd, sur le Path?

Comment se fait-il que Notepad soit trouvé et pas un autre programme (osk ou un autre)?

Merci par avance de vos lumières.

Francois
Commenter la réponse de francoisch
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 15 mai 2008 à 16:12
0
Merci
je n'avais pas relu mes infos !
    run  fonctionne  uniquement avec le nom d'un éxécutable uniquement si sous un répertoire
                                                            accessible directement
                                                            ( "par path" : windows,mes documents ... )

j'ai déjà mis, mais voici :

<HTML>
<HEAD>
<TITLE>? Lancer un Exécutable ? Décembre 2004 © marcel.Bultez@Tiscali.fr ?</TITLE>
</HEAD>

fichier

nom exécutable
nom exécutable ou fichier ( lancera le programme
                                                            associé, celui utilisé par "Ouvrir avec" )
    nom d'un éxécutable uniquement si sous un répertoire
                                                            accessible directement
                                                            ( "par path" : windows,mes documents ... )
lancer word
           
<script Type="Text/JavaScript"><!--------
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
function lancerword(doc) //~~ Lancer une application ~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{    var app_word = new ActiveXObject("Word.Application");
    app_word.Application.Visible = true;
    try                 { app_word.documents.open(doc);    }
    catch(erreur)    {    }
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
function lancerclassid(exe) //~~ Active'X ~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{    var p = window.createPopup();
    var b = p.document.body;
    b.innerHTML =  '<OBJECT CLASSID="CLSID:12345678-1234-1234-1234-123456789ABC"' +
                        '        CODEBASE="'+exe+'"></OBJECT>';
}
   
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
function lancerstart(exe) //~~ Run ~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{    var w = new ActiveXObject("WScript.Shell");
    w.run ('start "'+exe+'"');
}
/*        w.run ('start "'+exe+'"'); c'est pour windows 98
        w.run ('cmd "'+exe+'"');   c'est pour windows XP    */
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
function lancerrun(exe) //~~ Exe ~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{     var w = new ActiveXObject("WScript.Shell");
    try                 {    w.run (exe,1,true); }
    catch(erreur)    {    }
}
//--------></script>
</HTML>

    tu peux regarder aussi : VIP

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Commenter la réponse de cs_bultez
nicomilville 3498 Messages postés lundi 16 juillet 2007Date d'inscription 28 février 2014 Dernière intervention - 15 mai 2008 à 19:08
0
Merci
Re,

pour remercier bultez il y a le bouton réponse accèpté !

a++

Si t'a besoin d'aide, MP !!!
Un forum...
Commenter la réponse de nicomilville
francoisch 260 Messages postés vendredi 19 novembre 2004Date d'inscription 16 février 2015 Dernière intervention - 19 mai 2008 à 21:34
0
Merci
bonsoir Bultez

J'ai pu me mettre ce soir à tester ton code du 15 Mai; je tombe sur une erreur: un composant ActiveX ne peut pas créer un objet.


Pour sortir de là, j'ai installé Windows Scripting Host et placé mon site dans les sites de confiance mais ça ne change rien.

Comment faire? Par avance merci de votre aide.

Francois


 
Commenter la réponse de francoisch
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 20 mai 2008 à 05:54
0
Merci
Bonjour,
    parce que les activeX ne sont pas activés dans Internet Explorer
    ou que tu n'as pas les droits d'utiliser.
    d'ailleurs sur un site, si c'est chez un FAI "normal",
        les ActiveX sont très rarement ( jamais ? )   autorisés.
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Commenter la réponse de cs_bultez
francoisch 260 Messages postés vendredi 19 novembre 2004Date d'inscription 16 février 2015 Dernière intervention - 20 mai 2008 à 09:50
0
Merci
OK Bultez mais comment puis je utiliser ton code, du 15 Mai?


Francois


 
Commenter la réponse de francoisch
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 20 mai 2008 à 10:00
0
Merci
>>comment puis je utiliser ton code,
    comme c'est expliqué/montré dans l'exemple qu'est ce code.
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Commenter la réponse de cs_bultez
francoisch 260 Messages postés vendredi 19 novembre 2004Date d'inscription 16 février 2015 Dernière intervention - 20 mai 2008 à 10:09
0
Merci
Oui, j'ai fait un copier / coller complet de ton code dans une page de test et je l'ai exécuté; c'est là que je suis tombé sur l'erreur ActiveX.

J'ai raté qqechose?

Francois
Commenter la réponse de francoisch
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 20 mai 2008 à 10:38
0
Merci
me citerais-je ?
>>les activeX ne sont pas activés dans Internet Explorer
>> ou tu n'as pas les droits pour utiliser.
>> d'ailleurs sur un site, si c'est chez un FAI "normal",
>> les ActiveX sont très rarement (jamais ?) autorisés.
Commenter la réponse de cs_bultez
francoisch 260 Messages postés vendredi 19 novembre 2004Date d'inscription 16 février 2015 Dernière intervention - 21 mai 2008 à 21:40
0
Merci
Bon, maintenant, puisque les solutions avec ActiveX existent mais ne fonctionnent pas, que reste t il pour déclencher une commande DOS depuis une page Web?

Merci par avance de votre aide.

Francois
Commenter la réponse de francoisch
fiaskou 2 Messages postés samedi 2 décembre 2000Date d'inscription 5 mars 2009 Dernière intervention - 5 mars 2009 à 23:03
0
Merci
En suivant ce fil je suis un peu circonspect.....

est-il possible d'exéxuter ce code (en réseau privé) :
A ordi sous linux ,serveur apache2(cgi,perl,php)
B ordi client sous xp (internet explrer 6)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " http://www.w3.org/TR/html4/loose.dtd ">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Document sans nom</title>
</head>

<script type="text/javascript">
function toto()
{
   var w = new ActiveXObject("WScript.Shell");
   w.run ('cmd /c explorer');
 }
</script>
[javascript:void(toto()); titi]

</html>

Le but de ce script étant de lancer simplement l'explorer d'xp!

source :http://www.javascriptfr.com/forum/sujet-EXECUTER-LIGNE-COMMANDE-DOS_795415.aspx
<strike>
</strike>Chez moi ca ne marche pas....

1)il manque un truc au niveau du serveur...javascript??
2)au niveau du client??(j'ai autorisé tout ce qui est activex sur IE6)
3)j'insiste su le fait que je suis en réseau privé..donc rien ne passe par le FAI
4)ou j'y comprend vraiment rien!!
<strike></strike>
Commenter la réponse de fiaskou
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 6 mars 2009 à 09:54
0
Merci
t'as remarqué que le message datait de plus de 9 mois ?
t'as du bol que je repasse ici !

c'est spécifique windows.   avec linux ça ne fonctionnera pas.
mais si tu ne veux que lancer l'explorateur : [file://c:\ lien]

Cordialement [mon Site] [M'écrire] Bul
Commenter la réponse de Bul3

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.