# Powershell: How can I get the UNC path from an OpenFileDialog without the leaf?

I’m still a beginner in Powershell…
I’m using the OpenFileDialog to give the user the possibility to choose a file on the network.

Add some .net Assembly for OpenFileDialog and MessageBox

Add-Type -AssemblyName System.Windows.Forms

$FileBrowser = New-Object System.Windows.Forms.OpenFileDialog  With this the OpenFileDialog will be opened and shown to the user for choosing a file $null = $FileBrowser.ShowDialog()  This is the UNC-filename with extension included that the user has chosen in OpenFileDialog $full_filename = $FileBrowser.FileName  This is only the filename with extension (leaf) that the user has chosen in OpenFileDialog $filename = $FileBrowser.SafeFileName  This converts the array-elements into strings $full_filename_string = [string]$full_filename$filename_string = [string]$filename  So far, so good. What I would need additionally is the UNC-path ONLY from the subdirectory, in which the user has chosen a file (UNC-path without the leaf). How could this be accomplished? ### >Solution : Use the Split-Path cmdlet: PS ~> '\\hostname\share\path\to\directory\with_file.exe' |Split-Path -Parent \\host\share\path\to\directory  Beware that the Split-Path will convert \ to / on linux file systems, to avoid that you’d have to manually split the string on the last occurrence of \: PS ~>$path,$name = '\\hostname\share\path\to\directory\with_file.exe' -split '\\(?=[^\\]*$)'
PS ~> $path \\hostname\share\path\to\directory PS ~>$name