Как скопировать файлы в папку «Program files (x86)» без запуска сценария Powershell в режиме администратора - PullRequest
0 голосов
/ 20 ноября 2018

Я могу запустить свой скрипт Powershell в режиме администратора и скопировать файлы в папку «Program files (x86)», но не могу сделать то же самое без режима администратора. Я понимаю, что доступ к указанной системной папке ограничен, я пытался обработать эту часть, но все еще получаю сообщение об ошибке «UnauthorizedAccessException». Мой фрагмент кода, как показано ниже. Пожалуйста, предложите.

Set-ExecutionPolicy Unrestricted -Scope Process -Force    

$source = $PSCommandPath | Split-Path -Parent    
$path = "C:\Program Files (x86)\OrganizationName\ProductName\bin"

try
{
    If(Test-Path $path)
    {
        icacls.exe $path--% /grant "Everyone:(OI)(CI)(F)"

        Get-ChildItem $source -Exclude @('*.ps1') | Copy-Item -Destination "$path" -Force -Recurse
        Write-Host "Files successfully copied..."
    }
    else
    {
        Write-Host "Path doesn't exist..."
    }
}
catch
{
    Write-Host $_.Exception.Message -Foreground Red
}
finally
{
    Write-Host "Press any key to continue..."
    $Host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")
}
...