Architecture du snapin et des objets
Poshboard est fournit avec un Snapin PowerShell contenant différents cmdlets. Ces cmdlets permettent de créer des objets compatibles avec le rendu de contrôles Silverlight dans PoshBoard. Les propriétés/méthodes utilisées pour ces cmdlets sont équivalentes aux propriétés que l’on peut trouver dans les contrôles Silverlight.
La logique des objets Silverlight est respecté le plus possible (ou simplifier pour les besoins de PoshBoard): vous trouverez dans les objets Silverlight (dans un projet dans votre Visual Studio par exemple) des propriétés portant le même nom que les propriétés des cmdlets.
Ceci permet de faciliter l’adaptation à l’outil pour un codeur PowerShell, tout en gardant une cohérence avec le modèle cible : vous pouvez vous aider d’exemples de code Silverlight pour créer vos contrôles.
Note: Toute les propriétés des contrôles Silverlight ne sont pas reproduites, ceci pour plusieurs raisons :
- Certaines propriétés ne sont pas utiles dans le contexte de PoshBoard et complexifieraient le modèle et l’adaptation.
- La volonté d’éviter des processus de reflection sur les objets Silverlight dans un premier temps, pour garder de bonnes performances.
- Ou parfois simplement par manque de temps ;-)
L’idée maitresse est de conserver un modèle simple, facile à comprendre. Dans le futur, si de nouvelles propriétés apparaissent comme utile, elles seront ajouter à la solution dans de futures mise-à-jour.
Les développeurs .NET ayant déjà une petite expérience avec le développement Silverlight pourront facilement créer les correspondances en PowerShell.
Relation entre le Snapin, PoshBoard et Silverlight
Poshboard utilise WCF (httpPollingDuplex et BasicHttpBinding) pour établir la communication entre le client Silverlight et le serveur. Les objets PowerShell sont créés par les scripts initié par l’administrateur, et ces objets sont ensuite convertis en contrôles Silverlight dynamiquement dans l’interface.
Vous pouvez par ailleurs utiliser tout type de code PowerShell lors de la création de vos interfaces : ceci permet de profiter du dynamisme de PowerShell pour définir les paramètres des contrôles Silverlight et du contenu.
Relation entre WCF, PowerShell et PoshBoard
Installation du snapin
L’installation est simple. Vous n’avez pas besoin d’installer PoshBoard pour utiliser les cmdlets : vous pouvez utiliser la console pour créer vos interfaces sous forme d’objets PowerShell.
Voici comment l’installer :
Copier les 2 dll’s du fichier zip dans un repertoire de votre serveur ou station de travail (exemple : c:\ressources)
Lancer la ligne de commande suivante (avec les droits admins pour Vista / 2K8 / Seven) :
x86 :
c:\Windows\Microsoft.NET\Framework\v2.0.50727\installutil.exe c:\ressources\poshboard.dll
x64:
c:\Windows\Microsoft.NET\Framework64\v2.0.50727\installutil.exe c:\ressources\poshboard.dll
(x64 : lancer aussi la première ligne pour rendre le snapin disponible côté PoshBoard)
Ouvrez maintenant une console PowerShell et tapez :
Add-PSSnapin poshboard
List all cmdlets
get-command *PB*
Les cmdlets
Voici la liste des cmdlets :
Nous verrons dans le prochain post ces objets dans le détail, et comment créer vos premiers widgets.
Aucun commentaire:
Enregistrer un commentaire