Windows Version
- Hroudtwolf
- Beiträge: 1416
- Registriert: 30.10.2004 23:33
- Kontaktdaten:
Windows Version
Hallo Forum,
Weiss jemand wie man die Windowsversion per API auslesen kann ?
Damit ich in mein Programm eine Versionskontrolle machen kann.
z.B.
If WINDOWVERSION_()<>"XP":End:EndIF
			
			
									
									
						Weiss jemand wie man die Windowsversion per API auslesen kann ?
Damit ich in mein Programm eine Versionskontrolle machen kann.
z.B.
If WINDOWVERSION_()<>"XP":End:EndIF
Ich frag mich zwar warum es WinAPI sein muss aber egal:
			
			
													Code: Alles auswählen
OSInfo.OSVERSIONINFO
OSInfo\dwOSVersionInfoSize = SizeOf(OSVERSIONINFO)
If GetVersionEx_(@OSInfo)
  If OSInfo\dwPlatformId = #VER_PLATFORM_WIN32s
    Debug "Platform: Win32s or Windows 3.1"
  ElseIf OSInfo\dwPlatformId = #VER_PLATFORM_WIN32_WINDOWS
    Debug "Platform: Windows 95, Windows 98, Or Windows Me"
  ElseIf OSInfo\dwPlatformId = #VER_PLATFORM_WIN32_NT
    Debug "Platform: Windows NT, Windows 2000, Windows XP, or Windows Server 2003 family"
  EndIf
  
  If OSInfo\dwMajorVersion = 3 And OSInfo\dwMinorVersion = 0 
    Debug "Windows 95"
  ElseIf OSInfo\dwMajorVersion = 4 And OSInfo\dwMinorVersion = 10
    Debug "Windows 98"
  ElseIf OSInfo\dwMajorVersion = 4 And OSInfo\dwMinorVersion = 90
    Debug "Windows ME"
  ElseIf OSInfo\dwMajorVersion = 3 And OSInfo\dwMinorVersion = 51
    Debug "Windows NT 3.51"
  ElseIf OSInfo\dwMajorVersion = 4 And OSInfo\dwMinorVersion = 0
    Debug "Windows NT 4.0"
  ElseIf OSInfo\dwMajorVersion = 5 And OSInfo\dwMinorVersion = 0
    Debug "Windows 2000"
  ElseIf OSInfo\dwMajorVersion = 5 And OSInfo\dwMinorVersion = 1
    Debug "Windows XP"
  ElseIf OSInfo\dwMajorVersion = 5 And OSInfo\dwMinorVersion = 2
    Debug "Windows 2003 Server family"
  EndIf
  If OSInfo\szCSDVersion
    Debug PeekS(@OSInfo\szCSDVersion)
  EndIf
  Debug "Build: "+Str(OSInfo\dwBuildNumber)
EndIf
					Zuletzt geändert von Deeem2031 am 25.08.2005 14:53, insgesamt 1-mal geändert.
									
			
									
[url=irc://irc.freenode.org/##purebasic.de]irc://irc.freenode.org/##purebasic.de[/url]
- Hroudtwolf
- Beiträge: 1416
- Registriert: 30.10.2004 23:33
- Kontaktdaten:
- 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
Er meint mit PB, z.B:
			
			
									
									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 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.

						Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

- Hroudtwolf
- Beiträge: 1416
- Registriert: 30.10.2004 23:33
- Kontaktdaten:
Urg
Mensch das ist mir jetzt peinlich   
 
Ich hab jetzt erst 4 Wochen die PB3.92. Vorher hatte ich die TOPOS-Version.
Das gabs dat nich.
Irgendwie hab ich diesen Befehl immer wieder in der Hilfe übersehen.
Aber...Vielen Dank.
			
			
									
									
						 
 Ich hab jetzt erst 4 Wochen die PB3.92. Vorher hatte ich die TOPOS-Version.
Das gabs dat nich.
Irgendwie hab ich diesen Befehl immer wieder in der Hilfe übersehen.
Aber...Vielen Dank.
- 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
Dieser Befehl existiert erst seit PB 3.40  
			
			
									
									
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.

						Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

- 
				DarkDragon
- Beiträge: 6291
- Registriert: 29.08.2004 08:37
- Computerausstattung: Hoffentlich bald keine mehr
- Kontaktdaten:
Schau auch mal bei Compilerdirektiven, ist manchmal auch sehr nützlich  .
 .
Dann wird der Linux code nur dann mit im Programm sein, wenn du es unter Linux compillierst 
			
			
									
									 .
 .Code: Alles auswählen
CompilerIf #PB_Compiler_OS = #PB_OS_Linux
  ; etwas Linux spezifischer Programmcode..
CompilerEndIf
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
						



