Где я могу найти все COM-объекты, которые могут быть созданы в Powershell?
В Powershell я могу создавать COM-объекты, которые могут использоваться, например, для управления приложениями Microsoft Office:
$excel = New-Object -com "Excel.Application"
$excel.visible = $true
Как я могу перечислить все доступные COM-объекты, которые могут быть созданы в Powershell?
Ответы
Ответ 1
Я нашел этот однострочный файл powershell script, который предположительно перечисляет все COM-объекты.
gci HKLM:\Software\Classes -ea 0| ? {$_.PSChildName -match '^\w+\.\w+$' -and
(gp "$($_.PSPath)\CLSID" -ea 0)} | ft PSChildName
сообщите нам, если это сработает!
Ответ 2
Используйте OleView.exe от Microsoft. Я думаю, что это может быть связано с Visual Studio. Если нет, вы можете найти его в Windows SDK. Это большая загрузка; вы можете либо загрузить все это, либо поэкспериментировать с загрузкой по частям с помощью установщика setup.exe.
Раз в OleView найдите "библиотеки типов". Например, Excel появляется в разделе "Microsoft Exel".
Ответ 3
Другой вариант, который следует отметить, - через WMI:
Get-WMIObject Win32_ClassicCOMClassSetting