所以我试图获取所有本地安装的应用程序并将它们放入列表框中。但是,我遇到了一些问题。每当我使用以下代码时:
$prog = (get-wmiobject win32_product -computer $current_hostname.text -property Name).Name
foreach($program in $prog)
{
$program_list_current.items.add($program)
}
列表框中返回的是应用程序以及每个应用程序开头的一些其他文本/字符串。在某些情况下,将 '-property Name' 替换为 ' | 选择名称',什么都没有返回。
我使用上述语法是因为下面的代码有效(它获取机器的 AD 组并将每个组放入列表框中):
$processnames_t = (Get-ADComputer -Identity $current_hostname.text -Property MemberOf).MemberOf
foreach ($processname in $processnames_t)
{
[void]$AD_list_current.Items.Add($processname)
}
关于为什么它适用于 AD 组但不适用于已安装的应用程序的任何想法?也许与 get-wmiobject 的性质有关?
谢谢