Войти

Показать полную графическую версию : [решено] Определение 32-разрядный (x86) или 64-разрядный


Svnkill
15-02-2018, 16:25
Как определить разрядность системы через cmd? Надо если на компьютере стоит 32 битная система, устанавливалось приложение для x32(x86) битной системы. Если стоит x64 то для 64 битных.

lSVl
15-02-2018, 16:41
set wkvexename=WirelessKeyView_x86.exe
IF /I NOT "%PROCESSOR_ARCHITECTURE%"=="x86" set "wkvexename=WirelessKeyView_x64.exe"
"%~dp0WirelessKeyView\%wkvexename%"

Svnkill
15-02-2018, 17:07
Как я понял WirelessKeyView_x86.exe » и "wkvexename=WirelessKeyView_x64.exe" » Это имена программы?

lSVl
15-02-2018, 17:22
151263

Svnkill
15-02-2018, 17:33
2018-02-15_16-19-44.jpg »
В чем ошибка? 151265

dislike
15-02-2018, 17:37
В чем ошибка? »
У вас там папка WirelessKeyView два раза в пути прописана.

Svnkill
15-02-2018, 17:47
У вас там папка WirelessKeyView два раза в пути прописана. »
Все заработало, спасибо. Как я понял мы папку WirelessKeyView кидаем рядом с батником. А как прямой путь к файлам или папке прописать?

lSVl
15-02-2018, 19:02
@echo off
CD /D %~dp0
set wkvexename=WirelessKeyView_x86.exe
IF /I NOT "%PROCESSOR_ARCHITECTURE%"=="x86" set "wkvexename=WirelessKeyView_x64.exe"
start "" "%wkvexename%"

Svnkill
15-02-2018, 19:07
Спасибо)

Казбек
15-02-2018, 19:21
@echo OFF

reg Query "HKLM\Hardware\Description\System\CentralProcessor\0" | find /i "x86" > NUL && set OS=32BIT || set OS=64BIT

if %OS%==32BIT START "" "C:\Program Files\Microsoft\your32.exe"
if %OS%==64BIT START "" "C:\Program Files\Microsoft\your64.exe"

:CheckOS
IF EXIST "%PROGRAMFILES(X86)%" (GOTO 64BIT) ELSE (GOTO 32BIT)

:64BIT
START "" "C:\Program Files\Microsoft\your64.exe"
GOTO END

:32BIT
START "" "C:\Program Files\Microsoft\your32.exe"
GOTO END

:END

На VBS:
Set WshShell = WScript.CreateObject("WScript.Shell")
OSArchCheck = WshShell.RegRead("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE")

If OSArchCheck = "x86" Then
objShell.run("C:\your32.exe")
Else
objShell.run("C:\your64.exe")
End If




© OSzone.net 2001-2012