WWW.ИСХОДНИКИ.РУ cpp.sources.ru
java.sources.ru web.sources.ru soft.sources.ru
jdbc.sources.ru asp.sources.ru api.sources.ru

  Форум на исходниках
  Visual basic
  Raspoznovaniye

СПРОСИТЬ  ОТВЕТИТЬ
профайл | регистрация | faq

Автор Тема:   Raspoznovaniye
aker13 опубликован 07-02-2002 12:07 MSK   Click Here to See the Profile for aker13   Click Here to Email aker13  
kak uznat versiyu OS? esli IMENNO 2000 to msgbox "2000" esli drugaya to drugoy msgbox

mne nujno chtobi imenno 2000 OS bila

cr опубликован 07-02-2002 15:08 MSK     Click Here to See the Profile for cr  Click Here to Email cr     
Option Explicit
'TO aker13
'
'на форму:
'листбок(list1)
'sysinfo control(SysInfo1)
'(чтобы его добавить нужно: правой кнопкой на панели элемен -
'тов, выбрать КОМПОНЕНТЫ и поставить галку возле Microsoft SysInfo Control 6.0)
'КОД:
Private Sub Form_Load()
Me.Caption = "Operating System Info"
Select Case SysInfo1.OSPlatform
Case 0
list1.AddItem "OS Platform = Unknown 32-Bit Windows"
Case 1
list1.AddItem "OS Platform = Windows 95"
Case 2
list1.AddItem "OS Platform = Windows NT"
End Select
list1.AddItem "OSVersion = " & SysInfo1.OSVersion
list1.AddItem "OSBuild = " & SysInfo1.OSBuild
End Sub
Creedence Sergey опубликован 07-02-2002 21:43 MSK     Click Here to See the Profile for Creedence Sergey  Click Here to Email Creedence Sergey     
Я считаю, что вместо всяких лишних OCXов, если возможно, лучше использовать что-то другое, т.к. на работу с OCX (через IDispath) тратится дофига времени (в книге по C++ вычитал...), поэтому лучше воспользоваться функцией GetVersionEx. Пример кода:
Public Type OSVERSIONINFO
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128
End Type
Private Const VER_PLATFORM_WIN32_NT = 2
Public Const VER_PLATFORM_WIN32_WINDOWS = 1
Public Declare Function GetVersionEx Lib "Kernel32.dll" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long

Private Function IsWinNT() As Boolean
Dim Ver As OSVERSIONINFO
Ver.dwOSVersionInfoSize = Len(Ver)
Call GetVersionEx(Ver)
IsWinNT = (Ver.dwPlatformId = VER_PLATFORM_WIN32_NT)
End Function
Это код прямо из моего модулька проги, которая не работает под Win2000 (напрямую обращается к портам).
А про определение конкретной версии Windows - надо проверить поля dwMajorVersion, dwMinorVersion, dwBuildNumber, а для ServicePack (NT/2k) или "Edition" (Win98) - полем szCSDVersion. Например, для Win98SE версия будет: 4.10.2222 A. и т.д.

Да, наспамил, конечно много, но ведь пытался помочь...

aker13 опубликован 08-02-2002 08:11 MSK     Click Here to See the Profile for aker13  Click Here to Email aker13     
nu spasibo druzya, viruchili.

СПРОСИТЬ  ОТВЕТИТЬ
Перейти:


E-mail | WWW.ИСХОДНИКИ.RU

Powered by: Ultimate Bulletin Board, Freeware Version 5.10a
Purchase our Licensed Version- which adds many more features!
© Infopop Corporation (formerly Madrona Park, Inc.), 1998 - 2000.