当写入文件时,cmd就会崩溃。

问题描述 投票:-1回答:1

我正在批量制作一个游戏,但当我试图写入一个文件时,cmd就崩溃了。我写到一个文件是为了保存数据。这样用户就可以直接回来加载了。

创建用户代码块。

:cruser1
cls
set /a created=1
echo(
set /p name=Enter The Name of The User:: 
goto save

加载用户代码块:

:loaduser
cls
set /a created=0
echo(
set /p loaduser=Enter The Name of The User to Load:: 

if exist "%loaduser%.dll" (
    < %loaduser%.dll (
        set /p MHP=
        set /p HP=
        set /p DMG=
        set /p GOLD=
        set /p EXP=
        set /p LVL=
        set /p MEXP=
    )
    goto menu
)

if not exist "%loaduser%.dll" (
    echo File not found.
    timeout /t 3 /NOBREAK >nul
    goto loaduser
)

Save Data Code Block:

:save
cls
echo(
if %created% equ 1(
    (
        echo %MHP%
        echo %HP%
        echo %DMG%
        echo %GOLD%
        echo %EXP%
        echo %LVL%
        echo %MEXP%
    ) > %name%.dll
    attrib +h "%name%.dll"
    goto menu
)
if %created% equ 0(
    (
        echo %MHP%
        echo %HP%
        echo %DMG%
        echo %GOLD%
        echo %EXP%
        echo %LVL%
        echo %MEXP%
    ) > %loaduser%.dll
    attrib +h "%loaduser%.dll"
    goto menu
)

有谁知道如何解决这个问题,为什么会这样?

编辑:我调试了一下,保存后呼应了一下 it worked在我杀了敌人之后,它确实说过 it worked但也 Access is denied.希望能帮到你。

batch-file cmd
1个回答
0
投票

你有错误的小括号,问题一,问题二,无法测试现有隐藏文件的存在。

If exist "%loaduser%.dll" attrib -h "%loaduser%.dll"
if %created% equ 0 (
    echo %MHP%
    echo %HP%
    echo %DMG%
    echo %GOLD%
    echo %EXP%
    echo %LVL%
    echo %MEXP%
) > %loaduser%.dll
attrib +h "%loaduser%.dll"
goto menu
© www.soinside.com 2019 - 2024. All rights reserved.