Project

General

Profile

Limites et composants supportés

Composants supportés

Composants ne fonctionnant pas nativement sous PowerShell V1.0 :
-System.Windows.Forms.WebBrowser : Limite de PowerShell v1.0
-Le composant BackGroundWorker même raison que pour le WebBrowser. Bien que sa conversion/création ne pose pas de pb.
Il ne dispose pas de RunSpace pour exécuter des commandes PS.
En v1 utilisez à la place un 'job'.
voir Background Jobs and PowerShell

Lors de la conversion vous pouvez utiliser le switch -STA, ce qui forcera le traitment à passer outre ce comportement. En revanche vous devez utiliser le cmdlet Invoke-Apartment pour exécuter le code généré.

Composants en erreur

-TableLayoutPanel la création imbriquée de composants n'est pas encore supportée
-La reconnaissance de certaines combinaisons de caractères n'est pas prise en compte.

Limitations

-L'accessibilité n'est pas supportée (testé)
-Le databinding n'est pas supporté (non-testé)
-La gestion de références d'assemblies autres que Winform, Drawing,Resources n'est pas supporté (testé).
voir dans un fichier projet C# Visual Studio, le noeud (fichier XML) :

  <ItemGroup>
     <Reference Include="CrystalDecisions.CrystalReports.Engine, Version= ...

Informations

L'opérateur d'expression régulière  -Match n'est pas sensible à la casse lors de la recherche.
Pensez à nommer chaque composants Winform d'après le nom de votre projet.
Ex: FrmMainProjet1,FrmSecondaireProjet1

Sous Powershell la déclaration simultanée des événements Activated et DeActivated, réalisée pour VisualStudio, peut amener le formulaire "à boucler". Idem pour la déclaration de l'événement Paint, de la déclaration des événements de la souris, etc.
Une gestion correcte du code de ces gestionnaires, en lieu et place d'un appel à MessageBox, réglera le problème.

Toutes les fonctions (packages) complémentaires sont chargées en dot source, c'est à dire dans la portée du script. En fin d'exécution elles sont donc automatiquement libérées du provider de variables.