Le format du chemin d'accès n'est pas pris en charge
Salut à tous,
J'ai fais un petit script pour permettre de mettre à jour le mot de passe d'ultravnc sans avoir à bouger nos petites fesses.
Le script marchait très bien au début, et maintenant j'ai une erreur qui ne me parle pas du tout. Voici le script et l'erreur.
Code:
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 51 52 53 54 55
| $path=Test-Path "C:\Program Files (x86)\UltraVNC\"
if ($path -eq "True")
{
$path="C:\Program Files (x86)\UltraVNC\"
Write-output "UltraVNC est installé dans Program Files X86"
}
else
{
$path="C:\Programmes\UltraVNC\"
Write-output "UltraVNC est installé dans Programmes"
}
#On verifie si UltraVNC est déjà installé en se rendant dans la base de registre
$HKML_IPall = "HKLM:\SOFTWARE\Classes\Installer\Products\297619E5F46CBD113841800002C0A966\"
$test_existe = Test-Path $HKML_IPall
## la première condition est bonne, la seconde change de $null à ""
if ($test_existe -eq "True")
{
Write-Output "UltraVNC est présent, la mise à jour va se poursuivre"
# Génération du MD5 du fichier UltraVNC.ini présent sur le poste utilisateur
$file="C:\$path\UltraVNC\UltraVNC.ini"
$algo = [System.Security.Cryptography.HashAlgorithm]::Create("MD5")
$stream = New-Object System.IO.FileStream($file, [System.IO.FileMode]::Open)
$md5StringBuilder = New-Object System.Text.StringBuilder
$algo.ComputeHash($stream) | % { [void] $md5StringBuilder.Append($_.ToString("x2")) }
$md5_poste = $md5StringBuilder.ToString()
$stream.Dispose()
Write-Output $md5_poste
# Génération du MD5 du fichier UltraVNC.ini présent sur le serveur
$file2='\\group.tok\net_install\vnc\UltraVNC.ini'
$algo2 = [System.Security.Cryptography.HashAlgorithm]::Create("MD5")
$stream2 = New-Object System.IO.FileStream($file2, [System.IO.FileMode]::Open)
$md5StringBuilder2 = New-Object System.Text.StringBuilder
$algo2.ComputeHash($stream2) | % { [void] $md5StringBuilder2.Append($_.ToString("x2")) }
$md5_serveur = $md5StringBuilder2.ToString()
$stream2.Dispose()
Write-Output $md5_serveur
if ($md5_poste -eq $md5_serveur)
{
Write-Output "*** Les paramètres sont déjà à jour, aucun fichier n'a été modifié ! ***"
}
else
{
Copy-Item -Path "\\group.tok\net_install\vnc\UltraVNC.ini" -destination "C:\$path\UltraVNC\UltraVNC.ini" -force
Write-Output "*** Les paramètres ont été mis à jour avec succès ! ***"
}
}
else
{
Write-Output "UltraVNC n'est pas installé"
} |
http://data.imagup.com/12/1156155664.png
Il me semble que je n'ai rien modifié après que le script marchait, et j'ai testé sur plusieurs postes, et il y a bien l'erreur, j'ai donc du faire une bêtise entre temps.
Pouvez-vous m'aider s'il vous plaît.
Merci !!