Thursday, 11 August 2011

Copy file with FileDialog

You can integrate this with some application. Easy way to allow users to copy files.

[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") | Out-Null
function Select-FileDialog()
{

 $objForm = New-Object System.Windows.Forms.OpenFileDialog
 $objForm.InitialDirectory = "C:\"
 $objForm.Filter = "All Files (*.*)|*.*"
 $objForm.Title = "Source"
 $show = $objForm.ShowDialog()
 if($show.value__ -eq 1){

 $result = $objForm.FileName
 return $result
 }
 Else
 {
  Write-Error "Operation cancelled by user."
 }
}
function Select-FolderDialog()
{
 $objForm = New-Object System.Windows.Forms.FolderBrowserDialog
 $objForm.Description = "Destination"
 $objForm.RootFolder = "MyComputer"
 $show = $objForm.ShowDialog()
 if($show.value__ -eq 1){

 $result = $objForm.SelectedPath
 return $result
 }
 Else
 {
  Write-Error "Operation cancelled by user."
 }
}
$Location = Select-FileDialog
$Destination = Select-FolderDialog
Copy-Item $Location $destination

No comments:

Post a Comment