Delphi-PRAXiS
Seite 2 von 6     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   OS Version ermitteln (https://www.delphipraxis.net/156372-os-version-ermitteln.html)

Der Jan 30. Nov 2010 10:31

AW: OS Version ermitteln
 
Nicht OK:
Windows XP Professional SP3 32-bit --> angezeigt als: Windows XP Home Edition Service Pack 3 Build: 2600
Windows Server 2003 Standard Edition SP2 --> angezeigt als: Storage Server 2003 Compute Cluster Edition Service Pack2, Build: 3790

OK:
Windows Vista (Wine unter Debian Lenny, Vista Mode) --> Angezeigt als: Windows Vista Service Pack 2, Build 6002 32-bit
Windows 2000 (Wine unter Debian Lenny, Win2k Mode) --> Angezeigt als: Windows 2000 Profesional Service Pack 4, Build: 2195

Luckie 30. Nov 2010 10:35

AW: OS Version ermitteln
 
Wie gesagt, das hilft mir im Moment nicht all zu viel. Deswegen habe ich euch ja gebeten mal im Quellcode zu gucken, wo es schief läuft.

v2afrank 30. Nov 2010 11:04

AW: OS Version ermitteln
 
Mein 64 Bit Win 7 wird auch als 32 Bit erkannt. Ich bin das ganze mal im Debugger durchgegangen.
Der Fehler passiert hier
Delphi-Quellcode:
  if (osvi.dwMajorVersion >= 6) then
  begin
    if (si.wProcessorArchitecture = PROCESSOR_ARCHITECTURE_AMD64) then
      Result := Result + ' 64-bit'
    else if (si.wProcessorArchitecture = PROCESSOR_ARCHITECTURE_INTEL) then
      Result := Result + ' 32-bit';
  end;
si.wProcessorArchitecture ist bei mir 0, was PROCESSOR_ARCHITECTURE_INTEL entspricht. Ich habe allerdings auch eine Intel CPU

Luckie 30. Nov 2010 12:15

AW: OS Version ermitteln
 
Hm, da muss ich mal gucken, ob ich da was falsch abgeschrieben habe.

Luckie 30. Nov 2010 12:23

AW: OS Version ermitteln
 
Noch mal zu dem C Code:
Code:
if Wert1 & Wert dann
Wie übersetzt man das in Delphi? Eventuell habe ich das falsch Übersetzt.

p80286 30. Nov 2010 12:26

AW: OS Version ermitteln
 
ich denke so ists dann richtig:
Delphi-Quellcode:
if (osvi.wSuiteMask and VER_SUITE_PERSONAL = VER_SUITE_PERSONAL) then
Home ist $0200 und Prof ist $0100

Gruß
K-H

Luckie 30. Nov 2010 12:33

AW: OS Version ermitteln
 
Liste der Anhänge anzeigen (Anzahl: 1)
OK. Korrigiert. Bitte noch mal testen. Eventuell behebt das schon einige Fehler.

Jens Hartmann 30. Nov 2010 12:38

AW: OS Version ermitteln
 
Hallo Michael,

Windows 7 Professional 64-Bit geht immer noch nicht. Da kommt immer noch die Meldung 32-Bit.

Gruß Jens

Bummi 30. Nov 2010 12:38

AW: OS Version ermitteln
 
Server 2008R2 Enterprise

[Window Title]
Project2

[Content]
Der an einen Systemaufruf übergebene Datenbereich ist zu klein

[OK]

DeddyH 30. Nov 2010 12:40

AW: OS Version ermitteln
 
Zitat:

---------------------------
Project1
---------------------------
Windows Vista rocessExefileBusiness Edition Service Pack 2 Build: 6002 32-bit
---------------------------
OK
---------------------------
Stimmt hier (von dem blödsinnigen String mal abgesehen).


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:32 Uhr.
Seite 2 von 6     12 34     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz