Question Répertoire avec un nom aléatoire

Plus d'informations
il y a 11 ans 5 mois #18132 par TROPEE
Bonjour

je voudrais parcourir le dossier de la base de registres s-1-5-21-xxx-xxx dont les X correspondent au SID des différends users.
quel est la syntaxe, variable ou autre pour atteindre le sous-dossier de la base de registres ou je connais le début mais pas la fin?

Voici un bout du code :

$Reg =[Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('users', $Computer)
$RegKey= $Reg.OpenSubKey('get-s-1-5-21-xxx-xxx-xxx-xxx\Software\Microsoft\Windows NT\CurrentVersion\Devices')
$Printers += @($RegKey.GetValueNames())

merci par avance (je suis un Newbie dans le scripting)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 5 mois #18134 par Philippe
bonjour atropee

comme tu a du le voir sur le site msdn , il n'y a pas de fonction recherche dans la base de registre à distance via le WMI.
tu dois faire la recherche toi même (par une boucle par exemple).

si tu dois récupéré toutes les imprimantes installer sur un ordinateur, une autre approche peu peut-être te convenir avec :
[code:1]get-wmiobject -class \"Win32_Printer\" -namespace \"root\CIMV2\" -computername $ComputerName[/code:1]

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 5 mois #18135 par TROPEE
bonjour et merci

le pb c'est qu'il me faut les imprimantes mapper sur les ordinateurs et cela n'est visible que par la session de l'utilisateur.

j'ai un script qui marche très bien sur un ordinateur en local.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 5 mois #18136 par Philippe
bon j'ai un peu travailler sur ton problème,

j'ai changé la fonction d'ouverture distante car la ou je suis on n'autorise pas les connexions à la base de registre à distance. La requête via Get-WmiObject ne demande pas de démarrer le service \"RemoteRegistry\".

Autre point si tu est en domaine comme moi, seul l'utilisateur loguer est visible dans la base de registre.


[code:1]$Computer = 'pc-test'
# connxion au pc via WMI
$Reg = Get-WmiObject -List -Namespace root\default -ComputerName $Computer | Where-Object {$_.Name -eq \"StdRegProv\"}
# liste des utilisateurs s-1-5-21-....
$RegKey = $Reg.EnumKey(2147483651, '').sNames | where {$_ -like \"S-1-5-21*\" -and $_ -notlike \"*_Classes\"}
# liste des imprimantes pour chaque utilisateurs trouver
$RegKey | foreach {
$Printers += $Reg.EnumValues(2147483651, \"$_\Software\Microsoft\Windows NT\CurrentVersion\Devices\"«»).sNames
}

$Printers
# contenue de $Printers
Microsoft XPS Document Writer
PDFCreator
Imprimante PDF Sage
HP Color LaserJet 4700 (192.168.3.152)
Installation / gestion d'imprimantes HP
HP LaserJet P2035
Imprimante PDF Sage v4
[/code:1]

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 5 mois #18143 par TROPEE
Merci c'est nickel.<br><br>Message édité par: atropee, à: 24/09/14 15:01

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.045 secondes
Propulsé par Kunena