Top-Themen

Aktuelle Themen (A bis Z)

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

64Bit Versionen verschiedener Windows-Distributionen per Batch erkennen

Frage Entwicklung Batch & Shell

Mitglied: zensbert

zensbert (Level 1) - Jetzt verbinden

22.12.2009 um 22:37 Uhr, 12076 Aufrufe, 6 Kommentare

Hi,
Ich hab ein bischen gegoogelt, aber so eine richtig zufriedenstellende Lösung habe ich noch nicht.. Ich müsste per Batch erkennen können ob es eine 64Bit Version ist oder nicht und das leider in allen OS von XP bis 7. Die WMIC fällt flach da die auf den verschiedensten Versionen z.B. Vista Home nicht dabei ist und es auch nicht mit wmic rüberkopieren getan ist. Bevor ich mir hier 3 virtuelle Maschinen installiere frage ich mal lieber hier ob jemand schon den passenden Schnipsel in seinem Fundus hat, der mir da helfen kann. Ist es da am besten per systeminfo.exe auszulesen? OS lese ich per Registry aus und setze es in %BS%..

also als Beispiel:
01.
set os64=0 
02.
(set bs=xp) 
03.
if %bs% == XP (Echo Windows XP erkannt) 
04.
if %bs% == XP (64 Bit-Prüfung, wenn ja set os64=1) 
05.
if %bs% == Vista (Echo Windows Vista erkannt) 
06.
if %bs% == Vista (64 Bit-Prüfung, wenn ja set os64=1) 
07.
if %bs% == 7 (Echo Windows 7 erkannt) 
08.
if %bs% == 7 (64 Bit-Prüfung, wenn ja set os64=1) 
09.
if %os64% == 1 (goto 64error)
Wenn ihr ein kleines CMD-Hilfestellungstool kennt oder sonst was immer her damit.. wäre auch kein problem- hauptsache kompatibel von XP bis Seven^^

Danke im Voraus..

Thomas
Mitglied: rubberman
23.12.2009 um 00:16 Uhr
Hallo chizophren.

Hier: Getosversion.vbs - Betriebssystem sowie die Versionsnummer per Script bestimmen
findest du einiges darüber.

Die Environmentvariable %OS%
sowie die Befehle VER und NET CONFIG WORKSTATION
geben dir wertvolle Aufschlüsse.

Das VBScript aus dem verlinkten Beitrag mal in abgewandelter Form im Batch verwurstet sähe etwa so aus:
01.
@echo off & setlocal 
02.
set "vbstool=%temp%\GetOsInfo.vbs" 
03.
>"%vbstool%" echo Set colOperatingSystems = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2").ExecQuery("Select * from Win32_OperatingSystem") 
04.
>>"%vbstool%" echo For Each objOperatingSystem in colOperatingSystems 
05.
>>"%vbstool%" echo Wscript.Echo objOperatingSystem.Caption ^& ":" ^& objOperatingSystem.Version ^& ":" ^& objOperatingSystem.ServicePackMajorVersion ^& "." ^& objOperatingSystem.ServicePackMinorVersion 
06.
>>"%vbstool%" echo Next 
07.
 
