-
الإعلانات
-
تسجيل عضوية جديدة في المنتدى 01/31/2016
السلام عليكم ورحمة الله وبركاته عزيزي العضو الجديد : حاليا رسالة الإيميل لتأكيد صحة إيميلكم تذهب للبريد العشوائي ( جاري حل المشكلة ) فإذا لم تجد رسالة التحقق من إيميلكم في صندوق الوارد لديكم إتجه للبريد العشوائي ( JUNK) وقم بتفعيل إشتراككم من هناك
-
-
عدد المشاركات
35 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
اقدم لكم اليوم سلسله دروس عن برمجه انظمه التشغيل باستخدام Assembly 16-bit السلسله مقسمه الى عده اجزاء و الى الان قمت بعمل الجزء الاول و الثانى فقط و لكن ان شاء الله سأقوم بعمل المزيد حتى ننتهى من المشروع المقرر تصميمه و هو نظام تشغيل بسيط شبيه ب MS-DOS ولكن بالتأكيد ليس بقوته الجزء الأول - مقدمه الجزء الثانى - البوت لودر ان شاء الله ساقوم بأضافه كل جديد هنا لكى تعم الفائده, شكرا
-
عندما أضغط زر البور في الجهاز ماهو اسم الملف الذي يقوم البايوس بقرائته وهل من الممكن أن يكون هذا الملف ملفC لو فكر أحدنا أن ينشيء نظام؟
MidooX10 رد على faisal_01's موضوع في لغة C و ++C
فهمت قصدك, عن التعامل معvga ف ان استطعت تنفيذ هذا البرنامج فى بدايه الاقلاع, اى جعلته يبدأ من العنوان السابق و قمت بامره على تنفيذ كود سي بداخله هذا الكود string vgamem = (string) 0xb8000; vgamem[0]=/*hex character value*/ vgamem[1]=/*hex color code*/ سيقوم هذا الكود بالتواصل مباشره مع ذاكر الفديو و طباعه الحرف المراد بالتنسيق المراد و بالنسبه للكيبورد ف الموضوع اكثر تعقيدا و لكن انوى ان شاء الله التحدث عنه عنما قريب مثال بالامكان نسخه على cd و عمل boot منه و بالامكان تعديل الداله core الموجوده فى الملف kernel.c لتغير وظيفه البرنامج و جعله يقوم باى شئ اخر مثل عمليه حسابيه بسيطه -
عندما أضغط زر البور في الجهاز ماهو اسم الملف الذي يقوم البايوس بقرائته وهل من الممكن أن يكون هذا الملف ملفC لو فكر أحدنا أن ينشيء نظام؟
MidooX10 رد على faisal_01's موضوع في لغة C و ++C
على حسب علمى المحدود فى هذا المجال فلا يوجد اسم معين للملف الذى يقرأ..فى الواقع لا يوجد ملف معين يقرأ (مالم تقصد اسم الkernel فالkernel يمكن ان تسميها اى اسم, لا يجب ان يتضمن كلمه kernel) فقط تتم قراءه اول sector فى الmemory و يتم كتابه assembly instructions تجل الجهاز يقوم بعمل boot من هناك و من ثم يحدث ما يحدث و بالنسبه لسؤال ان يكون هذا الملف (ساجيب باعتبار انك تقصد الملف الذى يقوم بكتابه البيانات فى اولsector) ملف c فعلى حسب علمى لا, هذا الملف يكون ملف اسمبلى لكن يمكن من خلاله تحميل و تشغيل داله خارجيه مبرمجه ب C بعد ان تقوم بعمل بتمرير hlt instruction لمنع ملف الاسمبلى من الاستمرار فى العمل و تكليف كود C بباقى المهام address هذا السكتور او التراك هو 0x1BADB002..من هناك يبدأ كل شئ هذا على حسب علمى, و افضل ان تنتظر اجابه احد اساتذتنا ف من الممكن ان اكون مخطأ بالكامل -
MidooX10 أعطى سمعة إيجابية لــ رد في موضوع: مقدمة عن بناء نظم التشغيل
-
كيف يمكننى التعامل مع ال processes فى c++ باسخدام tlhelp32 ؟ ارجو من الاخوه توفير اى رابط يشرح هذا الامر ,, شكرا
-
بسم الله الرحمن الرحيم السؤال واضح من عنوان الموضوع .. ما علاقه المكتبات الرسوميه الخاصه ب c++ ب اللغه نفسها ؟ طبعا لا اريد هذه الاجابه "تقوم بصنع برامج ذات واجه رسوميه حيث ان c++ لا تدعم هذا" ف انا اعلم هذا جيدا اقصد كيف ادمج بين الاثنين !! عند استخدام VCL وجدت components جاهزه لل sockets و هناك sockets ايضا فى c++ القياسيه ف ما علاقه هذا ب هذا و و بماذا سيفيدنى تعلم c++ نفسها و الواجهات الرسوميه لها طريقه برمجه خاصه بها ,, من اجل استخدام if و while و انشاء الدوال و هذه الاشياء فقط ؟ (اعلم ان هذا السؤال يوحى بغباء الشديد لكن ان اظهر بصوره غبيه افضل من ان اظل جاهل بشئ اريد له اجابه) و لدى سؤال اخر ,, مسبقا كنت مجرد طالب ثانوى يهوى البرمجه و كنت حرا فى اختيار اى لغه لاتعلمها ف بامكانى تغيرها فى اى وقت و بالفعل فعلت فعلت هذا كثيرا كنت اتعلم جزء من لغه ثم اتركها و ابدأ باخرى و كان من ضمن هذه اللغات c++ الى ان اهتديت ال دلفى ,, وجدت فيها السهوله و القوه لكنى التحقت بكليه الهندسه و ان شاء الله سوف اختار شعبه الالكترونيات اى ان البرمجه ستصبح جزء من عملى و يجب ان اخذها على محمل الجد ,, سوف نقوم فى الجامعه ب البرمجه ب c فهل من الافضل ان اتعلم c++ لانها قريبه من c و انا اصلا احبها و مع الذى سادرسه عن c ساصبح متفوقا فى الدراسه ام اتابع مع دلفى ؟ شكرا
-
حلت المشكله بعد استخدام rad studio xe7 ,, شكرا
-
الوحده غير موجوده file not found : 'Vcl.Imaging.pngimage'h
-
كنت قد بحت عن كود يقوم بتحويل الصور من الصيغه bmp ألى png و وجدت هذا الكود procedure BitmapFileToPNG(const iimage:TBitmap;spath:string);var Bitmap: TBitmap; PNG: TPNGObject;begin Bitmap := TBitmap.Create; PNG := TPNGObject.Create; In case something goes wrong, free booth Bitmap and PNG try Bitmap:=iimage; PNG.Assign(Bitmap); //Convert data into png PNG.SaveToFile(spath); finally Bitmap.Free; PNG.Free; endend;كما ترون هناك كائن بأسم TPNGObject عند ترجمه الكود يكون الخطأ عنده ,, Undeclared identifier ف هل هناك شئ ما لاضافته الى uses ليعمل هذا الكائن ام ماذا ؟
-
مجهود جبار ,, استمر
-
كيفيه تعديل هذا الكود للحصول على عنوان النافذه من خلال ال اسم البروسس الخاص بها
MidooX10 رد على MidooX10's موضوع في لغة C و ++C
الكود لا يطبع عنوان النافذه ,, فقط يطبع بعض الاحرف ! -
استخدم البحث فى المنتدى و اقرأ المواضيع المتعلقه ب ال Dynamic memory allocating و المؤشرات
-
دلفى لغه قويه لا يستطيع احد انكار هذا لكن c++ تظل c++
-
كيفيه تعديل هذا الكود للحصول على عنوان النافذه من خلال ال اسم البروسس الخاص بها
MidooX10 posted سؤال in لغة C و ++C
سألت فى موضوع سابق عن التأكد ما اذا كان برنامج معين يعمل ام لا و اخى Mr B لم يقصر ف الاجابه لكن الان هل يمكن تعديل الكود الذى اعطاه لى او كتابه غيره للتحصول على عنوان النافذه من خلال ال process name لها مثال للتوضيح مدخلات البرنامج : notepad.exe المخرجات : New Text Document - Notepad ( بفرض ان هناك ملف نصى بهذا الاسم مفتوح بواسطه ال نوت باد ) كود Mr B #define UNICODE#include <Windows.h>#include <TlHelp32.h>#include <stdio.h>intmain(void){HANDLE Snapshot;Snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);if(Snapshot != INVALID_HANDLE_VALUE) {PROCESSENTRY32 ProcessEntry;BOOL Succeed;ProcessEntry.dwSize = sizeof(PROCESSENTRY32);Succeed = Process32First(Snapshot, &ProcessEntry);while(Succeed) {if(lstrcmp(ProcessEntry.szExeFile, L"notepad.exe") == 0) {printf("notepad.exe found, id %ld\n", ProcessEntry.th32ProcessID);}Succeed = Process32Next(Snapshot, &ProcessEntry);}CloseHandle(Snapshot);}return 0;}ملحوظه : السؤال لغرض تعليمى لا للاستخدام فى عمل برنامج ,, بمعنى انى لم اخالف قوانين المنتدى -
شكرا جزيلا mr b الكود رائع لكن هل من الممكن عكس العمليه ؟ الحصول على عنوان النافذه باستخدام اسم ال process ؟