16-05-2015, 12:58 PM
16-05-2015, 01:02 PM
وعليكم السلام
أولا معرفة اصدار النظام، راجع
http://delphi4arab.net/forum/showthread.php?tid=10820
فان كان احدث من XP لا يعمل برنامجك
16-05-2015, 08:39 PM
اشكرك اخي على هذا الرابط المفيد
لكن كل ما احتاجه هو عدم تنفيذ البرنامج عي جهاز لا يحتوي على احد نسخ الويندوز التالية
إذا لم يكن احد هذه النسخ مثيت على الجهاز لايتم تنفيذه
Windows Server 2003 R2 5.2
Windows Server 2003 5.2
Windows XP 64-Bit Edition 5.2
Windows XP 5.1
Windows 2000 5.0
يعني لا يعمل على النسخ
ويندوز7، فيستا، ويندوز8
مع الشرح اين اضع الكود في برنامجي
وبارك الله فيكم
لكن كل ما احتاجه هو عدم تنفيذ البرنامج عي جهاز لا يحتوي على احد نسخ الويندوز التالية
إذا لم يكن احد هذه النسخ مثيت على الجهاز لايتم تنفيذه
Windows Server 2003 R2 5.2
Windows Server 2003 5.2
Windows XP 64-Bit Edition 5.2
Windows XP 5.1
Windows 2000 5.0
يعني لا يعمل على النسخ
ويندوز7، فيستا، ويندوز8
مع الشرح اين اضع الكود في برنامجي
وبارك الله فيكم
16-05-2015, 09:14 PM
كل نظام له رقم محدد يكون عادة تصاعدي.من نطام الاقدم الي الاحدث
كل ما عليك انك تحصل علي رقم اصدارة نظام و تقارنه مع رقم اخر نسخة يدعمها برنامج
ادا كان اكبر اغلق برنامج او اطهر رسالة تنبيه او.....
ادا كان اصغر شغل برنامج عادي
يمكنك ان تصعها في حدث oncreate مثلاا للفورم رءيسي
كل ما عليك انك تحصل علي رقم اصدارة نظام و تقارنه مع رقم اخر نسخة يدعمها برنامج
ادا كان اكبر اغلق برنامج او اطهر رسالة تنبيه او.....
ادا كان اصغر شغل برنامج عادي
يمكنك ان تصعها في حدث oncreate مثلاا للفورم رءيسي
16-05-2015, 09:48 PM
كود :
var
dwVersion: DWORD;
dwMajorVersion: DWORD;
dwMinorVersion: DWORD;
begin
dwVersion := GetVersion;
dwMajorVersion := LoByte(LOWORD(dwVersion));
dwMinorVersion := HiByte(LOWORD(dwVersion));
if not ((dwMajorVersion = 5) and ((dwMinorVersion = 0) or (dwMinorVersion = 1) or (dwMinorVersion = 2))) then
ExitProcess(0);
end;يمكنك وضع الكود قبل إنشاء الفورم.
17-05-2015, 07:19 AM
بارك الله فيكم