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

VBScript Discussion :

Quel est cet objet attendu sur Instr ?


Sujet :

VBScript

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2009
    Messages
    163
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 163
    Points : 108
    Points
    108
    Par défaut Quel est cet objet attendu sur Instr ?
    Bonjour à toutes et à tous,
    Le script hta ci dessous est lancé par un . bat de la forme :
    xargu.hta "c:\xargu.hta" c:\toto
    Pourquoi ce message d'erreur : "objet attendu"
    sur la ligne zxi=InStr(3,argu,"c:"); ?
    Je débute en vbs.

    Merci pour votre aide ?
    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
    <head
    <HEAD>
      <TITLE>Concatener des documents PDF d'un dossier</TITLE>
        <HTA:APPLICATION ID="oHTA"
         APPLICATIONNAME="CctnPDF"
         BORDER="thick"
         BORDERSTYLE="normal"
         CAPTION="yes"
         ICON=""
         MAXIMIZEBUTTON="yes"
         MINIMIZEBUTTON="yes"
         SHOWINTASKBAR="no"
         SINGLEINSTANCE="no"
         SYSMENU="yes"
         VERSION="1.0"
         WINDOWSTATE="normal"/>
    <script>
      /* This function also retrieves the value of the commandLine property,
         which cannot be set as an attribute.  */
       function window.onload()
       {
       argu=oHTA.commandLine;
       zxi=InStr(3,argu, "c:"); 
       zxi=zxi+2;
       doss=Mid(argu,zxi)
       targ.innerText=doss;
        }
    </script>
    <script type="text/javascript">
    function coucou() {	
    alert(document.getElementById("targ").innerText);}
    </script>	
    </head>
    <body>
    Test commandline
    <div id="targ">
    </div>
    <br>
    <input type="button" value="GO" onClick="coucou()">
    
    	
    </body>

  2. #2
    Membre actif
    Inscrit en
    Mai 2008
    Messages
    189
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 189
    Points : 212
    Points
    212
    Par défaut
    Bonjour,

    Je ne travaille pas (encore) avec hta, mais pour voir si la chaine est renseignée, tu peux peut etre essayer un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    wscript.echo argu 'ou msgbox
    devant cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    zxi=InStr(3,argu, "c:");
    Autre chose c'est normal les ";" ? parce qu'en VBS y'en a pas normalement, a moins qu'en HTA...

  3. #3
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    j'ai l'impression que tu nous fait un beau mélange de javascript et vbscript ... essai de te décider sur le langage utilisé ... ton code semble être du javascript (avec tous ces ; en fin de ligne....)

  4. #4
    Membre régulier
    Inscrit en
    Janvier 2009
    Messages
    163
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 163
    Points : 108
    Points
    108
    Par défaut Mais non mais non :)
    Non, je n'ai pas fait de mélange de javascript et de vbscript.
    Dans ma page hta j'ai du vbscript (principalement pour récupérer les arguments de la ligne de commande) ET du javascript que je préfère.
    J'ai simplement modifié un script que j'ai trouvé : ici. Site Microsoft himself.
    On y voit des points-virgule !

    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
    <HTML>
    <HEAD>
      <TITLE>HTA Demo</TITLE>
        <HTA:APPLICATION ID="oHTA"
         APPLICATIONNAME="myApp"
         BORDER="thin"
         BORDERSTYLE="normal"
         CAPTION="yes"
         ICON=""
         MAXIMIZEBUTTON="yes"
         MINIMIZEBUTTON="yes"
         SHOWINTASKBAR="no"
         SINGLEINSTANCE="no"
         SYSMENU="yes"
         VERSION="1.0"
         WINDOWSTATE="maximize"/>
     
      <SCRIPT>
     
      /* This function also retrieves the value of the commandLine property,
         which cannot be set as an attribute.  */
     
      function window.onload()
      {
         sTempStr = "applicationName  = " + oHTA.applicationName + "\n" + 
                    "border           = " + oHTA.border          + "\n" +
                    "borderStyle      = " + oHTA.borderStyle     + "\n" + 
                    "caption          = " + oHTA.caption         + "\n" +
                    "commandLine      = " + oHTA.commandLine     + "\n" +
                    "icon             = " + oHTA.icon            + "\n" +
                    "maximizeButton   = " + oHTA.maximizeButton  + "\n" +
                    "minimizeButton   = " + oHTA.minimizeButton  + "\n" + 
                    "showInTaskBar    = " + oHTA.showInTaskbar   + "\n" +
                    "singleInstance   = " + oHTA.singleInstance  + "\n" +  
                    "sysMenu          = " + oHTA.sysMenu         + "\n" + 
                    "version          = " + oHTA.version         + "\n" + 
                    "windowState      = " + oHTA.windowState     + "\n" ;
     
         oPre.innerText = sTempStr;		  
      }
      </SCRIPT>
    </HEAD>
    <BODY SCROLL="no">
      <PRE ID=oPre>  </PRE>
    </BODY>
    </HTML>
    Après d'autres recherches, j'ai trouvé un autre exemple qui fonctionne parfaitement. Qu'est-ce qui fait que le premier code plante ? (pour la culture uniquement, bien sur). Et la, plus de point-virgule

    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
    <meta http-equiv="Content-Type" content="text>/html" charset="EUC-JP">
    <HEAD>
      <TITLE>Concatener tous les documents PDF d'un dossier</TITLE>
        <HTA:APPLICATION ID="oHTA"
         APPLICATIONNAME="CctnPDF"
         BORDER="thick"
         BORDERSTYLE="normal"
         CAPTION="yes"
         ICON=""
         MAXIMIZEBUTTON="yes"
         MINIMIZEBUTTON="yes"
         SHOWINTASKBAR="no"
         SINGLEINSTANCE="no"
         SYSMENU="yes"
         VERSION="1.0"
         WINDOWSTATE="normal" />
    <script LANGUAGE="VBScript">
       sub  window_onload
       window.resizeTo 600,400 
       argu=oHTA.commandLine
       xi=inStr(5, argu, ":")
       xi=xi-1
       doss=Mid(argu, xi)    
       targ.innerText=doss
     end sub
    </script>
    <script type="text/javascript">
    function coucou() {	
    alert(document.getElementById("targ").innerText);}
    </script>	
    </head>
    <body>
    Dossier contenant les fichiers pdf &agrave concat&eacutener :
    <div id="targ">
    </div>
    <br>
    <input type="button" value="GO" onClick="coucou()">
     
     
    </body>

  5. #5
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    Citation Envoyé par Walterbelo Voir le message
    ...Qu'est-ce qui fait que le premier code plante ? (pour la culture uniquement, bien sur). E...
    encore une fois ton premier code me semble être du javascript

  6. #6
    Membre régulier
    Inscrit en
    Janvier 2009
    Messages
    163
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 163
    Points : 108
    Points
    108
    Par défaut Ben oui bbil
    Tu as raison ! Ce script récupéré sur un site Microsoft est bien du Javascript !
    Ça alors, je n'en reviens pas que que l'objet application HTA et son attribut commandLine soient reconnus par JavaScript.

    Ton tutoriel sur HTA est superbe, le chapitre sur l'utilisation des ActiveX est vraiment clair et va m'être bien utile.
    Un paragraphe sur l'utilisation de Wscript.Shell pour le lancement et le pilotage d'application ?

    J'ai téléchargé COMView et j'ai deux questions :
    1. Je n'ai pas trouvé le contrôle CNTMonthView en faisant une recherche sur le CLSID de ton exmple, ce qui ne l'empêche pas de fonctionner parfaitement ?
    2. Comment utiliser les contrôles des boites de dialogues d'ouverture de fichier et de sélection de dossier ?
    J'ai lu ton post à ce sujet, j'ai été sur
    http://ourworld.compuserve.com/homep...SHDynaCall.htm
    C'est un peu ardu pour moi et ils ne parlent pas de XP.


    Merci et bravo

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Quel est le meilleur livre sur le SQL ?
    Par Marc Lussac dans le forum Livres
    Réponses: 78
    Dernier message: 03/10/2019, 21h04
  2. Quel est cet objet ? (Image jointe)
    Par Spredzy dans le forum Android
    Réponses: 2
    Dernier message: 14/04/2010, 03h09
  3. Quel est votre livre préféré sur Java ?
    Par Ricky81 dans le forum Général Java
    Réponses: 138
    Dernier message: 25/11/2006, 04h42
  4. Réponses: 6
    Dernier message: 12/06/2006, 14h05
  5. [c#] Quel est cet objet ?
    Par SDuh dans le forum Windows Forms
    Réponses: 5
    Dernier message: 28/02/2006, 14h27

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