get report of all open explorer windows get report of all open explorer windows powershell powershell

get report of all open explorer windows


Sounds to me like you're looking for something like this:

$app = New-Object -COM 'Shell.Application'$app.Windows() | Select-Object LocationURL

AFAICS the window objects don't have a title property, but you can get that information from Get-Process via the window handle ID:

function Get-WindowTitle($handle) {  Get-Process |    Where-Object { $_.MainWindowHandle -eq $handle } |    Select-Object -Expand MainWindowTitle}$app = New-Object -COM 'Shell.Application'$app.Windows() |  Select-Object LocationURL, @{n='Title';e={Get-WindowTitle $_.HWND}}


Ansgar Wiechers' answer is helpful, but the title of File Explorer windows doesn't necessarily contain the full path of the location (folder) being displayed.

Somewhat obscurely, it is the .Document.Folder.Self.Path property of the window objects returned by the .Windows() method of the Shell.Application COM object that contains the full, local or UNC path.

Therefore, the following lists the full paths of all open Explorer windows:

(New-Object -ComObject 'Shell.Application').Windows() | ForEach-Object {   $_.Document.Folder.Self.Path }

Note: Special locations such as File Explorer's "Quick access" are represented by ::-prefixed GUIDs; e.g., ::{679F85CB-0220-4080-B29B-5540CC05AAB6}