![]() |
|
معرفة النظام المنصب في الحاسوب - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي التقنية (https://delphi4arab.net/forum/forumdisplay.php?fid=6) +--- قسم : دلفي والتعامل مع النظام و الذاكرة (https://delphi4arab.net/forum/forumdisplay.php?fid=20) +--- الموضوع : معرفة النظام المنصب في الحاسوب (/showthread.php?tid=1461) |
معرفة النظام المنصب في الحاسوب - MjIrIm - 02-01-2010 في البداية السلام عليكم
دالة لمن يرد معرفة النظام المنصب عنده كود : function GetWinVersion: String;
var
osVerInfo: TOSVersionInfo;
majorVersion, minorVersion: Integer;
begin
Result := 'Unknown';
osVerInfo.dwOSVersionInfoSize := SizeOf(TOSVersionInfo) ;
if GetVersionEx(osVerInfo) then
begin
minorVersion := osVerInfo.dwMinorVersion;
majorVersion := osVerInfo.dwMajorVersion;
case osVerInfo.dwPlatformId of
VER_PLATFORM_WIN32_NT:
begin
if majorVersion <= 4 then
Result := 'WinNT'
else if (majorVersion = 5) and (minorVersion = 0) then
Result := 'Win2000'
else if (majorVersion = 5) and (minorVersion = 1) then
Result := 'WinXP'
else if (majorVersion = 6) then
Result := 'WinVista';
end;
VER_PLATFORM_WIN32_WINDOWS:
begin
if (majorVersion = 4) and (minorVersion = 0) then
Result := 'Win95'
else if (majorVersion = 4) and (minorVersion = 10) then
begin
if osVerInfo.szCSDVersion[1] = 'A' then
Result := 'Win98SE'
else
Result := 'Win98';
end
else if (majorVersion = 4) and (minorVersion = 90) then
Result := 'WinME'
else
Result := 'Unknown';
end;
end;
end;
end;بالتوفيق للجميع
و السلام. معرفة النظام المنصب في الحاسوب - kachwahed - 02-01-2010 وعليكم السلام ورحمة الله وبركاته بارك الله لك أخي MjIrIm. هذا التابع مفيد جدا لكنه يحتاج Update لحالة WindowsSeven يمكن مبدئيا يمكن استخدام المفتاح: كود : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersionمعرفة النظام المنصب في الحاسوب - MjIrIm - 02-01-2010 نعم لاحظت ذلك منذ قبل لكني وضعتها للافادة لمن يريد المحاولة و البحث في الحقيقة عندي مجموعة من المواضيع و المشاركات كنت سابقا مبرمج أن توضع منذ 3 أشهر تقريبا لكن لكثرة المشاغل لم أستطع, أحاول الان متابعة ما فاتني من مواضيع هامة و المشاركة ولو بالقليل بارك الله فيك أخي kachwahed و السلام. معرفة النظام المنصب في الحاسوب - kachwahed - 02-01-2010 المصدر الرسمي من عند Microsoft لدالة تحديد النظام مكتوبة بـ #C كود : http://msdn.microsoft.com/en-us/library/ms724429%28VS.85%29.aspxأيضا يمكن استخدام الوحدة JclSysInfo من المكتبة العملاقة JEDI Code Library شكرا كثيرا أخي الكريم. معرفة النظام المنصب في الحاسوب - Delphiero - 23-05-2011 قمت بتجربة جميع الاكواد السابقه تتطلب الفتح بالادمن هذا الكود نجح معي كود : function getwinversion: String;
begin
result:='unbekannte version';
case win32platform of
1:// 9x-reihe
if win32majorversion=4 then begin
case win32minorversion of
0: Result:='windows 95';
10: Result:='windows 98';
90: Result:='windows me';
end;
end;
2: // nt-reihe
case win32majorversion of
3:if win32minorversion=51 then
result:='windows nt 3.51';
4:if win32minorversion=0 then
result:='windows nt 4';
5:case win32minorversion of
0: Result:='windows 2000';
1: Result:='windows xp';
2: Result:='windows .net server';
end;
6:case win32minorversion of
0: Result := 'windows vista';
1: Result := 'windows 7';
end;
end;
end;
//win32csdversion enthält informationen zu servicepacks
if win32csdversion<>'' then
result:=result +' '+ win32csdversion;
end;
procedure tform1.button1click(sender: Tobject);
begin
label1.caption:= getwinversion;
end;معرفة النظام المنصب في الحاسوب - kachwahed - 23-05-2011 ينصب في بيئة Windows فقط! OK، لكن أي إصدار Windows؟ 3.11، 95، 98، NT2003، 2000NT، Win7، WinXP... شيء آخر هذا لمعرفة على أي نظام يعمل برنامجك وليس على أي نظام تم تنصيب دلفي فيه! للعلم، يمكن تشغيل معظم برامج Winodws على توزيعات أخرى في وضع محاكاة (مثال Wine الشهير في Linux) ويمكن العكس أيضا... معرفة النظام المنصب في الحاسوب - Agmcz - 17-04-2014 إضافة طفيفة على الوحدة التي وضعها أخي kachwahed في المشاركة رقم 4 لدعم Windows 8 مبدئيا حتى إشعار اخر من msdn تم دعم النسخ التالية Pro, Enterprise تم تجريب على Windows 8 Pro معرفة النظام المنصب في الحاسوب - Agmcz - 03-09-2014 إضافة دعم Windows 8.1 حتى إشعار آخر من msdn معرفة النظام المنصب في الحاسوب - Delphi4Us - 16-09-2014 كود : var
hDWMDLL: Cardinal = 0;
DwmIsCompositionEnabled: function(pfEnabled: Pbool): HRESULT; stdcall;
function IsWindowsAero: Boolean;
var
R: longbool;
begin
Result := false;
if hDWMDLL <> 0 then
begin
if @DwmIsCompositionEnabled <> nil then
begin
DwmIsCompositionEnabled(@R);
Result := R;
end;
end;
end;معرفة النظام المنصب في الحاسوب - Delphi4Us - 16-09-2014 كود : procedure GetWindowsVersion(var Major, Minor: Integer);
var
Ver : Longint;
begin
Ver := GetVersion;
Major := LoByte(LoWord(Ver));
Minor := HiByte(LoWord(Ver));
end;
function IsW7: Boolean;
var
Major, Minor : Integer;
begin
GetWindowsVersion(major, minor);
Result := (major = 6) and (minor = 1);
end;
function Is9XOS: Boolean;
var
Major, Minor : Integer;
begin
GetWindowsVersion(major, minor);
Result := (major < 5);
end;
function IsW8: Boolean;
var
Major, Minor : Integer;
begin
GetWindowsVersion(major, minor);
Result := ((major = 6) and (minor = 2)) or (major > 6);
end;
function IsVistaOs: Boolean;
var
Major, Minor : Integer;
begin
GetWindowsVersion(major, minor);
Result := (major >= 6);
end;
function CheckWXP: Boolean;
var
Major, Minor : Integer;
begin
GetWindowsVersion(major, minor);
Result := (major > 5) or ((major = 5) and (minor = 1));
end;
function CheckW2kWXP: Boolean;
var
Major, Minor : Integer;
begin
GetWindowsVersion(major, minor);
Result := (major > 5) or ((major = 5) and ((minor = 0) or (minor = 1) or (minor = 2)));
end; |