Aide vbscript

Signaler
Messages postés
21
Date d'inscription
mardi 23 octobre 2007
Statut
Membre
Dernière intervention
13 novembre 2007
-
 cs_JMO -
Salut à vous,


Je supra débute en vbs et je dois faire un script qui permet de checker l'ensemble des disque dur d'une machine pour recuperer un fichier, tout en étant fonctionnel sur n'importe quel type de machine ( os différent, serveur/pc...) il me semble qu'il faut mettre une variable d'environnement , mais je ne sais pas trop, merci de votre aide

44 réponses

Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
Bonjour,
>>sur n'importe quel type de machine ( os différent, serveur/pc...)
    même UNIX ?


<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Messages postés
21
Date d'inscription
mardi 23 octobre 2007
Statut
Membre
Dernière intervention
13 novembre 2007

Bonjour

dans un premier temps surtout du windows, mais dans ma boite on a du francais et du US donc pas les memes chemins + les serveurs, il faudrait kil soit capable sans mettre le chemin en dur de checker l'ordinateur entier pour selectionner un fichier spécifique...
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
>>dans un premier temps surtout du windows
    même du windows 3.1 ? 95 ? 2000 ? ... etc ?


<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Messages postés
21
Date d'inscription
mardi 23 octobre 2007
Statut
Membre
Dernière intervention
13 novembre 2007

ok apparemment ce n'était pas clair je vais essayer d'expliquer clairement ce qu'on m'a demander

la j'ai deja un script qui tourne plus ou moins et qui permet de modifier des images tiré d'un mainframe pour les retranscrire en windows et l'afficher en tif...
Sauf que ce script n'interroge des "images mainframe"que sur le cd , or j'aurai besoin que ce script soit plus dynamique c'est a dire que l'on puisse selectionner nous meme à l'endroit que l'on veut un fichier précis... ( disque c, d, programes files... peu importe) ( dans le cas ou les fichiers ne soient pas sur le cd) sans rentrer une variable en dur comme
chemin = select_a_folder("Veuiller sélectionner un dossier","Poste de travail:" ),
chemin = select_a_folder("Veuiller sélectionner un dossier","c" ) etc...

car je peux avoir des versions d'os differentes,(sous 2000 uk/fr, 2003 ou xp) d'ou mon interrogation sur une variable d'environnement permettant de checker tout le "pc"...
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
>>ce qu'on m'a demandé
    ah... ton client ? ton patron ?

>>j'ai deja un script qui tourne plus ou moins
    qui fonctionne ou pas ?
    sinon : on peut voir ?

>>interroge des "images mainframe" que sur le cd
    euh.... ? ça regarde sur le mainframe ou sur le CD ?

>>j'aurai besoin ... un fichier
précis. 
    donc finalemnt, 'modifier' un fichier, de n'importe où ( mainframe,    
            CD, diskette, Micros réseau ou pas .. ) vers n'importe où, en tif
    en résumant ? ai-je compris ?



>>variable d'environnement permettant de checker tout le "pc".
    euh.. quel rapport avec ce que tu demandes ?
    vbscript ( ou autres ) peut 'regarder' sur le réseau
       on voit plein d'exemples partout....
    mais je ne suis pas sûr ( je suis un peu neuneu ),
       de ce que tu cherches à faire






<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Messages postés
78
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
6 octobre 2008

re

Je ne vois pas ce qui pose problème dans le fait d'inscrire le chemin en dur mais tu dois avoir tes raisons...

Tant que tu restes sous Windows, ton script fonctionnera de la même façon (uk ou fr, server ou station).

WSH (moteur de VBScript) est inclus depuis Windows 2000 et installable sous 95, 98 ou NT4 donc à priori pas de souci...

Avec FileSystemObject, tu as la propriété Drives qui retourne une collection de tous les disques (dur, amovibles, CD...) chacun d'eux apparaissant sous la forme d'un objet Drive.

Exemple :

Dim fso, drv, drvList
Set fso = CreateObject("Scripting.FileSystemObject")
Set drvList = fso.Drives
For Each drv in drvList
      Wscript.Echo drv.DriveLetter & ":"
Next
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
>>Tant que tu restes sous Windows, ton script fonctionnera de la même façon
>>(uk ou fr, server ou station???).
    hitch16++
>>Avec FileSystemObject, tu as la propriété Drives
    hitch16++
    mais je ne sais pas s'il faut explorer ou si c'est un ficher "choisi"
    tant qu'à le transformer en tif....
   
et je ne suis pas sûr que tomyboy n'attende pas qu'on lui fasse !

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Messages postés
21
Date d'inscription
mardi 23 octobre 2007
Statut
Membre
Dernière intervention
13 novembre 2007

