发布构建SET命令和%变量%错误

Syn*_*der 4 command-line batch-file visual-studio-2010 post-build-event

我是批量新手,我可能犯了一个错误.但我有以下后期制作活动:

IF $(ConfigurationName) == Release (
    SET RELEASEPATH = "C:\Users\Synercoder\Documents\Visual Studio 2010\Releases\$(ProjectName)"
    IF NOT EXIST  %RELEASEPATH% (
        GOTO MAKEDIR
    ) ELSE (
        GOTO DIREXISTS
    )
    :MAKEDIR
    MKDIR %RELEASEPATH%
    :DIREXISTS
    COPY /Y "$(TargetDir)$(ProjectName).dll" "%RELEASEPATH%\$(ProjectName).dll"
    COPY /Y "$(TargetDir)$(ProjectName).pdb" "%RELEASEPATH%\$(ProjectName).pdb"
)
Run Code Online (Sandbox Code Playgroud)

但是这会失败,代码为255.如果我用%RELEASEPATH%实际路径替换所有它的工作原理.我查了一下这个SET命令,我觉得我用的是正确的...但就像我说我是一个批量新手.

有什么线索为什么这个在我的情况下失败了?

如果我使用以下代码,这是我的输出:

SET RELEASEPATH = test
ECHO "%RELEASEPATH%"
SET RELEASEPATH = "test"
ECHO "%RELEASEPATH%"
Run Code Online (Sandbox Code Playgroud)

输出:

""
""
Run Code Online (Sandbox Code Playgroud)

ren*_*ene 7

首先,空间很重要!我会删除"如果我是你,只在使用var时添加它们.

SET RELEASEPATH=C:\Users\Synercoder\Documents\Visual Studio 2010\Releases\$(ProjectName)

IF NOT EXIST  "%RELEASEPATH%" MKDIR "%RELEASEPATH%"
Run Code Online (Sandbox Code Playgroud)