2016-05-05 5 views
0

Я хочу просмотреть свой медиа-сервер (MiniDLNA 1.1.5 на Rasperry Pi). Вот код, который я до сих пор:Powershell: UPnP ContentDirectory Браузер не возвращает никаких результатов

$DeviceFinder = New-Object -COM "UPnP.UPnPDeviceFinder" 
$DeviceType = "urn:schemas-upnp-org:service:ContentDirectory:1" 

Write-Host "Finding MediaServer devices..." 
$Devices = $DeviceFinder.FindByType($DeviceType,0) 
$MediaServer = $Devices | Where-Object { $_.FriendlyName -like "*LittlePi*" } 

$MediaServerDirectory = $MediaServer.Services | Where-Object { $_.Id -eq "urn:upnp-org:serviceId:ContentDirectory" } 

Write-Host "MediaServer Description:" $MediaServer.Description 
Write-Host "Browsing MediaServer..." 

$ContainerID = 0 
$BrowseFlag = "BrowseDirectChildren" 
$Filter = "" 
$StartIndex = 0 
$RequestedCount = 1000 
$SortCriteria = "" 
$myInObject = @($ContainerID, $BrowseFlag, $Filter, $StartIndex, $RequestedCount, $SortCriteria) 
$outArgs = @() 

$returnValue = $MediaServerDirectory.InvokeAction("Browse", $myInObject, [ref]$outArgs) 

Моя проблема заключается в том, что $returnValue и $outArgs являются $null.

ответ

0

Вы пытались установить $ outArgs = $ null перед вызовом InvokeAction?

У меня возникла проблема с попыткой получить внешний IP-адрес с моего маршрутизатора, и трюк с заданием $ null.

(поиск для 3 ключевых слов: PowerShell ком UPnP, чтобы увидеть мой пример)

Не уверен, если это будет иметь никакого влияния на $ ReturnValue.