PSフォームをボタンで実行しています。ボタンを押すといくつかのものが実行され、モジュールが呼び出されます。モジュールを使用して、D:\ FolderName01 \ MyFolderNameからD:\ FolderName02にフォルダを移動する必要があります。Powershellの移動項目アクセスが拒否されました
私は管理者としてログインしています。サーバー2012-R2
コードはNOTボタンを押して起動すると自動スクリプトが実行されます。
DOES私はコードを編集しているときに問題なく実行し、強調表示して "Run Selection"を使用します。
これは文字通りモジュール全体です。他に何もされていません。
コード:
function MoveTheFolder($VariableName){
if (-not (Test-Path "D:\FolderName02")) {
md "D:\FolderName02"}
cd -Path d:\
Move-Item -Path "D:\FolderName01\$VariableName" -Destination "D:\FolderName02" -Force
}
FolderName02は問題なく作成されます。 $ VariableNameはモジュールに渡され、ブレークポイント分析と実際のエラーメッセージに基づいて正しいです。元のパスはDVDドライブです(F:.isoファイル)。与えられた
エラーは、私は、Windowsエクスプローラを使用して手動でフォルダを移動することができますので、彼らが開いているアプリケーションと提携することは表示されません
move-item: Access to the path '[D:\FolderName01\$VariableName]' is denied.
です。
は、UACが有効な場合、スクリプトは「管理者として実行」されていますか?コンソールまたはメッセージボックスに変数を指定してパスを書き込んで、そのパスが正しく処理されるようにすることはできますか? – ssaviers
好奇心をそそらずに、 'move-item'の代わりに' COPY'を使うと、ディレクトリはコピー先にコピーされますか? – Nate
@TessellatingHeckler彼はDVDから移動していません。 DVDはF:\ではなくD:\です。 – Nate