2009-01-29 6 views
1

Microsoft semble déplacer beaucoup de fonctionnalités de configuration et de requête vers PowerShell (accessible depuis C# ou C++ géré), tout en supprimant et en supprimant même les anciennes API (accessibles pour C ou C++ non géré). Ceux d'entre nous qui ont de vastes programmes C++ non gérés qui ne peuvent pas passer en C++ managé peuvent avoir besoin d'appeler des applets de commande PowerShell (au moins, j'en ai une maintenant) - comment pouvons-nous le faire?Appel de scripts PowerShell à partir de C++

Il existe des suggestions qu'un reverse-PInvoke (thunking géré/non géré) pourrait être en mesure de faire quelque chose, mais j'espère un meilleur moyen que thunking ou l'analyse de la sortie de texte d'un script PowerShell.

[Note: Ceci est un retravaillé et généralisé query I made yesterday qui peuvent avoir été trop spécialisés.]

Répondre

2

La suggestion MS serait probablement de compiler des classes spécifiques/modules dans votre application généralement non géré C++ comme code managé (compilation individuelle fichiers avec/clr), et en laissant le code de transition IJW gérer les appels de/vers lui (et en appelant les API PowerShell à partir des bits gérés). On m'a dit (à partir de personnes MS VC++) que c'est la méthodologie prévue pour ajouter des bits d'appels gérés à de grandes applications non gérées.

espoir qui aide.

+0

Merci. Cette suggestion m'a donné des choses intéressantes à interroger, et nous avons une mise en œuvre planifiée basée sur ce que nous avons trouvé. –

Questions connexes