|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : [VBS] Ouvrir un lecteur spécifique. [ Langages dérivés / VBScript ] (akaii)
Informations & options pour cette discussion
|
mercredi 23 juillet 2008 à 06:37:45 |
[VBS] Ouvrir un lecteur spécifique.

akaii
|
Hello, Je veux faire un script qui affiche une fenêtre demandant si il faut synchroniser les fichiers sur le lecteur D:\ de mon disque dur. Si la réponse est "Oui" la synchronisation se fait sans problème. Si la réponse est "Non" par contre ça ne fonctionne pas. Ce que fait ou devrait faire le code ci-dessous, c'est tout simplement ouvrir la clé USB ou se trouve le script comme si on avait fait un click-droit "Explorer", mais ça ne fonctionne pas... j'espère que quelqu'un pourra m'aider
Code : - Dim oFso
- Dim sDrive
- Dim oSshell
-
- Set oFso= CreateObject("Scripting.FileSystemObject" )
- Set oShell= WScript.CreateObject("Shell.Application" )
-
- response=msgbox("Voulez-vous synchroniser les fichiers personnels avec votre ordinateur?", vbQuestion+vbYesNo, "Synchroniser?" )
-
-
- if response=6 then
-
- Const OverWriteFiles = TRUE
-
- Set objFSP = CreateObject("Scripting.FileSystemObject" )
- objFSP.CopyFolder "\\Autorun", "D:\Personnel\MEMORYSTICK", OverWriteFiles
-
- objFSP.CopyFolder "\\Autorun", "D:\Personnel\MEMORYSTICK", OverWriteFiles
-
- objFSP.CopyFolder "\\Backup", "D:\Personnel\MEMORYSTICK", OverWriteFiles
-
- objFSP.CopyFolder "\\Koniambo", "D:\Personnel\MEMORYSTICK", OverWriteFiles
-
- objFSP.CopyFolder "\\Personnel", "D:\Personnel\MEMORYSTICK", OverWriteFiles
-
- objFSP.CopyFolder "\\Software", "D:\Personnel\MEMORYSTICK", OverWriteFiles
-
- objFSP.CopyFolder "\\autorun.inf", "D:\Personnel\MEMORYSTICK", OverWriteFiles
-
- Else
-
- For Each sDrive In oFso.Drives
- If Not sDrive="A:" then
- If oFso.FolderExists(sDrive & "\aKaii" ) Then
- oShell.Open sDrive
- Exit For
- End If
- End If
- Next
-
- end if
| Le script se relance à chaque fois que je click "Non", ca veut dire qu'il ouvre bien la clé USB, mais qu'il exécute automatiquement l'autorun => cercle perpétuel...
|
|
|
|
mercredi 23 juillet 2008 à 11:55:23 |
Re : [VBS] Ouvrir un lecteur spécifique.

JMO
|
 Bonjour, Il faut utiliser un CommonDialog pour afficher le répertoire souhaité sur la clé USB. exemple: Option Explicit Dim oFso, oShell Dim sDrive, sResult Dim var1, var2, var3
var1 = "\aKaii " 'choix du folder var2 = "Selection fichier" var3 = "|*.*|" 'tous les fichiers
Set oFso = CreateObject("Scripting.FileSystemObject") Set oShell= WScript.CreateObject("Shell.Application" ) ' DriveType: ' 0: "Inconnu" ' 1: "Amovible" ' 2: "Fixe" ' 3: "Réseau" ' 4: "CD-ROM" ' 5: "Disque virtuel"
For Each sDrive in oFso.Drives If sDrive.DriveType = 1 And sDrive.IsReady Then If oFso.FolderExists(sDrive & var1) Then MsgBox "DriveLetter: " & sDrive.DriveLetter & vbCrLf & _ "VolumeName: " & sDrive.VolumeName sResult = BrowseForFile(sDrive & var1, var2 & var3) Exit For End if End If Next
MsgBox sResult
Set oFso = Nothing Set oShell = Nothing
'----------------------------------------- Function BrowseForFile(strPath, strFilter) Dim oDialog, intResult Set oDialog = CreateObject("UserAccounts.CommonDialog") oDialog.Filter = strFilter oDialog.InitialDir = strPath oDialog.Flags = &H80000 + &H4 + &H8 'position de la fenêtre intResult = oDialog.ShowOpen BrowseForFile = oDialog.FileName 'récupération du nom du fichier sélectionné End Function"if response=6 then" peut être remplacé par "if response=vbYes then" jean-marc
|
|
|
|
mercredi 23 juillet 2008 à 23:10:03 |
Re : [VBS] Ouvrir un lecteur spécifique.

akaii
|
Hello Jean-Marc,
Je n'ai pas envie d'ouvrir une fenetre de dialog pour choisir d'explorer la clef USB, je veux juste que si la réponse est "Non" il ouvre la clef comme si il n'y avait pas d'autorun. J'espère que j'ai bien expliqué ce que je voulais faire.
Merci
|
|
|
|
mercredi 30 juillet 2008 à 10:24:32 |
Re : [VBS] Ouvrir un lecteur spécifique.

neolego
|
bonjour,
utilise un turc dans le genre :
reponse = MsgBox ("ton text",vbYesNo+Vbquestion,"test") select case reponse case VbYes : <ton code> case VbNo: <ton code> end select
normalement se devrait fonctionnné (enfin si j'ai bien compris se que tu voulais faire)
|
|
|
Cette discussion est classé dans : personnel, copyfolder, overwritefiles, objfsp, memorystick
Répondre à ce message
Sujets en rapport avec ce message
MsgBox Personnel... Bloquer la fenetre appelante - comment faire ? [ par Ackman ]
Bonjour,Je souhaiterais créer mes propres Msgbox mais le problème est que je ne peuxpas bloquer la fenêtre qui la créer...On passe de l'une à l'autre
Fiche personnel avec données excel [ par nanou ]
Bonjour à tous les futé(e)s d'excel,Je souhaite crée sous excel une fiche personnel :nom prenomdépartementfonction photoMes données se trouvent sur u
copier un dossier avec copyfolder [ par slayer ]
j'ai essayer dans tous les sens , et pas moyen de copier un dossier avec cette fonction copyforder , c'est qui , qui veut bien m'expliqué comment on f
FileSystemObject [ par PEB ]
Lorsque j'utilise le FSO j'ai un problème avec la méthode CopyFolder qui me renvoie le message d'erreur suivant :Expected: =Mon code est le suivant :
Fso.CopyFolder (Type Incompatible) [ par Hansol ]
Voilà, je veux copier un document complet appeler "UserData" vers un document nouvellement créé appeler "SavesFiles". Et lorsque j'applique la command
CopyFolder avec nom long [ par congru ]
je n'arrive pas à copier des repertoires qui ont des nom long du styleC:\Documents TOTO\2-TITI - Modèles de base\Manuel Charte PowerPointquelqu'un pou
Big Problem [ par Kevb37 ]
hello, qq'un pourait résoudre mon problème svp ?le voici : j'essie depuis quelques jours de copié un dossier entiers avec ses sous dossiers... j'ai es
fso copyfolder et progress bar [ par ohector ]
J'aimerai faire augmenter une progress bar pendant que la fso copyfolder est en cours merci
Petite Question [ par alvirtuel ]
Bonjour,Juste un petite question tout simpleComment ds le script suivant mettre des variables pour que lenom utilisateur ne soit pas fixe (user=profil
OutLook:Mettre les mails(inBox) ds un dossier personnel [ par oliv76n ]
Bonjour,Comment faire pour deplacer un mail dans un dossier personnel?Olivier
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
|