IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Lancer une application sous différents navigteurs


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 77
    Par défaut Lancer une application sous différents navigteurs
    Salut à tous

    ci dessous les codes sous IE avec activeXObject qui permettra de lancer le programme exectuable .
    javascript
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    function execAppli(app,doc)
    {
    wshShell = new ActiveXObject("WScript.Shell");
    if ( app !="") 
    {
       wshShell.Run(app+" \""+doc+"\"", 1, true);
    } else {
       wshShell.Run(doc, 1, true);
    }
    }
    html
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="#" onclick="execAppli( 'winword' , 'fichier.doc' ); return false;">

    Comme activeXobject ne marche que sous Internet Explorer, je cherche une alternative pour faire fonctionner avec les autres navigateurs (Chrome, Firefox )

    Merci

  2. #2
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 841
    Par défaut

    C'est une question de sécurité , donc ça ne marche pas même pour les autres navigateurs, par contre ça peut marcher que localement avec un HTA = HTML Application
    Un exemple en HTA :
    Menu.hta
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    <HTML>
     <HEAD>
    <title>Menu © Hackoo © 2013</title>
    <HTA:APPLICATION 
         ID="Menu" 
         APPLICATIONNAME="Menu"
         SCROLL="yes"
         SINGLEINSTANCE="yes"
         WINDOWSTATE="Maximize"
         icon="explorer.exe"
    >
    <style>
        body{
            background-color: lightblue;
        }
        label,.btn{
            font-weight: bold;
        }
    </style>
    <META HTTP-EQUIV="MSThemeCompatible" CONTENT="YES">
     <SCRIPT TYPE="text/Vbscript">
    Sub Run(var)
    Set WS = CreateObject("WScript.shell")
    	Select Case var
    	    Case 1 WS.run("calc.exe")
            Case 2 WS.run("iexplore.exe") 
            Case 3 WS.run("cmd.exe")
            Case 4 WS.run("Explorer.exe ::{20d04fe0-3aea-1069-a2d8-08002b30309d}")'My Computer
            Case 5 WS.run "Explorer.exe ::{645FF040-5081-101B-9F08-00AA002F954E}"'Recycle Bin    
            Case 6
                 MyDoc = WS.SpecialFolders("MyDocuments") & "\"  
                 WS.run "Explorer.exe /n,/e,/root,"& MyDoc
            Case 7
                 WS.run "Explorer.exe /n,/e,/root,C:\Program Files"
            Case 8
                 WS.run "CONTROL.EXE APPWIZ.CPL"  
            Case 9
                 WS.run "CONTROL.EXE"
            Case 10
                 WS.run "CONTROL.EXE DESK.CPL"
            Case 11
                 WS.run "NOTEPAD.EXE"
            Case 12
                 WS.run "Winword"   
            Case 13
                Call OpenCD     
            Case 14
                Call CloseCD
     
     
    End select
    End Sub
    '_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/OpenCD()_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
    sub OpenCD()
    Dim ts 
    Dim strDriveLetter 
    Dim intDriveLetter 
    Dim fs 'As Scripting.FileSystemObject 
    Const CDROM = 4 
    On Error Resume Next 
    Set fs = CreateObject("Scripting.FileSystemObject") 
    ' Detection des lecteurs de CD 
    strDriveLetter = "" 
    For intDriveLetter = Asc("A") To Asc("Z") 'Limitez aux lecteurs souhaités
    	Err.Clear 
    	If fs.GetDrive(Chr(intDriveLetter)).DriveType = CDROM Then 
    		If Err.Number = 0 Then 
    			strDriveLetter = Chr(intDriveLetter) 
            Exit For 
    		End If 
    	End If 
    Next 
    ' Ouvrir tous les lecteurs 
    Set owmp = CreateObject("WMPlayer.OCX.7") 
    Set colCDROMs = owmp.cdromCollection 
    For d = 0 To colCDROMs.Count - 1 
    	colCDROMs.Item(d).Eject 
    Next 
    Set owmp = Nothing 
    Set colCDROMs = Nothing 
    end sub
    '_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/CloseCD()_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
    sub CloseCD()  
    Set wmp = CreateObject("WMPlayer.OCX.7")
    Set cdroms = wmp.cdromCollection
    If cdroms.Count >= 1 then
    For i = 0 to cdroms.Count - 1
    cdroms.Item(i).Eject
    Next
    For i = 0 to cdroms.Count - 1
    cdroms.Item(i).Eject
    Next
    End If
    end sub
     </SCRIPT>
    </HEAD>
    <BODY>
     <INPUT TYPE="button" onclick="Run(1)" VALUE="Run Calc.exe"><br><br>
     <INPUT TYPE="button" onclick="Run(2)" VALUE="Run iexplore.exe"><br><br>
     <INPUT TYPE="button" onclick="Run(3)" VALUE="Run Cmd.exe"><br><br>
     <INPUT TYPE="button" onclick="Run(4)" VALUE="My Computer"><br><br>
     <INPUT TYPE="button" onclick="Run(5)" VALUE="Recycle Bin"><br><br>
     <INPUT TYPE="button" onclick="Run(6)" VALUE="My Documents"><br><br>
     <INPUT TYPE="button" onclick="Run(7)" VALUE="Program Files"><br><br>
     <INPUT TYPE="button" onclick="Run(8)" VALUE="Installed Applications"><br><br>
     <INPUT TYPE="button" onclick="Run(9)" VALUE="Control Planel"><br><br>
     <INPUT TYPE="button" onclick="Run(10)" VALUE="DESK"><br><br>
     <INPUT TYPE="button" onclick="Run(11)" VALUE="Notepad"><br><br>
     <INPUT TYPE="button" onclick="Run(12)" VALUE="Winword"><br><br>
     <INPUT TYPE="button" onclick="Run(13)" VALUE="Open CD"><br><br>
     <INPUT TYPE="button" onclick="Run(14)" VALUE="Close CD"> 
    </BODY>
    </HTML>

  3. #3
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Je suis entièrement d'accord avec hackoofr. Ce n'est pas possible sur la plupart des navigateurs parce qu'une page Web n'a pas à avoir la possibilité de faire ça. En revanche, une page HTA est l'alternative la plus cohérente.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 77
    Par défaut
    Ah c'est dommage qu'il n y ait pas d 'alternative.
    Je vais donc étudié HTA et merci pour l'exemple du code

Discussions similaires

  1. Réponses: 8
    Dernier message: 03/06/2012, 19h12
  2. Problème pour lancer une application sous AIX
    Par Bouga74 dans le forum AIX
    Réponses: 2
    Dernier message: 23/08/2010, 13h46
  3. impossible de lancer une application sous VISTA
    Par kiminfor dans le forum Débuter
    Réponses: 6
    Dernier message: 05/01/2009, 00h22
  4. lancer une applic sous mac
    Par zais_ethael dans le forum Flash
    Réponses: 2
    Dernier message: 20/07/2006, 09h19
  5. [Système] lancer / kill une application sous linux
    Par Antoine NSG dans le forum Langage
    Réponses: 1
    Dernier message: 31/10/2005, 16h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo