Создайте COM-объект с указанием пути к исполняемому файлу с помощью PowerShell - PullRequest
0 голосов
/ 28 марта 2012

Используя PowerShell, кто-нибудь знает, как создать COM-объект с указанием полного пути к исполняемому файлу, который реализует этот объект?New-Object -ComObject позволяет указывать ProgID.Я хочу сказать что-то вроде New-Object -ComObject path_to_exe.

В нашем приложении есть COM API, который я хочу использовать через PowerShell.Я хочу контролировать, какая сборка (отладка или выпуск и т. Д.) Нашего приложения вызывается.Один из обходных путей, о котором я могу подумать, - это зарегистрировать версию приложения, которой я хочу управлять, непосредственно перед вызовом New-Object, но я надеюсь, что есть лучший способ.

1 Ответ

0 голосов
/ 28 марта 2012

COM-объекты создаются SCM (диспетчером управления службами), который называется активацией IIRC. В любом случае, процесс активации принимает либо CLSID, либо ProgID. Он не принимает пути, то есть это вне контроля PowerShell. Есть одна возможность, связанная с .local файлами , но я думаю, это означает, что вам понадобится файл PowerShell.exe.local, что также означает, что COM-сервер должен находиться в каталоге PowerShell - вероятно, не отличная идея. Даже тогда вам все равно придется использовать ProgID. Вам просто не нужно перерегистрировать сервер.

Я бы сказал, просто зарегистрируйте тот, который вы хотите протестировать, прежде чем создавать его с его ProgID.

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