AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

GetVersionEx unter Windows 10

Ein Thema von greenmile · begonnen am 18. Dez 2014 · letzter Beitrag vom 21. Dez 2014
Antwort Antwort
Seite 2 von 4     12 34   
dGeek
(Gast)

n/a Beiträge
 
#11

AW: GetVersionEx unter Windows 10

  Alt 18. Dez 2014, 22:41
Bei der Gelegenheit möchte ich mal eine Frage in den Ring werfen: warum verwendet man die Versionsprüfung?

1. Um im Code auf die verschiedenen Windows-Versionen reagieren zu können

2. Um zu verhindern, dass das Programm NICHT mit neueren bzw. unbekannten Windows-Versionen läuft

...oder was sonst noch?
Ich nutze die Versionsprüfung um sicherzustellen, dass das Betriebssystem, unter dem meine Anwendung ausgeführt wird, mindestens Windows XP ist.
Ich weiß zwar nicht, ob es noch Windows 2000-Nutzer gibt, aber sicher ist sicher.
Auch benutze ich eine programminterne Nutzer-Statstik, welche mit ausführlicher Genehmigung des Nutzers auf einem Server im Internet gespeichert wird.
Da stehen dann Dinge drin wie Betriebssystem, verfügbarer Arbeitsspeicher, Prozessor usw usw.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: GetVersionEx unter Windows 10

  Alt 18. Dez 2014, 22:52
Ich nutze die Versionsprüfung um sicherzustellen, dass das Betriebssystem, unter dem meine Anwendung ausgeführt wird, mindestens Windows XP ist.
Ich weiß zwar nicht, ob es noch Windows 2000-Nutzer gibt, aber sicher ist sicher.
Das kann man ganz leicht sicherstellen, indem man ganz einfach eine API benutzt/einbindet (am Besten statisch ), welche es erst seit Windows 2000 existiert.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
dGeek
(Gast)

n/a Beiträge
 
#13

AW: GetVersionEx unter Windows 10

  Alt 18. Dez 2014, 22:56
Gibt es denn Nachteile GetVersion/GetVersionEx oder die Registry zu nutzen statt eine andere "API" ?
  Mit Zitat antworten Zitat
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
640 Beiträge
 
Delphi 10.1 Berlin Professional
 
#14

AW: GetVersionEx unter Windows 10

  Alt 18. Dez 2014, 23:07
Ich nutze die Versionsprüfung um sicherzustellen, dass das Betriebssystem, unter dem meine Anwendung ausgeführt wird, mindestens Windows XP ist. Ich weiß zwar nicht, ob es noch Windows 2000-Nutzer gibt, aber sicher ist sicher.
+1 Ich könnte mich in den H... beissen, weil ich das früher nicht gemacht habe. Meine alten Programme vor 2002 laufen heute noch auf Windows 8. Da geht nix mit Update verkaufen

[OT] sorry
Auch benutze ich eine programminterne Nutzer-Statstik, welche mit ausführlicher Genehmigung des Nutzers auf einem Server im Internet gespeichert wird. Da stehen dann Dinge drin wie Betriebssystem, verfügbarer Arbeitsspeicher, Prozessor usw usw.
Interessant, wie viele Gemeinsamkeiten man doch manchmal hat. Ich speichere das lokal in der DB und hol mir das ab, wenn ich es brauche. Zur Betriebssystem-Info spiele ich derzeit mit madExcept. Der schafft es bei einer Exception noch einen "perfekten" Screenshot hinzubekommen, was mir mit meiner eigenen Lösung nicht immer 100%-ig gelingt.
[/OT]
Gruss Otto
Wenn du mit Gott reden willst, dann bete.
Wenn du ihn treffen willst, schreib bei Tempo 220 eine SMS

Geändert von mm1256 (18. Dez 2014 um 23:15 Uhr)
  Mit Zitat antworten Zitat
greenmile

Registriert seit: 17. Apr 2003
1.107 Beiträge
 
Delphi 10.3 Rio
 
#15

AW: GetVersionEx unter Windows 10

  Alt 19. Dez 2014, 08:53
+1 Ich könnte mich in den H... beissen, weil ich das früher nicht gemacht habe. Meine alten Programme vor 2002 laufen heute noch auf Windows 8. Da geht nix mit Update verkaufen
Genau darum geht es. Beim Start wird geprüft ob es die neueste Windows Version (zum Zeitpunkt der Entwicklung) ist. Wenn nicht, wird abgebrochen.
  Mit Zitat antworten Zitat
Benutzerbild von Memnarch
Memnarch

Registriert seit: 24. Sep 2010
737 Beiträge
 
#16

AW: GetVersionEx unter Windows 10

  Alt 19. Dez 2014, 09:53
Man müsste also erst prüfen, ob eine der genannten Funktionen in der Kernel32.dll vorhanden ist und ggf. auch nutzen - wenn nicht, dann auf die alten Funktionen ausweichen, die dann ja - da man offenbar auf einem älteren Windows ist - zuverlässig laufen.
Ich denke da an einen Delphi-Wrapper, der einem diese ganze Fragerei wegkapselt.
Nope, es gibt nur IsWindowsVersionOrGreater. Alle anderen Funktionen sind in einer der HeaderDateien des Windows SDK definiert und benutzen diese.

Zur Betriebssystem-Info spiele ich derzeit mit madExcept. Der schafft es bei einer Exception noch einen "perfekten" Screenshot hinzubekommen, was mir mit meiner eigenen Lösung nicht immer 100%-ig gelingt.
Beachte bitte, dass du dich damit auf ganz glitschiges Terrein begibst!

MFG
Memnarch
Da man Trunc nicht auf einen Integer anwenden kann, muss dieser zuerst in eine Float kopiert werden
  Mit Zitat antworten Zitat
Benutzerbild von implementation
implementation

Registriert seit: 5. Mai 2008
940 Beiträge
 
FreePascal / Lazarus
 
#17

AW: GetVersionEx unter Windows 10

  Alt 19. Dez 2014, 12:18
2. Um zu verhindern, dass das Programm NICHT mit neueren bzw. unbekannten Windows-Versionen läuft
Was für ein unsympathisches Verhalten. Ganz ekeliges Antifeature. Wenn man seinen Enduser hasst, sorgt man dafür, dass er das Programm nicht starten kann


Edit: Das ist dann einer der Einsatzzwecke, für die "Wine on Windows" entwickelt wird. Auf den ersten Blick eine völlige WTF-Idee, aber damit könnte man genau solche Programme doch noch zum Arbeiten zwingen.

Geändert von implementation (19. Dez 2014 um 12:20 Uhr)
  Mit Zitat antworten Zitat
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
640 Beiträge
 
Delphi 10.1 Berlin Professional
 
#18

AW: GetVersionEx unter Windows 10

  Alt 19. Dez 2014, 12:38
2. Um zu verhindern, dass das Programm NICHT mit neueren bzw. unbekannten Windows-Versionen läuft
Was für ein unsympathisches Verhalten. Ganz ekeliges Antifeature. Wenn man seinen Enduser hasst, sorgt man dafür, dass er das Programm nicht starten kann
Sorry, da muss ich jetzt was dazu sagen, auch wenn es OT ist. Man muss diesen Sachverhalt im Kontext mit der jeweiligen Anwendung sehen. Es geht hier um ein WWS das demzufolge wichtige Kundendaten speichert, deren Konsistenz niemals in Frage gestellt sein darf. Früher - siehe vorherigen Beitrag - als ich noch keine Versionsüberprüfung durchgeführt habe, ist es immer wieder sporadisch vorgekommen, dass Datenbanken beschädigt waren, und keiner wusste warum.

Darum ist wichtig, dass sowohl Datenbank als auch meine SW 100%-ig auf einem neuen Betriebssystem getestet sind. Man kann das wie du als Antifeature bezeichen, es hat aber auch schon Fälle gegeben, wo Kunden erfolgreich geklagt haben, wenn eine SW ohne Warnung einfach weiter gelaufen ist, und in Folge davon die Daten geschrottet hat.

Ich hab auch andere Apps die keine Windows-Versions-Prüfung durchführen, z.B. ein Tool für Musiker, das Registrationen von Keyboards lädt. Wenn da aufgrund einer Fehlfunktion eine falsche Reg geladen würde, merkt der Anwender das und meldet sich. Aber ein Schaden kann daraus nicht entstehen.

Also bitte nicht Äpfel mit Birnen vergleichen. Jeder hat für seine Vorgehensweisen i.d.R. sehr gute Gründe. Wer seine Vorgehensweise nicht den marktüblichen Gegebenheiten anpasst verschwindet sowieso im Lauf der Zeit von selbst. Der Markt hat hier eine relativ gute Selbstbereinigungsfunktion
Gruss Otto
Wenn du mit Gott reden willst, dann bete.
Wenn du ihn treffen willst, schreib bei Tempo 220 eine SMS
  Mit Zitat antworten Zitat
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
640 Beiträge
 
Delphi 10.1 Berlin Professional
 
#19

AW: GetVersionEx unter Windows 10

  Alt 19. Dez 2014, 12:51
Zur Betriebssystem-Info spiele ich derzeit mit madExcept. Der schafft es bei einer Exception noch einen "perfekten" Screenshot hinzubekommen, was mir mit meiner eigenen Lösung nicht immer 100%-ig gelingt.
Beachte bitte, dass du dich damit auf ganz glitschiges Terrein begibst!
Darf ich bitte mal fragen was du damit meinst?

Es geht hier um die Qualitätssicherung: Feststellung wann und wo genau ein Fehler aufgetreten ist. Ich habe durch intensives Logging meine Fehlerrate (Anzahl von Exceptions die bei allen Kunden pro Monat auftreten) auf unter 2% drücken können, d.h. 98% meiner Kunden sehen einen ganzen Monat lang keine einzige Exception, obwohl sie täglich bis zu 8 Stunden mit der SW arbeiten. Jedem Kunden ist bewusst, dass er mit diesen Screenshots dazu beiträgt, dass das auch so bleibt. Darum ist es (für mich) wichtig, dass die Screenshots auch auf allen OS sauber funktionieren (sind wir also doch noch beim Thema gelandet und nicht total OT). Also was soll daran bitte falsch sein? Sicher enthalten Screenshots manchmal auch persönliche Daten, aber wenn das Vertrauen schon so weit gestört ist, dann macht eine Zusammenarbeit wohl eh keinen Sinn mehr.
Gruss Otto
Wenn du mit Gott reden willst, dann bete.
Wenn du ihn treffen willst, schreib bei Tempo 220 eine SMS
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.882 Beiträge
 
Delphi 12 Athens
 
#20

AW: GetVersionEx unter Windows 10

  Alt 19. Dez 2014, 13:26
Sicher enthalten Screenshots manchmal auch persönliche Daten, aber wenn das Vertrauen schon so weit gestört ist, dann macht eine Zusammenarbeit wohl eh keinen Sinn mehr.
Ich würde einem Benutzer die Screenshots vor dem Senden Vorlegen. Und sie nicht ohne Einwilligung abschicken!
Ich kann mir nicht vorstellen, dass Kunden wie die Bundespolizei oder Arztpraxen das Loggen ihres Bildschirms verantworten möchten!
Teilweise sind die Rechner nicht mal im selben Netz wie der Internet Anschluss!
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 10:19 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