Umgebungsvariable auslesen

Antworten
luca_de
Beiträge: 29
Registriert: 30 Nov 2018, 13:38

Umgebungsvariable auslesen

Beitrag von luca_de »

Hallo zusammen ich habe folgendes Problem:

Dieser Code sollte mir die in der Umgebungsvariable stehende AMD64 zurückgeben und bei der Prüfung true bringen, allerdings zeigt es beim Ausführen des Codes bei x86 true an

Code: Alles auswählen

set $PROCESSOR_ARCHITECTURE$ = EnvVar("PROCESSOR_ARCHITECTURE")

Code: Alles auswählen

if ($PROCESSOR_ARCHITECTURE$ = "x86")
	comment "x86"
	;Winbatch_Install86
if ($PROCESSOR_ARCHITECTURE$ = "AMD64")
	comment "AMD64"
bernd670
Beiträge: 90
Registriert: 16 Mär 2018, 10:44

Re: Umgebungsvariable auslesen

Beitrag von bernd670 »

Hallo,

das liegt daran das OPSI-winst eine 32Bit Anwendung ist, das kannst Du auch ganz einfach nachvollziehen wenn Du die 32Bit-Version von CMD ausführst

Code: Alles auswählen

c:\Windows\SysWOW64\cmd.exe
und Dir dann mit die Umgebungsvariablen anschaust. Dann gibt es nämlich 2 Variablen für die Architektur

Code: Alles auswählen

PROCESSOR_ARCHITECTURE=x86
PROCESSOR_ARCHITEW6432=AMD64
MfG
Bernd
larsg
Beiträge: 283
Registriert: 16 Dez 2014, 18:06

Re: Umgebungsvariable auslesen

Beitrag von larsg »

Prüfung auf die Bit-Architektur des Rechners geht auch mit OPSI mitteln:

DefVar $SystemArchitecture$
Set $SystemArchitecture$ = GetSystemType
Set $SystemArchitecture$ = StringReplace($SystemArchitecture$,"x86 System","x86")
Set $SystemArchitecture$ = StringReplace($SystemArchitecture$,"64 Bit System","x64")
Antworten