0

基本的に、インストーラーを使用してexeファイル、つまり retry.exe を形成しています。この retry.exe ファイルは、いくつかのファイルで構成されるdemoという名前のフォルダーで構成されています。インストール中またはマシンへの retry.exe のダブルクリック中に、希望する場所のフォルダーを参照するオプションがあります。つまり、Windows 7 OS システムのC フォルダー またはD フォルダーを参照して、デモフォルダーをインストールできます。デモフォルダのパスを取得し、バッチ ファイル スクリプトを使用して変数に設定するにはどうすればよいですか。グーグルで調べたところ、 pushd %~dp0が機能する可能性があることがわかりましたが、バッチ ファイル スクリプトは初めてですが、あまりよくわかりません。どんな答えも高く評価されます。

4

2 に答える 2

1

バッチ ファイルがフォルダーから実行されている場合は、demoフォルダー%cd%の完全なパスが返されます。

追加された情報があれば、これは機能するはずですが、時間がかかる場合があります。これはドライブ C: を検索し、フォルダーが見つからない場合はドライブ D: を検索します。

@echo off
set "folder="
for /f "delims=" %%a in (' dir "c:\demo22112" /b /s /ad ') do if /i "%%~nxa"=="demo22112" set "folder=%%a"
if not defined folder for /f "delims=" %%a in (' dir "d:\demo22112" /b /s /ad ') do if /i "%%~nxa"=="demo22112" set "folder=%%a"
echo "%folder%"
pause
于 2013-09-17T10:09:47.747 に答える
0

ユーザーにフォルダーを要求する必要があります。バッチでこれを行う標準的な方法はありません。

いくつかのオプション:

1)ユーザーにディレクトリと入力して確認するように依頼します。

SET /P "Directory=Enter desired directory: "
IF NOT EXIST "%Directory%\" GOTO Not_Directory_Error

2) を使用してディレクトリを参照し、それをバッチに戻します。

于 2013-09-17T10:27:36.747 に答える