Evet, kesinlikle mümkün. Sadece üç .bat dosyası yazmanız yeterlidir. Birincisi şöyle görünmelidir:
@echo off
if "%1" == "" goto x86
if not "%2" == "" goto usage
if /i %1 == x86 goto x86
if /i %1 == ia64 goto ia64
goto usage
:x86
if not exist "%~dp0bin\x86.bat" goto missing
call "%~dp0bin\x86.bat"
goto :eof
:ia64
if not exist "%~dp0bin\ia64.bat" goto missing
call "%~dp0bin\ia64.bat"
goto :eof
:usage
echo Error in script usage. The correct usage is:
echo %0 [option]
echo where [option] is: x86 ^| ia64
echo:
echo For example:
echo %0 x86
goto :eof
:missing
echo The specified configuration type is missing. The tools for the
echo configuration might not be installed.
goto :eof
İkinci ve üçüncü .bat dosyası, adlarında farklı olmaları dışında, temelde aynıdır. Birincisi x86.bat ikinci ia64.bat olarak adlandırılacak ve ilk yarasa dosyasının üstünde bin olarak adlandırılan bir klasöre yerleştirilecektir. Buna sahip olacaksınız:
PATH\first.bat
PATH\bin\x86.bat
PATH\bin\ia64.bat
İkinci ve üçüncü .bat dosyasının içeriği şöyle görünmelidir:
@set PATH=THE PATH YOU WANT
İlk .bat dosyasına aşağıdaki ayarlara sahip bir bağlantı oluşturabilirsiniz:
Hedef:% comspec% / k "PATH \ first.bat" SEÇENEK | SEÇENEK x86 veya ia64 olduğunda
Başlangıç: PATH | PATH, first.bat'inizin PATH olduğu yer
Komut dosyası, Microsoft'un Visual Studio ortamları için doğru komut satırını başlatmak üzere kullandığı basitleştirilmiş komut dosyasıdır. Bu komut dosyalarını N ortamlara genişletebilirsiniz. Farklı ortamlar için daha fazla .bat dosyası ekleyerek ve daha fazla seçenek ve goto ifadeleriyle first.bat dosyasını düzenleyerek. Umarım kendi kendini açıklar.
Ve umarım Microsoft senaryolarını kullandığım için bana dava açmaz.
DÜZENLE:
Ah sanırım seni biraz yanlış anladım. 32bit cmd hattı için bağlantı şu şekilde oluşturulmalıdır:
Hedef:% windir% \ SysWoW64 \ cmd.exe "PATH \ first.bat" x86
EDIT2:
Şuna benzer bir şey deneyin:
if "%ProgramFiles%" == "%ProgramFiles(x86)%" goto x64_PATH
if "%ProgramFiles%" == "%ProgramW6432%" goto x86_PATH
:x64_PATH
@set PATH=YOUR 64 bit PATH
SOME_PATH\your64BitApp.exe
goto :eof
:x86_PATH
@set PATH=YOUR 32bit PATH
SOME_PATH\your32BitApp.exe
goto :eof
echo %programfiles%
cmd.exe'nin türüne bağlı olarak farklı bir yol gösterir, ancakwhere ssleay32.dll
cmd.exe'nin (32bit ve 64bit) her iki türünde de bu dll'yi bulamaz veINFO: Could not find files for the given pattern(s).
Herhangi bir fikir görüntüler mi?