![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как определить обычный это компьютер или сервер?
Ленин © (2005-05-24 15:49:00)Собственно из названия темы все понятно.
Digitman (2005-05-24 16:30:00) [41]Удалено модератором
Примечание: Offtopic
Игорь Шевченко (2005-05-24 16:27:00) [42]
> Спасибо. Хотя я надеялся, что все-таки это возможно.
GetVersionEx
type
TMyOsVersionInfoExA = packed record
ov : TOsVersionInfoA;
wServicePackMajor : Word;
wServicePackMinor : Word;
{
wSuiteMask
A set of bit flags that identify the product suites available on the system. This member can be a combination of the following values. Value Meaning
VER_SUITE_BACKOFFICE Microsoft BackOffice components are installed.
VER_SUITE_BLADE Windows .NET Web Server is installed.
VER_SUITE_DATACENTER Windows 2000 or Windows .NET Datacenter Server is installed.
VER_SUITE_ENTERPRISE Windows 2000 Advanced Server or Windows .NET Enterprise Server is installed.
VER_SUITE_PERSONAL Windows XP Home Edition is installed.
VER_SUITE_SMALLBUSINESS Microsoft Small Business Server is installed.
VER_SUITE_SMALLBUSINESS_RESTRICTED Microsoft Small Business Server is installed with the restrictive client license in force.
VER_SUITE_TERMINAL Terminal Services is installed.
}
wSuiteMask : Word;
{wProductType
Indicates additional information about the system. This member can be one of the following values. Value Meaning
VER_NT_WORKSTATION The system is running Windows NT 4.0 Workstation, Windows 2000 Professional, Windows XP Home Edition, or Windows XP Professional.
VER_NT_DOMAIN_CONTROLLER The system is a domain controller.
VER_NT_SERVER The system is a server.
}
wProductType : Byte;
wReserved : Byte;
end;
const
{ wProductType possible values }
VER_NT_WORKSTATION = 1;
VER_NT_DOMAIN_CONTROLLER = 2;
VER_NT_SERVER = 3;
{ wSuiteMask possible bits values }
VER_SUITE_SMALLBUSINESS = 1;
VER_SUITE_ENTERPRISE = 2;
VER_SUITE_BACKOFFICE = 4;
VER_SUITE_COMMUNICATIONS = 8;
VER_SUITE_TERMINAL = $00000010;
VER_SUITE_SMALLBUSINESS_RESTRICTED = $00000020;
VER_SUITE_EMBEDDEDNT = $00000040;
VER_SUITE_DATACENTER = $00000080;
VER_SUITE_SINGLEUSERTS = $00000100;
VER_SUITE_PERSONAL = $00000200;
VER_SUITE_BLADE = $00000400;
...
var
StaticVersionInfo: TMyOsVersionInfoExA;
function MyGetVersionEx: Boolean;
begin
FillChar(StaticVersionInfo, Sizeof(StaticVersionInfo), 0);
StaticVersionInfo.ov.dwOSVersionInfoSize := Sizeof(StaticVersionInfo);
Result := GetVersionExA(StaticVersionInfo.ov);
end;
Anatoly Podgoretsky (2005-05-24 16:26:00) [43]Ленин © (24.05.05 16:18) [8]
Возможно если дашь ответ на [3]
Ленин (2005-05-24 16:18:00) [44]> Anatoly Podgoretsky ©
Спасибо. Хотя я надеялся, что все-таки это возможно.
Anatoly Podgoretsky (2005-05-24 16:07:00) [45]Кроме как узнать версию ОС возможности нет, поскольку в сети Windows Network каждый компьютер является сервером.
Digitman (2005-05-24 16:00:00) [46]Удалено модератором
Digitman (2005-05-24 15:57:00) [47]
> что такое сервер?
> Ленин © (24.05.05 15:49)
> Собственно из названия
угу ..Ленин = электрохренизация всей страны + захват почты-телеграфа-телефона в качестве СЕРВЕРОВ ...
Ленин (2005-05-24 15:56:00) [48]GetVersionEx выдает инфу об операционной системе.
А мне нужно знать, является ли комп сервером в сети или нет, в независимости от того, какая ОС на нем установлена.
DVM (2005-05-24 15:54:00) [49]что такое сервер?
Игорь Шевченко (2005-05-24 15:51:00) [50]GetVersionEx
Digitman (2005-05-24 15:51:00) [51]никак.