# Variablen innerhalb if(Ausdruck) werden nicht erweitert



## F0117375 (7. September 2008)

Hallo Batch Profis,
habe da ein kleines Problem mit DOS-Batch (unter WinXP).
Ziel ist es einer Anwendung mit einer [Yes|No] Variablen eine Zusatzapplikation anzuhängen oder nicht.

```
setlocal
set BASEDIR=C:\Programme\Anwendung
set If_ApplA=Yes
:: ApplA
if "%If_ApplA%" == "Yes"  (
set ApplA_VERSION=0.8.15
set ApplA_DIR=%BASEDIR%\appl\ApplA\%ApplA_VERSION%
set ApplA_bin_DIR=%ApplA_DIR%\bin
set PATH=%ApplA_bin_DIR%;%PATH%
)
:: Aufruf der Anwendung
endlocal
```
Schreibe ich die relevanten Zeilen einzeln in der Batch, enthalten die Variablen die gewünschten Werte.
Mit welcher anderen Syntax funktioniert das?
-- 
fredo


----------



## F0117375 (21. September 2008)

Hallo ...
Danke für die rege Beteiligung 
... habe selbst noch eine Variante gefunden, die der Anforderung genügt:

```
:: ...
if NOT "%If_ApplA%" == "Yes" goto fI_ApplA
:: ...
:: ...
:fI_ApplA
:: ...
```
-- 
fredo


----------

