AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Win & Dos Versions Nummern abfragen.

Ein Thema von KodeZwerg · begonnen am 13. Mär 2018 · letzter Beitrag vom 15. Mär 2018
Antwort Antwort
Seite 1 von 2  1 2      
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Win & Dos Versions Nummern abfragen.

  Alt 14. Mär 2018, 05:41
Hallo,
für Windows fragt man am besten die Version der Datei kernel32.dll ab
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.174 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Win & Dos Versions Nummern abfragen.

  Alt 14. Mär 2018, 08:43
DOS-Version - Gibts seit Windows95 nicht mehr.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
matashen

Registriert seit: 29. Jan 2007
Ort: daheim
463 Beiträge
 
Delphi XE2 Enterprise
 
#3

AW: Win & Dos Versions Nummern abfragen.

  Alt 14. Mär 2018, 08:47
Nein ist schon lange nicht mehr konform, hat aber nichts mit Delphi sondern mit der Windows API ab Win8 zu tun. siehe hier

https://msdn.microsoft.com/de-de/library/windows/desktop/ms724834


nutze OSVersionInfo oder OSVersionInfoEx

Gruß Matthias
Matthias
Das Leben ist eines der härtesten.
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Win & Dos Versions Nummern abfragen.

  Alt 14. Mär 2018, 09:29
OSVERSIONINFO, daß ist es was ich nun anwenden werde, scheint mir am besten dafür geeignet zu sein.
Vielen Dank!

Ps: An Daniel, was lässt Dich vermuten das ich Hilfe ablehne wenn ich doch der Fragestellende bin?
Hätte ich mich verweigert Informationen zu lesen wäre ich damals ja nicht auf den GetVersion Befehl und dessen Verarbeitung gestoßen, das es Windows ab 8 oder 8.1 nun anders handhabt ist mir neu, falls Deine Aussage eine Anspielung sein soll das ich mich mal informieren sollte bevor ich hier eine Frage stelle, Ok Sir, wird nun so gemacht Sir.

PPs: Die Dos-Version sollte halt eine Unterhaltsame Einblendung an alte Tage sein, ob fachlich korrekt oder nicht.

PPPs: Zur Aussage ab Win95 kein DOS -> eine andere Sichtweise
Gruß vom KodeZwerg

Geändert von KodeZwerg (14. Mär 2018 um 09:47 Uhr)
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.026 Beiträge
 
Delphi 2009 Professional
 
#5

AW: Win & Dos Versions Nummern abfragen.

  Alt 14. Mär 2018, 10:25
DOS-Version - Gibts seit Windows95 nicht mehr.
Du hast „Windows NT“ falsch geschrieben. In Windows Me gab es noch MS-DOS 8.00, startbar war es nur bis 7.10 in Windows 98.
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.174 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Win & Dos Versions Nummern abfragen.

  Alt 14. Mär 2018, 12:16
DOS-Version - Gibts seit Windows95 nicht mehr.
Du hast „Windows NT“ falsch geschrieben. In Windows Me gab es noch MS-DOS 8.00, startbar war es nur bis 7.10 in Windows 98.
Ok. Win 9x hat noch ein DOS "Im Bauch".
Aber alles unter XP kann man wohl als "Antike OS-Versionen" betrachten und XP als "OldTimer"
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#7

AW: Win & Dos Versions Nummern abfragen.

  Alt 14. Mär 2018, 14:24
Zitat:
Ps: An Daniel, was lässt Dich vermuten das ich Hilfe ablehne wenn ich doch der Fragestellende bin?
Er wird schon seinen Grund haben.

Zumindest kann er jemanden anhand der IP identifizieren und somit weis er wer oder was du hier früher einmal warst.
Da du nun auf der Basis weitermachst frage ich mich warum du dich überhaupt abgemeldet hast.
Dir hat niemand etwas getan das diese Entscheidung verständlich macht.

Sorry OT aber es hat mich gereizt darauf zu antworten.

gruss
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.919 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Win & Dos Versions Nummern abfragen.

  Alt 14. Mär 2018, 14:37
Zumindest kann er jemanden anhand der IP identifizieren [...]
Emil ... glücklicherweise ist mein Leben zu auf- und anregend, als dass ich Muße hätte, hier IP-Adressen zu notieren und anonyme Benutzer zu verfolgen. Mit welchem persönlichen Nutzen?
Im Jahr 2018 das Betriebssystem Windows nach einer DOS-Versionsnummer fragen zu wollen, zeugt von einer hinreichenden Unkenntnis der API-Dokumentation. Man kann nicht alle APIs im Kopf haben, muss man auch nicht, aber bevor ich mich hinsetze und in einem Forum einen Beitrag schreibe, gucke ich doch mal kurz, was der Hersteller zur API-Funktion schreibt. Und auch wenn man viel auf Microsoft schimpft - das MSDN ist seit vielen, vielen Jahren eine hochwertige Informationsquelle.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.315 Beiträge
 
Delphi 12 Athens
 
#9

AW: Win & Dos Versions Nummern abfragen.

  Alt 14. Mär 2018, 15:14
das MSDN ist seit vielen, vielen Jahren eine hochwertige Informationsquelle.
Und wem das nicht reicht, der kann sich auch noch das Windows SDK besorgen (ehemals PSDK).

Nicht jeder Typ oder jede Konstante ist haargenau im MSDN inkl. Wert / kompletter Definition genannt, aber im SDK ist alles drin.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Win & Dos Versions Nummern abfragen.

  Alt 14. Mär 2018, 18:18
für Windows fragt man am besten die Version der Datei kernel32.dll ab
Das habe ich nun auch versucht, mit der GetFileVersionInfo funktion.
Beim Zugriff auf kernel32.dll gibt mir die funktion False zurück, GetLastError deutet auf "Datei nicht gefunden" hin, ich übergebe den kompletten Pfad. Irgendwas mache ich dabei falsch.

So hier in etwa verarbeite ich es: (Code nicht von mir)
Delphi-Quellcode:
function GetVersionInfo(NameApp, VerOpt: String): String;
var
 dump: DWORD;
 size: integer;
 buffer: PChar;
 VersionPointer, TransBuffer: PChar;
 Temp: integer;
 CalcLangCharSet: string;
begin
 size := GetFileVersionInfoSize(PChar(NameApp), dump);
 buffer := StrAlloc(size+1);
  try
   GetFileVersionInfo(PChar(NameApp), 0, size, buffer);
   VerQueryValue(buffer, 'VarFileInfo\Translation', pointer(TransBuffer), dump);
    if dump >= 4 then
     begin
      temp:=0;
      StrLCopy(@temp, TransBuffer, 2);
      CalcLangCharSet := IntToHex(temp, 4);
      StrLCopy(@temp, TransBuffer+2, 2);
      CalcLangCharSet := CalcLangCharSet+IntToHex(temp, 4);
     end;
   VerQueryValue(buffer, pchar('StringFileInfo\' + CalcLangCharSet + '\' + VerOpt), pointer(VersionPointer), dump);
  if (dump > 1) then begin
    SetLength(Result, dump);
    StrLCopy(Pchar(Result), VersionPointer, dump);
   end else Result := '';
 finally
  StrDispose(Buffer);
 end;
end;
In einem Demo Projekt mit gleichem Code nur auf eine Datei im selben Verzeichniss angewendet klappt alles,
wenn ich nun die .exe zur kernel32.dll hinkopiere bleibt der Fehler bestehen.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz