OSVersion() und das was rauskommt...

In dieser Linux-Ecke dürfen nur Themen rund um Linux geschrieben werden.
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
PBFetischist
Beiträge: 55
Registriert: 26.10.2004 19:42

OSVersion() und das was rauskommt...

Beitrag von PBFetischist »

Hallo zusammen,

wenn ich unter Linux folgendes ausführe:

Debug OSVersion()

erhalte ich keine Fehlermeldung, sondern tatsächlich ein Ergebnis, das ist gut.

Unter Ubuntu 8.10 ist es bei mir der Wert 1200.

Gibt es unter Linux ähnliche Konstanten wie unter Windows, mit denen ich den Wert in Klartext referenzieren kann ?
PB 4.30 auf Windows Vista / XP SP2 und Linux
Benutzeravatar
bembulak
Beiträge: 228
Registriert: 13.12.2005 16:34
Wohnort: Österreich

Beitrag von bembulak »

Schon mal in die Hilfe gekuckt?
OSVersion() gibt eine Zahl zurückt, die einer Konstante entspricht.

Beispielcode aus Hilfe:

Code: Alles auswählen

Select OSVersion()
    Case #PB_OS_Windows_98
      MessageRequester("Info", "Windows 98")

    Case #PB_OS_Windows_2000
      MessageRequester("Info", "Windows 2000")
  
    Case #PB_OS_Windows_XP
      MessageRequester("Info", "Windows XP")

    Default
      MessageRequester("Info", "Nicht unterstützte Windows-Version")    
  EndSelect
Das reicht doch, oder? ;)
PBFetischist
Beiträge: 55
Registriert: 26.10.2004 19:42

Beitrag von PBFetischist »

Danke für den Tipp, aber..

.. deine Hilfe ist die Windows Hilfe.

Ich frage aber, ob es so etwas auch unter Linux gibt und da steht in der Hilfe nämlich nichts dergleichen.

Trotzdem Danke.
PB 4.30 auf Windows Vista / XP SP2 und Linux
Benutzeravatar
bembulak
Beiträge: 228
Registriert: 13.12.2005 16:34
Wohnort: Österreich

Beitrag von bembulak »

Ich bin selber Linux-Nutzer und die Hilfe ist immer gleich, egal für welches System.
Der Code da oben + Seite der Hilfe sollte dir lediglich zeigen, wie's geht. Programmieren solltest du es eigentlich selber.
Ist ja nicht zuviel verlangt, dass man die Konstanten mal durchsieht und in der IDE ein wenig rumspielt.
Linux ist halt mal ein Trial'n'Erro OS.
HILFE hat geschrieben:Syntax

Ergebnis = OSVersion()
Beschreibung

Ermittelt die Version des Betriebssystems (OS - "Operating System"), auf welchem das Programm gestartet wurde. Dies kann nützlich sein, um abhängig vom laufenden Betriebssystem einige Features automatisch ein- oder auszuschalten.

'Ergebnis' kann einer der folgenden Werte sein:
#PB_OS_Windows_NT3_51
#PB_OS_Windows_95
#PB_OS_Windows_NT_4
#PB_OS_Windows_98
#PB_OS_Windows_ME
#PB_OS_Windows_2000
#PB_OS_Windows_XP
#PB_OS_Windows_Server_2003
#PB_OS_Windows_Vista
#PB_OS_Windows_Server_2008
#PB_OS_Windows_Future ; neue Windows Version (nicht existent, als das Programm geschrieben wurde)
ich selbst hat geschrieben: Ok, ich gebe zu, hier könnte die Hilfe vollständiger sein.
Beispiel:
Select OSVersion()
Case #PB_OS_Windows_98
MessageRequester("Info", "Windows 98")

Case #PB_OS_Windows_2000
MessageRequester("Info", "Windows 2000")

Case #PB_OS_Windows_XP
MessageRequester("Info", "Windows XP")

Default
MessageRequester("Info", "Nicht unterstützte Windows-Version")
EndSelect

Beachten Sie, dass die Konstanten-Werte nach dem Zeitpunkt der Veröffentlichung jeder Version geordnet sind, daher können Tests wie der folgende verwendet werden, um alle Versionen älter oder neuer als die angegebene Version zu überprüfen:
If OsVersion() < #PB_OS_Windows_2000
;
; Alle Versionen älter als Windows 2000
;
EndIf

Unterstützte OS

Alle
Bild

Bild
Little John

Beitrag von Little John »

bembulak hat geschrieben:Ist ja nicht zuviel verlangt, dass man die Konstanten mal durchsieht und in der IDE ein wenig rumspielt.
Ob das zuviel verlangt ist oder nicht ist relativ, und hängt von verschiedenen Umständen ab. Auf jeden Fall ist es alles andere als wünschenswert, denn solche Informationen gehören zweifellos in die Hilfe (wie Du ja auch selbst hier angemerkt hast).

Gruß, Little John
PBFetischist
Beiträge: 55
Registriert: 26.10.2004 19:42

Beitrag von PBFetischist »

Was ist denn hier eigentlich los ?

Bei den Konstanten für OSVersion() weichen die Hilfen für Linux und Windows voneinander ab. Ich benutze seit sechs Jahren PB und wollte jetzt lediglich wissen ob jemand die Konstanten in Linux kennt.

Wenn du es weist, ist es doch gut und meine Frage beantwortet. Ich danke dir dafür und deshalb muss ich doch nicht gleich belehrt werden, wie man die PB IDE, deiner Meinung nach richtig verwendet.

Vielen Dank noch einmal. Mein Problem ist gelöst.
PB 4.30 auf Windows Vista / XP SP2 und Linux
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

In der IDE, im Strukturverzeichnis unter Konstanten P findet man alle
Konstanten und ihre Werte :wink:

Strukturverzeichnis ist also nicht nur für Strukturen, nein auch für:
Interfaces und Konstanten und ist autom. vollständig, was die Hilfe schlecht
kann.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Little John

Beitrag von Little John »

Da bin ich Deiner Ansicht, Thomas. Und insbesondere
ts-soft hat geschrieben:ist autom. vollständig, was die Hilfe schlechtkann.
ist IMHO ein wichtiges Argument.

Dieser Argumentation folgend, sollten dann jedoch in der Hilfe gar keine Konstanten für OSVersion() aufgeführt sein. Dann sollte an der Stelle in der Hilfe etwas stehen wie
Siehe im sog. Strukturverzeichnis die Konstanten, die mit #PB_OS_ anfangen
.

Im Moment ist es ja so, dass in der Hilfe (deutsche Version, PB 4.30, Windows) steht:
'Ergebnis' kann einer der folgenden Werte sein:
#PB_OS_Windows_NT3_51
#PB_OS_Windows_95
#PB_OS_Windows_NT_4
#PB_OS_Windows_98
#PB_OS_Windows_ME
#PB_OS_Windows_2000
#PB_OS_Windows_XP
#PB_OS_Windows_Server_2003
#PB_OS_Windows_Vista
#PB_OS_Windows_Server_2008
#PB_OS_Windows_Future
Da fehlt ungefähr die Hälfte!! Aber beim Lesen kommt doch keiner auf die Idee dass da was fehlt, und dass es demnach sinnvoll sein kann noch mal im "Strukturverzeichnis" nachzusehen.
Also: Entweder an der Stelle alle Werte reinschreiben, oder gar keine mit einem Hinweis auf das "Strukturverzeichnis".

Gruß, Little John
PBFetischist
Beiträge: 55
Registriert: 26.10.2004 19:42

Beitrag von PBFetischist »

@Little John

Dem stimme ich zu, ich hatte eine ähnliche Diskussion schon einmal.

Trotzdem ist es gut, dass ich bisher die Unzulänglichkeiten der Hilfe immer durch die PB Foren kompensieren konnte.
PB 4.30 auf Windows Vista / XP SP2 und Linux
Antworten