windows 从资源管理器菜单获取Powershell变量的文件路径

gmxoilav  于 2022-12-05  发布在  Windows
关注(0)|答案(2)|浏览(132)

我需要做一个API调用,其中文件上传操作是必需的,我怎么能提示用户从资源管理器中选择文件,并使用存储在变量后的路径。我发现类似的问题,但它只适用于文件夹。

z0qdvdin

z0qdvdin1#

在Windows上,您可以利用OpenFileDialog Windows Forms component

function Select-File {
  param([string]$Directory = $PWD)

  $dialog = [System.Windows.Forms.OpenFileDialog]::new()

  $dialog.InitialDirectory = (Resolve-Path $Directory).Path
  $dialog.RestoreDirectory = $true

  $result = $dialog.ShowDialog()

  if($result -eq [System.Windows.Forms.DialogResult]::OK){
    return $dialog.FileName
  }
}

然后用这样的话:

$path = Select-File
if(Test-Path $path){
  Upload-File -Path $path
}
v09wglhw

v09wglhw2#

答案很棒,但有一个问题。
首先需要加载System.Windows.Forms程序集,正如this文章所述!

相关问题