Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.07.04;
Скачать: [xml.tar.bz2];

Вниз

Как узнать под какой операционкой запущено приложение?   Найти похожие ветки 

 
DiGiTaL   (2002-05-07 16:02) [0]

Как узнать под какой операционкой запущено приложение?


 
Виктор Щербаков   (2002-05-07 16:04) [1]

GetVersionEx


 
troits   (2002-05-07 16:12) [2]

Можно посмотреть значение переменной

Win32Platform из SysUtils.pas

VER_PLATFORM_WIN32s System is Win32s.
VER_PLATFORM_WIN32_WINDOWS System is Windows 95.
VER_PLATFORM_WIN32_NT System is Windows NT.


 
DiGiTaL   (2002-05-07 21:58) [3]

Ой запутался я что-то.
Win32Platform возвращает Integer. Как его интерпретировать - неясно. В хелпе написано "смотри в windows.pas". там я ничо не нашел.


 
Song   (2002-05-07 22:00) [4]

В Windows.pas прописаны эти константы.


 
DiGiTaL   (2002-05-08 00:02) [5]

Так не нашел я там. :(
Кстати, мою прогу не смотрел?


 
BAHO   (2002-05-08 00:24) [6]


type
TOperatingSystem=(Windows95,Windows98,
WindowsME,WindowsNT,Windows2k,WindowsXP);

TOsInf = record
WinDir:string[255];
SysDir:string[255];
OS:TOperatingSystem;

var
OS:TOsInf;

implementation

procedure GetSysInfo(var OS:TOsInf);
var
ptr:PChar;
OSV:TOSVersionInfo;
procedure ClearMem(var X; Size: Integer);
asm
push edi
mov edi, eax
xor eax, eax
mov ecx, edx
sar ecx, 2
rep stosd
mov ecx, edx
and ecx, 3
rep stosb
pop edi
end;
begin
ptr:=windows.GetEnvironmentStrings;
windows.GetWindowsDirectory(ptr,MAX_PATH);
os.WinDir:=ptr;
windows.GetSystemDirectory(ptr,MAX_PATH);
os.SysDir:=ptr;
ClearMem(OSV,SizeOf(OSV));
OSv.dwOSVersionInfoSize:=SizeOf(OSV);
GetVersionEx(OSV);
case OSV.dwPlatformId
of
VER_PLATFORM_WIN32_WINDOWS:
begin
if OSV.dwMajorVersion=4
then
begin
if OSV.dwMinorVersion>=0.0
then OS.OS:=Windows95;
if OSV.dwMinorVersion>=10
then OS.OS:=Windows98;
if OSV.dwMinorVersion>=90
then OS.OS:=WindowsME;
end;
end;
VER_PLATFORM_WIN32_NT:
begin
if OSV.dwMinorVersion<=4
then OS.OS:=WindowsNT;
if OSV.dwMajorVersion=5
then
begin
if OSV.dwMinorVersion>=0.0
then OS.OS:=Windows2k;
if OSV.dwMinorVersion>=1
then OS.OS:=WindowsXP;
end;
end;
end;
end;

procedure TCCS.FormCreate(Sender: TObject);
begin
GetSysInfo(OS);
end;


В переменной OS
после запуска проги будет инфа о версии Windows
и месторасположение системных папок...


 
BAHO   (2002-05-08 00:25) [7]

да там после обьявления типов я забыл End;


 
DiGiTaL   (2002-05-08 03:10) [8]

Спасибо!



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2002.07.04;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.005 c
1-9871
Ivan Voronov
2002-06-21 18:53
2002.07.04
Иконки в CheckListBox


1-9888
DeepProg
2002-06-17 18:26
2002.07.04
Find and Remember


14-10003
BJValentine
2002-06-04 17:17
2002.07.04
MS Excel 97


3-9766
Trixter
2002-06-13 10:38
2002.07.04
Капризный Halcyon


7-10040
Лёха
2002-04-08 01:31
2002.07.04
Для paul_shmakov





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский