このenvvarを設定した直後に実行されるアプリケーションで、環境変数(バッチファイルで設定)を表示するにはどうすればよいですか?
私が使用するシナリオは次のとおりです。
外部スクリプト(ここではあまり重要ではありません)で、jpgファイルへのWindowsショートカットを作成します。ターゲットは次のようになります。
%MYPHOTOSDRIVE%:\private\photos\photo001.jpg
%MYPHOTODRIVE%には、現在のドライブ文字のみを含める必要があります。
次のBATスクリプトを使用してIrfanViewを起動します(スクリプトはすべての.lnkファイルと同じディレクトリにあります)。
set MYPHOTOSDRIVE=%cd:~0,2% "c:\Program Files\IrfanView\i_view32.exe" "i:\private\photolinks\photo001.lnk" "c:\Program Files\IrfanView\i_view32.exe" /slideshow="%cd%"
問題は、単一の画像もスライドショー(IrfanViewの2回目の呼び出し用)も適切に実行されないことです。
この「MYPHOTODRIVE」変数は、Irfanの実行時に適切な値に拡張されるべきではありませんか?親スクリプトと同じ環境になりませんか?
* 1はい、すべての画像ショートカットにはドライブ文字ではなく%MYPHOTOSDRIVE%があります。* 2環境 この方法でチェックすると、変数が適切に設定されます。* 3最初のバッチスクリプトから別のバッチスクリプトを呼び出すときと同じように機能することを望んでいました。この場合、この変数は適切な値に展開されます
—
...-schedar
%MYPHOTOSDRIVE%
ますか?その変数がグローバルに設定されていない場合(単一のコンソールインスタンスだけでなく、すべてのWindowsに対して)、Explorerはそれを使用しません。(2)set
同様の行を追加して、echo %%MYPHOTOSDRIVE%%
正しいかどうかを確認してください。(3) IrfanViewがショートカットを取ることはできないと思います。自動的には解決されません。