Надеюсь, вы в полной безопасности в эти трудные времена.
Мне нужна помощь, чтобы получить Windows .Count для объекта OneNote.Application в PowerShell. Он должен вернуть количество открытых OneNote windows.
Я использую этот код:
$OneNote = New-Object -ComObject OneNote.Application # create new ComObject
Write-Host ($OneNote.Windows.Count)
Это дает пустой вывод.
Мой вопрос, как можно Я получаю это, чтобы напечатать номер моего открытого счета OneNote windows, например, 5, если у меня есть пять windows открытых.
Вещи, которые я пытался отладить и выяснить проблему: (но я еще не достиг хорошего понимания)
Один: Когда я попробовал эту команду:
Write-Host ($OneNote.Windows.Count)
Она дает:
System.__ComObject # however I have 5 OneNote windows open
Когда я попробовал эту команду:
$OneNote.Windows
Это дает:
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
System.__ComObject
Два: Я могу перечислить всех членов OneNote.Application объект успешно с помощью этого кода:
$OneNote | Get-Member # Lists the members of $OneNote object, it successfully lists all members including "Windows"
Это дает
…
UpdateHierarchy Method void UpdateHierarchy(string bstrChangesXmlIn,
Microsoft.Office.Interop.OneNote.XMLSchema xsSchema), void UpdateHierarchy(string bstrChan...
UpdatePageContent Method void UpdatePageContent(string bstrPageChangesXmlIn, datetime dateExpectedLastModified, Microsoft.Office.Interop.OneNote.XMLSchema xsSche...
COMAddIns Property System.Object COMAddIns {get;}
Dummy1 Property bool Dummy1 {get;}
LanguageSettings Property System.Object LanguageSettings {get;}
Windows Property Microsoft.Office.Interop.OneNote.Windows Windows {get;}