Импорт COM PIA при размещении PowerShell - PullRequest
1 голос
/ 10 февраля 2011

У меня есть компонент COM и его PIA, установленный в GAC.В PowerShell я могу выполнить

$a = New-Object -com MySvr.ProgId
$x = $a.Method([MySvrLib.MyEnum]::enumValue)

, и он понимает тип перечисления COM.

Но когда я размещаю PowerShell в своем приложении с помощью RunSpace, предоставьте свой экземпляр компонента через RunSpace.SessionStateProxy.SetVariable иВызвать этот код:

$x = $a.Method([MySvrLib.MyEnum]::enumValue)

Я получаю сообщение «Невозможно найти тип [MySvrLib.MyEnum]: убедитесь, что загружена сборка, содержащая этот тип».

Есть ли способ загрузитьопределения типа моего компонента в размещенном экземпляре PowerShell?

1 Ответ

1 голос
/ 10 февраля 2011

В вашем RunspaceConfiguration (опция для настройки нового пространства выполнения) есть свойство Assemblies, в которое можно добавить объект AssemblyConfigurationEntry, который указывает на вашу PIA. Примечание: конструктор для AssemblyConfigurationEntry ожидает полное имя сборки, например Microsoft.Office.Interop.Excel, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...