08.
for /f "delims=: tokens=1-3" %%a in ('cscript //nologo "%vbstool%"') do ( 
09.
  echo Name: %%a 
10.
  echo Version: %%b 
11.
  echo SevicePack: %%c 
12.
13.
 
14.
del "%vbstool%" 
15.
pause
Wie/an welcher Stelle genau sich allerdings eine 32bit von einer 64bit - Version unterscheidet, weiß ich nicht. Vielleicht hast du Möglichkeiten das auszutesten.

Grüße
rubberman

<edit>
Mit den Versionsnummern sollte das OS recht eindeutig zu identifizieren sein. Hier eine Liste:
www.gaijin.at/lstwinver.php
Das Problem, ob nun 32 oder 64bit, scheint sich damit aber noch nicht klären zu lassen.
</edit>
Bitte warten ..
Mitglied: Mad-Eye
23.12.2009 um 09:41 Uhr
Hi,

also am einfachsten ist es meines wissens zu prüfen ob der Ordner "Program Files (x86)" vorhanden ist. Dieser ist jedenfalls bei XP64, Vista und 7 immer da getestet bei englischer und deutscher Installation.

Gruß
Mad-Eye
Bitte warten ..
Mitglied: DerWoWusste
23.12.2009 um 14:55 Uhr
Es gibt da eine Variable...
PROCESSOR_ARCHITECTURE
Bitte warten ..
Mitglied: rubberman
23.12.2009 um 16:58 Uhr
@DerWoWusste

Stimmt. Hat auf meiner 32bit Büchse den Wert x86. Wie sieht das auf einem 64bit System aus?

Grüße
rubberman

<edit>
Batch - Betriebssysteminformationen abfragen (auch ohne WSH) - NT, 200x, XP, Vista, ... - Name ink. Typ (Server, Home, etc.), Version, Product Suite (Terminal Server, etc.), Sprache und Windows Service Pack, 32 oder 64 Bit
In dem Beitrag werden wohl alle offenen Fragen beantwortet. Unter anderem auch, dass x86 für das 32bit System steht.
</edit>
Bitte warten ..
Mitglied: zensbert
27.12.2009 um 10:13 Uhr
danke an alle fleißigen schreiberlinge.. war nur die letzten tage weihnachtsabstinent.. die prozessur architektur muss ja nicht zwangsweise mit dem OS übereinstimmen. Hab auch ein 64Bit Prozi und nur 32bit laufen...

habe das jetzt so gelöst:

01.
for /f "tokens=1,*" %%i in ('%windir%\system32\Systeminfo^|find "Systemtyp"') do set "Bitver=%%j" 
02.
echo %Bitver%|findstr "86">nul && echo 32Bit 
03.
echo %Bitver%|findstr "64">nul && echo 64Bit
eine deutsche systeminfo.exe vorausgesetzt sollte die erkennung funktionieren.

Muss das noch auf ein paar Systemen austesten aber denke doch dass das klappen wird.. ansonsten gehe ich nach der "Program Files (x86)" Ordnerstruktur.

Guten Rutsch an alle..

Gruß Thomas
Bitte warten ..
Mitglied: DerWoWusste
29.12.2009 um 16:46 Uhr
Hi.
die prozessur architektur muss ja nicht zwangsweise mit dem OS übereinstimmen
Doch. Schau Dir mal die Definition der Variable im Netz an, es geht nicht um den Prozessor, sondern um das OS. Zugegebenermaßen irreführend.
Hab auch ein 64Bit Prozi und nur 32bit laufen...
Und, welchen Wert hat die Variable? x86.
Bitte warten ..
Ähnliche Inhalte
Windows Tools
LibreOffice - Statilität 64bit-Version unter Windows
Frage von Der-PhilWindows Tools5 Kommentare

Hallo! Ich muss auf einigen Windows 2012R2 Terminalservern LibreOffice installieren. Bislang habe ich immer die 32bit-Versionen eingesetzt. Habt Ihr ...

Sicherheit
OpenVPN-OpenSSL Version des Partners erkennen
gelöst Frage von AegnorSicherheit10 Kommentare

Hallo, durch das Problem von OpenSSL "Heartbleed" frage ich mich, wie ich erkennen welche Version von OpenVPN mein Kommunikationspartner ...

Lizenzierung
Programm soll in verschiedenen Versionen lizenziert sein
Frage von YanmaiLizenzierung20 Kommentare

Hallo ihr Administratoren, ich möchte ein Programm entwickeln, was man sich in einer kostenlosen, einer standard und einer premium ...

Batch & Shell
Herunterfahren erkennen (Batch)
gelöst Frage von clragonBatch & Shell17 Kommentare

Hallo Leute Ich war gerade am experimentieren mit 40'000 Dateien und mehr, und da dachte ich mir; Was passiert ...

Neue Wissensbeiträge
Mac OS X

MacOS wo ist die Tilde ?

Tipp von Alchimedes vor 6 StundenMac OS X1 Kommentar

Hallo, ich hab eine MacOS qwertz Keyboard auf US Layout umgestellt da die Sonderzeichen besser erreichbar sind. Leider fehlt ...

Datenschutz

Weitere Informationen zum Sicherheitsproblem BeA

Information von Penny.Cilin vor 13 StundenDatenschutz

Im folgenden ein weiterer Bericht über die Sicherheitsprobleme von Bea. Fataler Konstruktionsfehler im besonderen elektronischen Anwaltspostfach Gruss Penny

Windows 10

Systemdienste behalten nach Win10 inplace-Upgrade nicht die ggf. modifizierte Startart bei

Tipp von DerWoWusste vor 15 StundenWindows 103 Kommentare

Stellt Euch vor, Ihr habt ein Win10 System und modifiziert dort die Startart von Systemdiensten. Zum Beispiel wollt Ihr ...

Microsoft Office

Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei

Anleitung von SarekHL vor 18 StundenMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von fyrb38Windows 1018 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...

Microsoft Office
Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei
Anleitung von SarekHLMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...