Probleme Chemin UNC dans CMD

Skalouche11 Messages postés 16 Date d'inscription lundi 29 septembre 2014 Statut Membre Dernière intervention 1 octobre 2014 - 30 sept. 2014 à 15:39
Skalouche11 Messages postés 16 Date d'inscription lundi 29 septembre 2014 Statut Membre Dernière intervention 1 octobre 2014 - 1 oct. 2014 à 13:44
Bonjour, voici mon problème.
J'ai un VBS qui demande un nom de DB ainsi qu'un nom de fichier, puis il lance un CMD en tant qu'administrateur, en lui transmettant ces 2 variables.

Sauf que le CMD devrait pointer vers "\\SERVER\C$\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn", mais il me retourne le message suivant :
"cmd ne prend pas les chemins unc comme répertoires en cours".


Voici mes scripts :

VBS:


Option Explicit
Dim DBName
Dim FileName
Dim oShell

DBName= InputBox("Quel est le nom de la societe?","Sauvegarde")
FileName= InputBox("Nom du fichier de sauvegarde:","Sauvegarde")

Set oShell = CreateObject("WScript.Shell")
oShell.Run "runas /user:administrateur@domaine.fr ""\\server\f$\sage\sav\Paye_sauve_1soc.cmd " & DBName & " " & FileName
WScript.Sleep 1000
oShell.SendKeys "*******~"
Wscript.Quit


CMD:


c:

cd "\\SERVER\C$\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn"
sqlcmd.exe -E -SSERVER\SAGE100 -Q"BACKUP DATABASE [P_%1] TO DISK = N'F:\SAGE\SAV\%2.BAK' WITH FORMAT, NAME = N'%1-Complète', SKIP, NOREWIND, NOUNLOAD, STATS = 10"

pause


En gros je doit réadapter mon fichier VBS pour qu'il exécute non plus un CMD mais un PS1 (powershell, qui lui accepte les chemins unc), ainsi que mon fichier CMD a transformer en PS1.

Quelles sont les commandes à modifier SVP ?

2 réponses

jordane45 Messages postés 38134 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 11 avril 2024 344
30 sept. 2014 à 16:00
Pour ce qui est du VBS.. à mon avis tu n'as rien de pariculier à changer .. hormis le nom du script à appeller (qui sera ton PS1 au lieu de ton BAT).
objShell.run("powershell -noexit -file tonScript.ps1")

Par contre.. il faut que POWERSHELL soit installé sur le PC qui lance le script non ?
Et ce n'est pas parce que le script PS1 se trouve sur le PC distant.. qu'il va s'exécuter dessus... il va s'exécuter depuis le PC qui lance ton script... (comme si le script se trouvait directement sur le PC...)



0
Skalouche11 Messages postés 16 Date d'inscription lundi 29 septembre 2014 Statut Membre Dernière intervention 1 octobre 2014
30 sept. 2014 à 16:16
J'ai bien modifier ma commande comme ceci :


Set oShell = CreateObject("WScript.Shell")
oShell.Run "powershell -noexit -file \\SERVER\f$\sage\sav\Paye_sauve_1soc_bis.ps1" & DBName & " " & FileName
WScript.Sleep 1000
oShell.SendKeys "Password~"
Wscript.Quit

Mais une fois les 2 InputBox passée, la fenêtre dos appara^^it et disparait aussitôt, et quand j'ouvre le vbs pour le modifier je me retrouve avec cette comande modifiée :


oShell.Run "powershell -noexit -file \\SERVER\f$\sage\sav\Paye_sauve_1soc_bis.ps1Password~" & DBName & " " & FileName

wtf? o_O
0
jordane45 Messages postés 38134 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 11 avril 2024 344
30 sept. 2014 à 16:20
Déjà.. il te manque un espace entre le nom de ton script et tes variables....

oShell.Run "powershell -noexit -file \\SERVER\f$\sage\sav\Paye_sauve_1soc_bis.ps1 " & DBName & " " & FileName


0
jordane45 Messages postés 38134 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 11 avril 2024 344
30 sept. 2014 à 16:24
Et bien sûr... PowerShell est présent sur le PC qui lance le script ??
0
Skalouche11 Messages postés 16 Date d'inscription lundi 29 septembre 2014 Statut Membre Dernière intervention 1 octobre 2014
30 sept. 2014 à 16:34
Oui il est bien présent. Et lui ne nécessite pas d'être lancé en tant qu' Admin normalement.

Même avec l'espace, même problème.
0
jordane45 Messages postés 38134 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 11 avril 2024 344
30 sept. 2014 à 16:37
Tu as essayé en mettant le chemin complet vers le PowerShell.EXE ?
Par exemple:
C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe
0
Skalouche11 Messages postés 16 Date d'inscription lundi 29 septembre 2014 Statut Membre Dernière intervention 1 octobre 2014
30 sept. 2014 à 16:50
Oui, idem.
0
Rejoignez-nous