Hiker38
Messages postés2Date d'inscriptionjeudi 9 novembre 2006StatutMembreDernière intervention23 novembre 2006
-
21 nov. 2006 à 18:41
cs_JMO
Messages postés1854Date d'inscriptionjeudi 23 mai 2002StatutMembreDernière intervention24 juin 2018
-
23 nov. 2006 à 15:55
Bonjour,
En tant que débutant en vbscript, je dois modifier un fichier vbscript.
Je voudrais avoir un 'path' comme constante et l'utiliser pour manipuler des fichiers (file_in, file_out), de façon à ce que la valeur du 'path' soit une seul fois dans le fichier source, pour pouvoir le mettre à jour facilement.
ex:
Const path="C:\omniback-test"
.
.
file_in= path + "\installation\ipconfig_all.txt"
est-ce que la syntaxe est correcte, sinon quelle est la bonne ?
Y-a-t-il une autre solution pour éviter que cette chaine de caractère soit "en dur" dans le fichier source de vbscript ?
Ce fichier est appelé dans un fichier de commande DOS.
Hiker38
Messages postés2Date d'inscriptionjeudi 9 novembre 2006StatutMembreDernière intervention23 novembre 2006 23 nov. 2006 à 10:42
Merci pour les réponses.
Suivant les conseils trouvés dans les réponses, j'ai utilisé la syntaxe suivante :
Set WshShell = WScript.CreateObject("WScript.Shell")
Dim Path_Local : Path_Local = WshShell.ExpandEnvironmentStrings("%APPLICATION_HOME%")
la suite du programme :
' file_in nom du fichier ouvert
file_in= Path_Local & "\installation\ipconfig_all.txt"
Il semble que le fichier ne peut pas être ouvert, pourtant il existe physiquement.
Pour tester son existence, j'ai utilisé la commande suivante, qui ne fonctionne pas :
If Dir(Path_Local & "\installation\ipconfig_all.txt") = vbNullString Then Call MsgBox ("le fichier existe")
cs_JMO
Messages postés1854Date d'inscriptionjeudi 23 mai 2002StatutMembreDernière intervention24 juin 201827 23 nov. 2006 à 12:27
Bonjour à tous
Exemple a adapter pour vb6.
Il faut d'abord vérifier la cohérence de file_in.
J'ai mis ci-dessous un exemple avec fso.
Il y a des commandes vb6 qui permettent la vérif de l'existence d'un file (ou folder),
sans utiliser fso, mais je ne les connais pas.
Lors de la création d'un code, il ne faut pas lésiner sur les msgbox !!!!
Dim fso : Set Fso = CreateObject("Scripting.FileSystemObject")
Dim WshShell : Set WshShell = WScript.CreateObject("WScript.Shell")
Dim Path_Local : Path_Local = WshShell.ExpandEnvironmentStrings("%APPLICATION_HOME%")
Dim file_in : file_in = Path_Local & "\installation\ipconfig_all.txt"
MsgBox file_in,,"Vérification path complet"
If Fso.FileExists(file_in) Then
MsgBox file_in & " existe",,"Vérif de la présence du fichier"
Else
Msgbox file_in,,"problème de synthaxe surement car path-fichier inconnu"
End If
'Il semble que le fichier ne peut pas être ouvert, pourtant il existe physiquement.
'Pour tester son existence, j'ai utilisé la commande suivante, qui ne fonctionne pas :
'If Dir(Path_Local & "\installation\ipconfig_all.txt") = vbNullString Then Call MsgBox ("le fichier existe")
cs_JMO
Messages postés1854Date d'inscriptionjeudi 23 mai 2002StatutMembreDernière intervention24 juin 201827 23 nov. 2006 à 15:55
Re,
exemple:
Dim wSrce : wSrce = "D:\LOG"
Dim wDest : wDest = "O:\Affaires\K4FCRZ\4.5 Dossiers TMA\Sauv_JMO"
Dim fso : Set fso = CreateObject("Scripting.FileSystemObject")
If fso.FolderExists(wDest) Then
fso.DeleteFolder(wDest & "\*"), True
Else
fso.CreateFolder(wDest)
End if
fso.copyFolder wSrce, wDest, True
Set fso = Nothing
MsgBox "Sauvegarde sur server terminée"