1

ネットワーク ドライブでバッチ ファイルを実行すると、「UNC パスはサポートされていません」というエラーが表示されます。

pushd現在のディレクトリが「C:\ Windows」に変更される前に、コマンドを介して切り替えることができるように、バッチファイルの現在のディレクトリを変数に保存したいと考えています。

私が何かを逃した場合は申し訳ありません!

編集:

コードは次のとおりです。

@echo off
SETLOCAL EnableExtensions
title School Minecraft Hunger Games Launcher
set appdata=%cd%\core
set usrname=%USERNAME%
:lol
cls
set choice=
echo -------------------------------------------------------------------------------
echo                         School Minecraft Launcher v4.2                   
echo                            Minecraft Version: 1.5.2
echo -------------------------------------------------------------------------------
echo Logging in with the name "%usrname%". Is this correct? (y/n)
set /p choice=
if "%choice%"=="y" goto check
if "%choice%"=="yes" goto check
if "%choice%"=="n" goto argue
if "%choice%"=="no" goto argue
echo.
echo That is not a recognized command, Press enter to try again.
pause > nul
goto lol
:argue
cls
set provide2=
echo To change your ingame username, please provide the override password:
echo.
echo Type "back" to cancel.
echo.
set /p provide2=Password: 
if "%provide2%"=="changename" goto enternewname
if "%provide2%"=="back" goto lol
echo.
echo Incorrect Password.
echo.
echo Press enter to try again...
pause > nul
goto argue
:enternewname
cls
echo Please enter new name, then press enter:
set /p usrname=
goto lol
:check
cls
if "%usrname%"=="user1" set knee=watermelon
if "%usrname%"=="user2" set knee=computer
if "%usrname%"=="user3" set knee=fish
if "%usrname%"=="user4" set knee=kittens
:final
if "%knee%"=="" goto rungame
cls
set provide=
echo -------------------------------------------------------------------------------
echo                          School Minecraft Launcher v4a                   
echo                            Minecraft Version: 1.5.2
echo -------------------------------------------------------------------------------
echo You are trying to login as an admin. Please provide your password.
echo.
echo Username: %usrname%
set /p provide=Password: 
if "%knee%"=="%provide%" goto rungame
echo.
echo Incorrect password.
echo.
echo Press enter to exit...
pause > nul
exit
:rungame
pushd "%appdata%\.minecraft\bin"
start javaw -cp minecraft.jar;lwjgl.jar;lwjgl_util.jar -Djava.library.path="natives" net.minecraft.client.Minecraft "%usrname%"
exit

ゲームファイルを含む「core」というフォルダーが含まれている限り、どこに置いても実行されるはずです。通常は次のようになります%cd%\core。コードの一番下を見ると、ディレクトリを次のように変更する必要があることがわかります%cd%\core\.minecraft\bin

4

2 に答える 2

0

この行をプログラムの最初の数行の 1 つとして追加します (ファイル/フォルダーにアクセスする前に)。

pushd %~dp0
于 2013-08-03T10:43:22.247 に答える