Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Vbscript - prüfen ob windows 32bit oder 64bit

Frage Microsoft

Mitglied: micneu

micneu (Level 2) - Jetzt verbinden

23.01.2011 um 10:41 Uhr, 14519 Aufrufe, 3 Kommentare

Hallo Leute hoffe ihr könnt mir helfen.

Ich beschäftige mich mal wieder mit vbscript.
Und nun meine frage wie kann ich in vbscript prüfen ob windows in 32bit oder 64bit läuft.

gruß michael
Mitglied: EvilMoe
23.01.2011 um 11:13 Uhr
01.
 
02.
On Error Resume Next 
03.
 
04.
Dim WshShell 
05.
Dim OsType 
06.
 
07.
Set WshShell = CreateObject("WScript.Shell") 
08.
 
09.
OsType = WshShell.RegRead("HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE") 
10.
 
11.
If OsType = "x86" then 
12.
wscript.echo "Windows 32bit system detected" 
13.
elseif OsType = "AMD64" then 
14.
wscript.echo "Windows 64bit system detected" 
15.
end if 
16.
 
Erster Link in google.
Bitte warten ..
Mitglied: micneu
23.01.2011 um 11:40 Uhr
danke das ging ja schnell

gruß michael
Bitte warten ..
Mitglied: Friemler
23.01.2011 um 15:19 Uhr
Hallo EvilMoe,

meiner Erfahrung nach funktioniert diese Methode nicht zuverlässig. Ich musste mich bei der Erstellung von Batchfiles für unser Programmiererteam mit dem Thema herumschlagen. Einige verwenden auf ihren Entwicklermaschinen 32Bit-Systeme, die anderen 64Bit-Systeme (Vista oder Win7). Aus einem Batch-Skript sollte der Compiler mit einer Projektdatei als Parameter gestartet werden. Auf 32Bit-Systemen liegt er in C:\Program Files, auf 64-Bit Systemen in C:\Program Files (x86). Dafür brauchte ich eine Unterscheidung. Auf manchen 64Bit-Systemen hatte die Variable PROCESSOR_ARCHITECTURE trotzdem den Wert x86...

Zuverlässig hat folgende Abfrage funktioniert:
01.
if "%ProgramFiles(x86)%" neq "" ( 
02.
  set "Programs=C:\Program Files (x86)" 
03.
) else ( 
04.
  set "Programs=C:\Program Files" 
05.
)
@micneu:
Prüfe die Umgebungsvariablen auf die Existenz einer Variablen ProgramFiles(x86), wenn sie existiert bist Du auf einem 64Bit-System, wenn nicht auf einem 32Bit-System.

Könnte so gehen:
01.
Set WshShell = WScript.CreateObject("WScript.Shell") 
02.
Set WshSysEnv = WshShell.Environment("PROCESS") 
03.
 
04.
If WshSysEnv("ProgramFiles(x86)") = "" Then 
05.
  OSType = "32Bit" 
06.
Else 
07.
  OSType = "64Bit" 
08.
End If 
09.
 
10.
WScript.Echo OSType
Oder per WMI-Abfrage:
01.
strComputer = "." 
02.
Set objWMI = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") 
03.
Set colOSs = objWMI.ExecQuery("Select * from Win32_OperatingSystem") 
04.
 
05.
For Each OS in colOSs  
06.
  OSType = OS.OSArchitecture 
07.
Next 
08.
 
09.
WScript.Echo OSType
Ergebnis: 32-Bit oder 64-Bit

Gruß
Friemler
Bitte warten ..
Ähnliche Inhalte
Windows Netzwerk
Telnet-Server für Windows 10 (64bit) (4)

Frage von deadygfx zum Thema Windows Netzwerk ...

Windows Installation
gelöst Suche Windows Vista Home Premium 64Bit ISO (11)

Frage von FA-jka zum Thema Windows Installation ...

Batch & Shell
gelöst Windows Batch - Drag and Drop - prüfen ob Parameter leer (2)

Frage von zimbosmurf zum Thema Batch & Shell ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Firewall
Welche Firewall ? (18)

Frage von Cyberurmel zum Thema Firewall ...

Windows Server
gelöst Einzelnes Windows Update über GPO deinstallieren (16)

Frage von lordofremixes zum Thema Windows Server ...

Windows Server
GPO zum Deinstallieren von Office Update wird nicht ausgeführt (15)

Frage von lordofremixes zum Thema Windows Server ...