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
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 77
    Points : 37
    Points
    37
    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 éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 840
    Points : 9 224
    Points
    9 224
    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 : 53
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    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
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 77
    Points : 37
    Points
    37
    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