lol c'est vrai que j'y connais vraiment rien,
mais dela a demander qu'on me le fasse, pas vraiment.
Mon script fait déja la conversion mainframe vers windows, je dois juste trouver une fonction parcourir l'ensemble du disque , et accéssirement reussir a ouvrir deux IE pur visualiser les fichier tif ...
Messages postés
78
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
6 octobre 2008

Si au moins on avait le code on pourrait mieux voir où tu veux en venir tomyboy
Messages postés
21
Date d'inscription
mardi 23 octobre 2007
Statut
Membre
Dernière intervention
13 novembre 2007

yes je te l'ai envoyé
Messages postés
78
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
6 octobre 2008

Utilise un common dialog, tu sélectionnes où tu veux sur le disque que tu veux ou sur le réseau...
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
j'ai reçu le script en message privé,
    je ne sais pas si tu vas apprécier que je mette ici ?

je pense qu'au départ, ta question était dans le bar,
    mais comme il a été déplacé vers le bon forum et que les VBScripteurs
    s'intéressent à ton problème, je vais les laisse faire ...
    ( ne serait-ce que parce qu'ils seront plus compétents )

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Messages postés
21
Date d'inscription
mardi 23 octobre 2007
Statut
Membre
Dernière intervention
13 novembre 2007

ok no soucy, c juste que c pas un script de ma propriété mais bon si on peut m'aider c avec plaisir...

tu l'as poster ou exactement que je puisse voir les réponses ;-)
Messages postés
78
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
6 octobre 2008

Et mon common dialog, tu t'en tapes??
Messages postés
21
Date d'inscription
mardi 23 octobre 2007
Statut
Membre
Dernière intervention
13 novembre 2007

mdrrr t'ennerves pas j'ai deja essayé les common dialog, mais je suis obligé de spécifier un disque ( ou une partition) alors que mon interet est d'avoir tout ( bureau, c,d,cd, usb,reseau) et ce quelque soit l'os.

je ne sais pas trop pk mon chef ne veut pas de chemin en dur mais il ne veut pas...
Messages postés
78
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
6 octobre 2008

je m'énerver pas je t'explique

pour le common dialog tu n'as pas à spécifier un disque puisque tu choisis le chemin via l'interface graphique, tu peux te balader partout avec...

Maintenant j'aimerais bien savoir comment tu l'as mis en oeuvre... Juste pour voir
Messages postés
21
Date d'inscription
mardi 23 octobre 2007
Statut
Membre
Dernière intervention
13 novembre 2007

ah oui non tu as raison
en fait c'est avec la fonction "ErrHandler" que j'ai du mal, je pense que je dois rensigner quelque chose afin d'avoir une gestion des erreurs non ? voila le bout de script

Private Sub Command1_Click()
  ' Set CancelError is True
  CommonDialog1.CancelError = True
  On Error GoTo ErrHandler
  ' Set flags
  CommonDialog1.Flags = cdlOFNHideReadOnly
  ' Set filters
  CommonDialog1.Filter = "All Files (*.*)|*.*|Text Files" & _
  "(*.txt)|*.txt|Batch Files (*.bat)|*.bat"
  ' Specify default filter
  CommonDialog1.FilterIndex = 2
  ' Display the Open dialog box
  CommonDialog1.ShowOpen
  ' Display name of selected file
  MsgBox CommonDialog1.filename
  Exit Sub
 
ErrHandler:
  'User pressed the Cancel button
  Exit Sub
End Sub
Messages postés
78
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
6 octobre 2008

Tu te compliques la vie pour rien....

Set objDialog = CreateObject("UserAccounts.CommonDialog")
objDialog.Filter = "VBScript |*.vbs|Java Script| *.js|Batch| *.bat|Fichiers Texte| *.txt |Tous types|*.*"
objDialog.Flags = &H0200
objDialog.FilterIndex = 1
objDialog.InitialDir = "C:"
intResult = objDialog.ShowOpen


If intResult = 0 Then
    Wscript.Quit
Else
    Wscript.Echo objDialog.FileName
End If
Messages postés
21
Date d'inscription
mardi 23 octobre 2007
Statut
Membre
Dernière intervention
13 novembre 2007

yes mais tu vois tu spécifies le lecteur c, le truc c'est que je voudrai avoir toute l'arborescence du pc sans avoir a spécifier un endroit spécifique,
si par malchance mon script est utilisé par une machine qui n'a pas la meme dénomination des lettres que nous... exemple mon lecteur de cd a la lettre z ...
ce n'est qu'un exemple mais il ne faudrait pas ke le chemin soit rentré en dur ...
Messages postés
78
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
6 octobre 2008

Le C: indique ici le dossier d'ouverture par défaut mais tu paeux passer tous les périfériques en revue...
copie le code et mets le dans un VBS (tout seul) tu verras