batにドロップしたデータを一度別の場所にフォルダを作りコピーして、そのコピーしたデータをprogram fileより下の階層に移動させ、移動が成功したらコピー時に用意したファルダは削除するという処理を行いたいのですが、program file以下へのアクセスが拒否されてしまう為、powershellを使ったのですが、powershellを使ってbatを起動するとコンソールが一瞬表示されるだけで終わってしまったりしています。
batをツールを使用してexe化する方法も試してみましたが、管理者権限の確認画面が出るとドロップされたデータを認識しないようで、exeのプロパティから管理者としてこのプログラムを実行するを選択していても、いざ実行時には管理者権限がない状態で起動されてしまったりなどして上手くいきませんでした。
方法は特に問わないのですが、これを解決する方法はありますでしょうか。
以下にbatの内容を記載しておきます。
@echo off
if exist %1 goto filedrop
echo ファイルをドロップして下さい
pause
goto exit
:FILEDROP
echo ファイル[%*]がドロップされました。
echo:
cd /d %~dp0
set FOLDER=%~dp0
set FOLDER_NAME=一時保管用
set FILE_PASS=C:\Program Files\temp
echo コピー先[%FILE_PASS%]
echo:
echo C:\に%FOLDER_NAME%のフォルダを作成します
mkdir C:\%FOLDER_NAME%
echo:
echo C:\%FOLDER_NAME%にコピーします
echo:
for %%a in (%*) do copy %%a C:\%FOLDER_NAME%
echo:
echo C:\%FOLDER_NAME%から%FILE_PASS%にデータを移動します
echo:
if not exist "%FILE_PASS%" (
echo:%FILE_PASS%のフォルダが存在していない可能性があります
echo:%FILE_PASS%のフォルダを作成します。
mkdir "%FILE_PASS%"
)
move C:\%FOLDER_NAME%\* "%FILE_PASS%"
echo:
echo:%FOLDER_NAME%のフォルダを削除します。
rd C:\%FOLDER_NAME%
echo:
if exist C:\%FOLDER_NAME% (echo:C:\%FOLDER_NAME%のフォルダを削除出来ませんでした。) else (echo:C:\%FOLDER_NAME%のフォルダを削除しました。)
echo 完了しました
echo:
pause
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
set FILE_PASS=C:\Program Files\temp
↑
ここが決まっているのなら、そのフォルダのセキュリティのアクセス許可を「フルコントロール」なんかにすれば良いのでは?
そんな設定には出来ない状況かも知れないが…
No.1
- 回答日時:
(´・ω・`)
原因が分かっているなら…
普通に管理者権限持たせて起動させればいいと思う。
対象のバッチファイルを右クリックして「管理者として実行」で良いでしょ。
・・・余談・・・
普通「batファイル」とは表現しない。
「バッチファイル」「batchファイル」などと表現します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- PHP 画像が表示出来ません。 1 2023/02/02 16:30
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- PHP php ログイン 1 2022/11/01 00:24
- Visual Basic(VBA) VBA This Workbookモジュールを別ファイルにコピーする方法 1 2022/09/14 01:51
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- PHP php テーブルが作成できない 1 2022/11/17 23:41
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Dosブロンプトでtabを出力したい
-
switch()文で値の大小比較
-
shシェルスクリプト 空白行の...
-
findstrのerrorlevel
-
pdftkを使った処理をバッチファ...
-
バッチファイルで、全てのウィ...
-
バッチファイルでpingの結果を...
-
xxxx.mdb からデータを取り出...
-
Windowsのsetコマンドでの小数...
-
phpでcookieがうまく保存されない
-
PHP一覧表示した項目にリンクを...
-
オブジェクトの中身の判定(PHP)
-
小数点以下0の非表示
-
ゼロとNULLを区別して number_f...
-
PHPで値を表示する「echo」「pr...
-
phpで、可変項目のcsvデータ...
-
ダブルクウォートやヒアドキュ...
-
ナベアツプログラム(3の倍数...
-
PHPで訪問回数を表示するカウン...
-
syntax error, unexpected 'ech...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Dosブロンプトでtabを出力したい
-
shシェルスクリプト 空白行の...
-
バッチファイルでpingの結果を...
-
phpでcookieがうまく保存されない
-
switch()文で値の大小比較
-
syntax error, unexpected 'ech...
-
findstrのerrorlevel
-
小数点以下0の非表示
-
Windowsのsetコマンドでの小数...
-
ゼロとNULLを区別して number_f...
-
DBのハッシュ化したパスワード...
-
オブジェクトの中身の判定(PHP)
-
bashの関数の引数にスペースが...
-
PHPで訪問回数を表示するカウン...
-
バッチファイルで、全てのウィ...
-
pdftkを使った処理をバッチファ...
-
PHP一覧表示した項目にリンクを...
-
PHPでのパスワード制限のセキュ...
-
RSSにdiv,ul classを付けたいの...
-
hiddenを使っているのに、表が...
おすすめ情報
データをドロップしてバッチを起動させているので右クリックからの起動方法は使えないのです。
それとも右クリックでの起動でファイルを取得する方法はあるのでしょうか。
batファイルとは表現しないですね
変な書き方をしてしまった