Question
[System.Io.File] ???
- darphboubou
- Auteur du sujet
- Hors Ligne
- Membre premium
Réduire
Plus d'informations
- Messages : 135
- Remerciements reçus 0
il y a 9 ans 1 semaine #19492
par darphboubou
[System.Io.File] ??? a été créé par darphboubou
Bonjour,
J'ai trouvé ce scripte qui permet d'exporter les photo depuis l'AD.
[code:1]
$User=GET-ADUser TOTO –properties thumbnailphoto
$Filename='C:\Photos\Export.jpg'
[System.Io.File]::WriteAllBytes($Filename, $User.Thumbnailphoto)
[/code:1]
Ma question est la suivante, comment le scripteur a su qu'il avait besoin de [System.Io.File]::WriteAllBytes pour importer la photo. ou a t-il pu trouver cette information?
pourquoi system.io.file et pas autre chose?
Merci d'avance pour vos retour.
Cordialement
J'ai trouvé ce scripte qui permet d'exporter les photo depuis l'AD.
[code:1]
$User=GET-ADUser TOTO –properties thumbnailphoto
$Filename='C:\Photos\Export.jpg'
[System.Io.File]::WriteAllBytes($Filename, $User.Thumbnailphoto)
[/code:1]
Ma question est la suivante, comment le scripteur a su qu'il avait besoin de [System.Io.File]::WriteAllBytes pour importer la photo. ou a t-il pu trouver cette information?
pourquoi system.io.file et pas autre chose?
Merci d'avance pour vos retour.
Cordialement
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
- Hors Ligne
- Modérateur
il y a 9 ans 6 jours #19498
par Arnaud Petitjean
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Réponse de Arnaud Petitjean sur le sujet Re:[System.Io.File] ???
Bonjour Darphboubou,
En fait lorsque tu ne sais pas quelque chose, il est bon d'aller chercher les informations dans la base Microsoft MSDN et/ou Technet.
Une recherche sur les mots clés \"thumbnailphoto AD attribute MSDN\" dans Bing ou Google m'a permis de tomber sur la fiche support.microsoft.com/en-us/kb/292029/en-us qui explique :
C'est à dire que l'attribut contient un dump d'un fichier image, autrement le contenu exact d'un fichier.
La méthode WriteAllBytes du Framework .NET permet d'écrire un flux d'octets sur disque. Je pense (à tester) qu'en PowerShell on aurait pu écrire un truc du genre :
[code:1]
$User=GET-ADUser TOTO –properties thumbnailphoto
$Filename='C:\Photos\Export.jpg'
$User.thumbnailphoto | Set-Content -file $Filename -encoding Byte
[/code:1]
Voire :
[code:1]
Set-Content -inputobject $User.thumbnailphoto -file $Filename -encoding Byte
[/code:1]
La seconde forme (si elle marche) serait plus performante que la première car on évite le pipeline qui lui a tendance à ralentir l'exécution.
Arnaud<br><br>Message édité par: Arnaud, à: 13/04/15 17:06
En fait lorsque tu ne sais pas quelque chose, il est bon d'aller chercher les informations dans la base Microsoft MSDN et/ou Technet.
Une recherche sur les mots clés \"thumbnailphoto AD attribute MSDN\" dans Bing ou Google m'a permis de tomber sur la fiche support.microsoft.com/en-us/kb/292029/en-us qui explique :
...The thumbNailPhoto attribute contains octet string type data. The AD interprets octet string data as an array of bytes. ...
C'est à dire que l'attribut contient un dump d'un fichier image, autrement le contenu exact d'un fichier.
La méthode WriteAllBytes du Framework .NET permet d'écrire un flux d'octets sur disque. Je pense (à tester) qu'en PowerShell on aurait pu écrire un truc du genre :
[code:1]
$User=GET-ADUser TOTO –properties thumbnailphoto
$Filename='C:\Photos\Export.jpg'
$User.thumbnailphoto | Set-Content -file $Filename -encoding Byte
[/code:1]
Voire :
[code:1]
Set-Content -inputobject $User.thumbnailphoto -file $Filename -encoding Byte
[/code:1]
La seconde forme (si elle marche) serait plus performante que la première car on évite le pipeline qui lui a tendance à ralentir l'exécution.
Arnaud<br><br>Message édité par: Arnaud, à: 13/04/15 17:06
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
Réduire
Plus d'informations
- Messages : 6302
- Remerciements reçus 68
il y a 9 ans 6 jours #19499
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:[System.Io.File] ???
Salut,
Je suppose que la lecture de MSDN permet de savoir que cette propriété/attribut est un tableau d'octets (cf. Object(Replica-Link )).
Ensuite, les classes d'entrées sorties sont regroupées l'espace de nom Sytem.IO .
Pour un fichier c'est forcément la classe File.
Enfin la méthode WriteAllBytes est la seule à écrire un fichier à partir d'un tableau d'octets.
[edit]
Devancé par Arnaud<br><br>Message édité par: Laurent Dardenne, à: 13/04/15 17:08
Je suppose que la lecture de MSDN permet de savoir que cette propriété/attribut est un tableau d'octets (cf. Object(Replica-Link )).
Ensuite, les classes d'entrées sorties sont regroupées l'espace de nom Sytem.IO .
Pour un fichier c'est forcément la classe File.
Enfin la méthode WriteAllBytes est la seule à écrire un fichier à partir d'un tableau d'octets.
[edit]
Devancé par Arnaud<br><br>Message édité par: Laurent Dardenne, à: 13/04/15 17:08
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.073 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- [System.Io.File] ???