delphi4arab منتديات دلفي للعرب
معرفة اصدار النطام Os version - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي التقنية (https://delphi4arab.net/forum/forumdisplay.php?fid=6)
+--- قسم : دلفي والتعامل مع النظام و الذاكرة (https://delphi4arab.net/forum/forumdisplay.php?fid=20)
+--- الموضوع : معرفة اصدار النطام Os version (/showthread.php?tid=2075)



معرفة اصدار النطام Os version - php3man - 04-06-2010

بسم الله الرحمن الرحيم


السلام عليكم ورحمه الله وبركاته

طريقه بسيطه من خلال ملفات الريجيستري أستخراج Os version

تشتغل علي أكس بي وفيستا وويندوز سفن

في قائمه uses نضمن Registry

ثم في نضيف Button و Edit

نكتب بال Button


PHP كود :
procedure TForm1.Button1Click(Sender: TObject);
Var 
delphi4arab : TRegistry;
begin
delphi4arab 
:= TRegistry.Create;
delphi4arab.RootKey := HKEY_LOCAL_MACHINE;
Try
delphi4arab.OpenKey('\SOFTWARE\Microsoft\Windows NT\CurrentVersion',True) ;
edit1.Text := delphi4arab.ReadString('ProductName') ;
except
end
;
end; 



معرفة اصدار النطام Os version - Rain - 23-08-2010

بارك الله فيك و يوجد اكتر من طريقة لمعرفة النظام .


معرفة اصدار النطام Os version - kachwahed - 23-08-2010

وعليكم السلام ورحمة الله
ينبغي دائما تحرير الذاكرة:
كود :
function GetWindowsName: string; var Reg: TRegistry; begin Reg := TRegistry.Create; try Reg.RootKey := HKEY_LOCAL_MACHINE; if Reg.OpenKey('\SOFTWARE\Microsoft\Windows NT\CurrentVersion', False) then Result := Reg.ReadString('ProductName'); [color=Blue]finally[/color] [color=Blue] Reg.Free;[/color] end; end;
في هذا زيادة تفاصيل:
PHP كود :
function GetWindowsVersion: string;
var
  
VerInfo: TOsversionInfo;
  
PlatformId, VersionNumber: string;
  
Reg: TRegistry;
begin
  VerInfo
.dwOSVersionInfoSize := SizeOf(VerInfo);
  
GetVersionEx(VerInfo);
  
// Detect platform
  
Reg := TRegistry.Create;
  
Reg.RootKey := HKEY_LOCAL_MACHINE;
  case 
VerInfo.dwPlatformId of
    VER_PLATFORM_WIN32s
:
      
begin
        
// Registry (Huh? What registry?)
        
PlatformId := 'Windows 3.1';
      
end;
    
VER_PLATFORM_WIN32_WINDOWS:
      
begin
        
// Registry
        
Reg.OpenKey('\SOFTWARE\Microsoft\Windows\CurrentVersion', False);
        
PlatformId    := Reg.ReadString('ProductName');
        
VersionNumber := Reg.ReadString('VersionNumber');
      
end;
    
VER_PLATFORM_WIN32_NT:
      
begin
        
// Registry
        
Reg.OpenKey('\SOFTWARE\Microsoft\Windows NT\CurrentVersion', False);
        
PlatformId    := Reg.ReadString('ProductName');
        
VersionNumber := Reg.ReadString('CurrentVersion');
      
end;
  
end;
  
Reg.Free;
  
Result := PlatformId + ' (version ' + VersionNumber + ')';
end; 
بالتوفيق.



معرفة اصدار النطام Os version - أبو محمد اللحياني - 23-08-2010

للفائدة هذا الكود ليس من اختراعي ولكن بعد البحث وجدته :

كود :
TWinVersion = (Unknown, Win95, Win98, Win98SE, WinNT, WinME, Win2000, WinXP, WinVista); // --------------------------- function GetWinVersion: TWinVersion; 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;

وينقصه الدلالة على ويندوز 7


معرفة اصدار النطام Os version - kachwahed - 23-08-2010

[COLOR="black"]
إقتباس :وينقصه الدلالة على ويندوز 7
تلك طريقة أخرى تم طرحها سابقا مع إضافة Win7 هنا:
http://www.delphi4arab.net/forum/showthread.php?tid=2264
[/COLOR]