lolo
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.



 
الرئيسيةأحدث الصورالتسجيلدخول

 

 فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك)

اذهب الى الأسفل 
3 مشترك
كاتب الموضوعرسالة
عبدالرحمن طعمة
عضو جديد
عضو جديد
عبدالرحمن طعمة


ذكر
عدد الرسائل : 39
العمر : 37
التخصص : A I S
النـشــــاط :
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Left_bar_bleue15 / 10015 / 100فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Right_bar_bleue

الأوســــمة : لا يوجد
تاريخ التسجيل : 11/10/2007

فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Empty
مُساهمةموضوع: فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك)   فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Icon_minitimeالخميس أكتوبر 11, 2007 9:06 pm

سأشرح لكم طريقة سهلة للغايه لربط برنامجك بإمتداد معين مثل برنامج Winamp وملفات mp3 مثلا .... ساستخدم الدوال RegCreateKey و RegSetValue قم بتشغيل فيجول بيسك على مشروع جديد إنسخ هذه الاعلانات إلى قسم الإعلانات فى الفورم الجديد Private Declare Function RegCreateKey Lib "advapi32.dll" _ Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal _ lpSubKey As String, phkResult As Long) As Long هذه الدالة تتطلب ثلاث توابع التابع الاول hKey وهو يمثل المفتاح الرئيسى أما التابع الثانى lpSubKey فيمثل المفتاح الفرعى المشتق من المفتاح الاول وهذا المفتاح هو الذى سيتم إنشاءة أما المفتاح الثالث فيمثل مؤشر للمفتاح الذى تم إنشاءة وسنستخدمة فى الدالة الثانية ( حرف P عندما يأتى فى دالة من دوال API فهو يدل على مؤشروهى كلمة مشهورة جداً فى لغة السى وهى تمثل عنوان فى الذاكرة ) Private Declare Function RegSetValue Lib "advapi32.dll" _ Alias "RegSetValueA" (ByVal hKey As Long, ByVal _ lpSubKey As String, ByVal dwType As Long, ByVal _ lpData As String, ByVal cbData As Long) As Long أما هذه الدالة فهى تتطلب خمس متغيرات الاول والثانى كما فى الدالة السابقة أما الثالث dwType فهو يحدد نوع البيانات التى سيتم وضعها فى المفتاح الفرفعى أما التابع الرابع lpData فيمثل مؤشر إلىالتابع الثالث أما cbData فيحدد طول البيانات فى التابع الثانى ثم إنسخ هذه الثوابت أيضاً Const ERROR_SUCCESS = 0& Const ERROR_BADDB = 1& Const ERROR_BADKEY = 2& Const ERROR_CANTOPEN = 3& Const ERROR_CANTREAD = 4& Const ERROR_CANTWRITE = 5& Const ERROR_OUTOFMEMORY = 6& Const ERROR_INVALID_PARAMETER = 7& Const ERROR_ACCESS_DENIED = 8& Private Const HKEY_CLASSES_ROOT = &H80000000 Private Const MAX_PATH = 260& Private Const REG_SZ = 1 هذه الثوابت أعتقد أن معناها واضح ثم إنسخ هذا الكود إلى قسم الاعلانات فى الفورم وأضغط Enter فى يتم إنشاء الدالة التى ستقوم بالعمل Private Sub AssociateFileExtension(Extension _ As String, PathToExecute As String, ApplicationName _ As String) ثم ضع هذه الإعلانات Dim sKeyName As String Dim sKeyValue As String . Dim ret& . Dim lphKey& ألأن سنبدأ العمل فى الدالة....... فأنظر إلى هذا الكود sKeyName = ApplicationName فى هذا المتغير نخزن إسم البرنامج الذى تمرره لنا الدالة وهو سيكون المفتاح الاساسى sKeyValue = ApplicationName فى هذا المتغير نخزن إسم البرنامج الذى تمرره لنا الدالة وهو سيكون المفتاح الفرعى ret& = RegCreateKey&(HKEY_CLASSES_ROOT, sKeyName, lphKey&) هنا نستدعى الدالة التى تنشأ المفتاح الاساسى فى التسجيل تحت المفتاح HKEY_CLASSES_ROOT ثم تضع مؤشر لهدا المفتاح فى المتغير &lphKey الذى سنستخدمة فى الخطوة الثانية ret& = RegSetValue&(lphKey&, "", REG_SZ, sKeyValue, 0&) فى هذه الخطوة ننشيء المفتاح الخاص بالبرنامج أو بمعنى أدق نضع الاسم فى هذا المفتاح sKeyName = "." & Extension sKeyValue = ApplicationName ret& = RegCreateKey&(HKEY_CLASSES_ROOT, sKeyName, lphKey&) ret& = RegSetValue&(lphKey&, "", REG_SZ, sKeyValue, 0&) فى هذه الخطوة ننشيء المفتاح الخاص بالإمتداد الذى سيربط بالبرنامج sKeyName = ApplicationName sKeyValue = PathToExecute & " %1" ret& = RegCreateKey&(HKEY_CLASSES_ROOT, sKeyName, lphKey&) ret& = RegSetValue&(lphKey&, "shellopencommand", REG_SZ, sKeyValue, MAX_PATH) فى هذه الخطوة سسنشيء المفتاح الذى سيفتح الطبيق عندما يضغط المستخدم ضغطة مزدوجة على أى ملف لة الإمتداد الذى ربطناه وهذه هى الخطوة الاخيرة وبذلك تصبح الدالة بالصورة الاتية Private Sub AssociateFileExtension(Extension _ As String, PathToExecute As String, ApplicationName _ As String) Dim sKeyName As String Dim sKeyValue As String Dim ret& Dim lphKey& sKeyName = ApplicationName sKeyValue = ApplicationName ret& = RegCreateKey&(HKEY_CLASSES_ROOT, sKeyName, lphKey&) ret& = RegSetValue&(lphKey&, "", REG_SZ, sKeyValue, 0&) sKeyName = "." & Extension sKeyValue = ApplicationName ret& = RegCreateKey&(HKEY_CLASSES_ROOT, sKeyName, lphKey&) ret& = RegSetValue&(lphKey&, "", REG_SZ, sKeyValue, 0&) sKeyName = ApplicationName sKeyValue = PathToExecute & " %1" ret& = RegCreateKey&(HKEY_CLASSES_ROOT, sKeyName, lphKey&) ret& = RegSetValue&(lphKey&, "shellopencommand", REG_SZ, sKeyValue, MAX_PATH) End Sub وعندما ترغب فى إستخدام هذه الدالة ( أو بمعنى أدق هذا الإجراء ) تتبع الصورة الأتية AssociateFileExtension "إمتداد الملف ( ثلاث حروف فقط )" , "مسار البرنامج الذى سيفتح هذا الملف ", " إسم البرنامج" مثال بفرض أن إمتداد البرنامج هو nor ومسار البرنامج هو "C: test" وإسم البرنامج هو Project1.exe فيكون إستخدام الإجراء كالأتى AssociateFileExtension "nor"," C: test " , " Project1.exe"

