حقاً أنا لا أفهم كيف يحدث هذا, عندما نضغط RightClick علي أي ملف ونفوم مثلا بإختيار Open with
وبعدها نختار علي سبيل المثال Windows media player.
كيف يعرف Windwos media player أن عليه تشغيل هذا الملف وكيف يعرف مساره؟؟؟
شكراً مقدماً
يستعمل ما يسمى registry
جميع امتدادت الملفات مع البرامج التي تشغلها موجودة كقيم في registry windows وopen with يقرأ تلك القيم
لإضافة البرنامج لقائمة Open With
فهذه قيمة في الرجيستري
كيف يعرف البرنامج مسار الملف ؟
فهذه سهلة هناك شيء مثلاً في VB.net .. تضع كود في ال onload الخاص بالبرنامج
مثل :-
My.Application.CommandLineArgs(0)
هذا يقوم بإرجاع مسار البرنامج إذا قام المستخدم بسحب الملف
لأيقونة البرنامج أو الOpen With أو حتي لو جعل برنامجك الافتراضي
لامتداد معين سوف يرجع قيمة مسار الملف و إذا لم يكن لن يرجع شيء
لكن كيف نضيف برنامجنا إلى تلك الجداول؟؟
ممكن تشوف هذا المقال :
عندما تختار Windows media player سيقوم نظام التشغيل بتشغيل برنامج Windows media player ويمرر له اسم الملف الذي اخترته...
وفي داخل برنامج Windows media player تكون هناك دالة تقوم بقراءة اسم الملف وثم يقوم بتشغيله...
وكيف يعرف مساره؟؟
بسيطة البرنامج يستعمل دالة GetCommandLine لكي يحصل على مسار الملف الذي اخترته...
التعليقات