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 :

Comment expliquer cette différence ?


Sujet :

VBScript

  1. #1
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 420
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 420
    Par défaut Comment expliquer cette différence ?
    Salut tout le monde;
    Le code suivant marche (tant bien que mal) sauf que les résultats affichés par MsgBox puis par un éditeur de texte (Notepad) sont différents.
    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
    Option Explicit
     
    dim WS,fd,S,I,cnt,fso,f,n,St
     
    set WS=WScript.CreateObject("WScript.Shell")
    cnt=ws.specialfolders.count
    Message
    Ecrire
    Voir
    Nettoyer
     
    '=========================================
    function LeftZero(n)
      s="" 
      If n<=9 then 
          s="0"+cstr(n)
       elseif n>=10 then
          s=cstr(n)
       end if
     LeftZero=s
     
    end function
     
    '  ============= Affichage avec MsgBox ==================
    Sub Message()
           For I=0 to cnt-1
              St=St+ LeftZero(I) + vbtab +":   " + WS.SpecialFolders(I) + vbnewline
           Next
           MsgBox St
    End Sub
    '================== Ecriture du résultat dans un fichier texte =============
    Sub Ecrire()
    	set fso = createobject("Scripting.FileSystemObject")
    	set f   = fso.CreateTextFile("SpecFold.txt",true)
    	f.Write St
    	f.close
    End Sub
    '======================Affichage du texte ==========================
    Sub Voir()
            dim Affich
    	Affich="CMD /c %Windir%\System32\NotePad.exe SpecFold.txt"
    	Ws.Run Affich,0,true
    End Sub
    ' ========================= Nettoyage ================
    Sub Nettoyer()
    	set f=fso.getfile("SpecFold.txt")
    	f.delete   ' Le fichier ne sera supprimé que si l'on ferme la fenêtre Wordpad
    	set fso=nothing
    	set ws=nothing
    End Sub
    Comment peut-on expliquer cette différence ?
    J'ai même changé l'ordre d'affichage : Texte puis MsgBox mais rien n'y fait.
    Avec mes remerciements anticipés.
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  2. #2
    Expert éminent


    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
    Par défaut
    de quelle différence s'agit'il ? le msgBox affiche moins de caractères ?

  3. #3
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 420
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 420
    Par défaut
    de quelle différence s'agit'il ? le msgBox affiche moins de caractères ?
    Salut;
    Non seulement moins de caractères(pour le n° 16=C:\Documents and Settings\Nom_Utilisateur\Mes documents) mais c'est le dernier dossier spécial(n°17 =C:\Documents and Settings\Nom_Utilisateur\Menu Démarrer\Programmes) qui ne s'affiche pas dans MsgBox.
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  4. #4
    Expert éminent


    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
    Par défaut
    le nombre de caractére affichable par un MsgBox est limité :

    Citation Envoyé par aide en ligne
    MsgBox(prompt[, buttons][, title][, helpfile, context])
    Arguments
    prompt
    Expression de chaîne qui est affichée sous la forme d'un message dans la boîte de dialogue. La longueur maximum de l'argument prompt est environ 1024 caractères, selon la largeur des caractères utilisés. Si l'argument prompt se compose de plusieurs lignes, vous pouvez les séparer en utilisant un caractère de retour chariot (Chr(13)), un caractère de retour à la ligne (Chr(10)) ou une combinaison de ces deux caractères (Chr(13) & Chr(10)).

  5. #5
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 420
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 420
    Par défaut
    Salut
    Merci beaucoup de ta réaction si rapide et de ta réponse concluante.

    Problème

    Encore merci.
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

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

Discussions similaires

  1. Comment expliquer la différence de taille avec le dépôt ?
    Par Tristan Zwingelstein dans le forum Subversion
    Réponses: 0
    Dernier message: 30/06/2010, 16h25
  2. Réponses: 7
    Dernier message: 19/07/2005, 08h31
  3. Comment obtenir la différence entre deux dates ?
    Par jbat dans le forum Langage
    Réponses: 4
    Dernier message: 02/06/2005, 09h34
  4. [débutant][JSci][Matrix]comment utiliser cette classe
    Par Clark dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 10/05/2005, 10h40

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