ف
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://lolo007.ahlamontada.com
خليل العملة
مشرف عام
مشرف عام
خليل العملة


ذكر
عدد الرسائل : 4126
العمر : 36
التخصص : M.I.S
المـــــزاج : فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) 130ab23.009
هوايــــتي : فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Painti10
النـشــــاط :
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Left_bar_bleue72 / 10072 / 100فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Right_bar_bleue

حالة الدردشة : فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Online10
الفــــريـق :
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Sms_tmk

الأوســــمة :
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Cup10
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) 15751610فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) 15751611

تاريخ التسجيل : 07/10/2007

فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Empty
مُساهمةموضوع: رد: فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك)   فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Icon_minitimeالخميس فبراير 28, 2008 6:00 pm

مشكور حبيب البي
والشرح فعلا وافي وكافي
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://lolo007.ahlamontada.com
~žô§ž(AbuKishik
.
.
~žô§ž(AbuKishik


ذكر
عدد الرسائل : 9041
العمر : 36
التخصص : A.I.S
المـــــزاج : فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Msh10
هوايــــتي : فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Travel10
النـشــــاط :
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Left_bar_bleue89 / 10089 / 100فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Right_bar_bleue

الفــــريـق :
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) 16011511
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Sms_tmk

الأوســــمة :
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) 15751610فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) 15751611


[table style=\"BORDER-RIGHT: #000000 1px dashed; BORDER-TOP: #000000 1px dashed; BORDER-LEFT: #000000 1px dashed; BORDER-BOTTOM: #000000 1px dashed\" width=\"10%\" border=0][tr][td]

[center]فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Ya-all10
[/td][/tr][/table][/center]
تاريخ التسجيل : 30/10/2007

فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Empty
مُساهمةموضوع: رد: فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك)   فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Icon_minitimeالجمعة فبراير 29, 2008 8:25 am

جميل جدا اخ عبد الرحمن ......

بس يا ريت لو تحط مسافات بين الأسطر .... لانه مش الكل بتوصله المعلومة هيك ....

يعطيك العافية ...
الرجوع الى أعلى الصفحة اذهب الى الأسفل
خليل العملة
مشرف عام
مشرف عام
خليل العملة


ذكر
عدد الرسائل : 4126
العمر : 36
التخصص : M.I.S
المـــــزاج : فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) 130ab23.009
هوايــــتي : فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Painti10
النـشــــاط :
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Left_bar_bleue72 / 10072 / 100فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Right_bar_bleue

حالة الدردشة : فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Online10
الفــــريـق :
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Sms_tmk

الأوســــمة :
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Cup10
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) 15751610فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) 15751611

تاريخ التسجيل : 07/10/2007

فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Empty
مُساهمةموضوع: رد: فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك)   فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Icon_minitimeالإثنين مارس 03, 2008 4:29 pm

مشكور صالح على وجهة النظر

وبالفعل اخي عبد الرحمن حاول ان تترك مسافة في كتاباتك في الايام القادمة

ونحن ننتظر المزيد من ابداعاتك
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://lolo007.ahlamontada.com
~žô§ž(AbuKishik
.
.
~žô§ž(AbuKishik


ذكر
عدد الرسائل : 9041
العمر : 36
التخصص : A.I.S
المـــــزاج : فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Msh10
هوايــــتي : فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Travel10
النـشــــاط :
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Left_bar_bleue89 / 10089 / 100فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Right_bar_bleue

الفــــريـق :
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) 16011511
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Sms_tmk

الأوســــمة :
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) 15751610فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) 15751611


[table style=\"BORDER-RIGHT: #000000 1px dashed; BORDER-TOP: #000000 1px dashed; BORDER-LEFT: #000000 1px dashed; BORDER-BOTTOM: #000000 1px dashed\" width=\"10%\" border=0][tr][td]

[center]فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Ya-all10
[/td][/tr][/table][/center]
تاريخ التسجيل : 30/10/2007

فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Empty
مُساهمةموضوع: رد: فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك)   فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك) Icon_minitimeالإثنين أبريل 28, 2008 6:36 am

يعطيك الف عافية ....

يسلم ايديك
الرجوع الى أعلى الصفحة اذهب الى الأسفل
 
فيجوال بيسك(كيف تربط نوعية معين من الملفات ببرنامجك)
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
lolo :: الأقسام التقنية و المعلوماتية :: .:|°قسم الشبكات ولغات البرمجة المختلفة°|:.
-
انتقل الى: