منتدى سوفت وير لكل العرب SOFTWARE FOR ALL ARAB
اهلا بكم في منتدى
SOFTWARE FOR ALL ABAB
المنتدى في بدايته ويقدم دورات قيمة في البرمجة وباشراف مبرمجين محترفين
سارع في التسجيل وانضم الى عائلة SOFTWARE FOR ALL ABAB


أهلا بكم في منتدى سوفت وير لكل العرب SOFTWARE FOR ALL ARAB
 
الرئيسيةالتسجيلدخول

شاطر | 
 

 كيفية فتح ملف من خلال برنامج بلغة الفيجوال بيسك 6

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل 
كاتب الموضوعرسالة
mohameeeed



عدد المساهمات : 3
درجة نشاطه : 6
درجة تميزه في المنتدى : 1
تاريخ التسجيل : 05/02/2012

مُساهمةموضوع: كيفية فتح ملف من خلال برنامج بلغة الفيجوال بيسك 6   الأحد فبراير 05, 2012 5:17 pm

السلام عليكم ورحمة الله وبركاته
كثير ما تكرر سؤال كيف اشغل ملف تنفيذي أو أي ملف أخر من برنامجي

سأقوم بشرح بسيط مع وضع الكود اللازم الذي تستطيع من خلاله
فتح الملف على حسب نوعه مهما كان سواء تنفيذي أو ملف مساعدة أو مستند نصي أو وثيقة وورد أو ....

أفتح الفيجوال بيسك وضع على الفورم زرين كومند Command2 , Command1
سمي الأول فتح ملف من مسار البرنامج والثاني فتح ملف من مسار معين

الآن أنشأنا الواجهة البسيطة التي تحوي على زرين


الآن ننتقل لكتاب الكود
وهو بشكله الكامل كالتالي :

'قسم التصريحات
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
'قسم الاكواد
Private Sub Command1_Click()
ShellExecute Me.hwnd, "open", App.Path & "\prog\1.txt", "", "", 1
End Sub

Private Sub Form_Load()
ShellExecute Me.hwnd, "open", "C:\WINDOWS\NOTEPAD.EXE", "", "", 1
End Sub
وهو عبارة عن ثلاثة أقسام
القسم الأول يسمى قسم التصريحات Declaration وعند إضافة أي كود فهو يكون في الأعلى أي قبل كتابة أي كود مثلا كود ضغط على زر أو تحميل الفورم
وقد وضعنا فيه هذا الكود ولنسميه الكود رقم واحد وهو التالي
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

حيث هذا الكود يقوم بالتعريف بالدالة ShellExecute
The ShellExecute function opens or prints a specified file. The file can be an executable file or a document file.
هذا الدالة تقوم بفتح الملفات و المستندات بصيغة التحرير فذالك يفيدنا عندما نريد فتح ملف نصي أو مستند وورد و كذلك فتح الملفات التنفيذية عكس التعليمة Shell التي تقوم بفتح الملفات التنفيذية فقط
ألان ننسخ الكود رقم واحد إلى برنامجنا وهو كما قلنا سيكون مكتوب قبل أي كود في أعلا نافذة الكود ونقوم بلصقه و بذلك انتهينا من تعريف الدالة و الإعلان عنها يعني هذا الكود لا تجري فيه أي تغيير كما هو

الآن ننتقل إلى الأزرار
الزر الأول الفتح من مسار البرنامج
Private Sub Command1_Click()
ShellExecute Me.hwnd, "open", App.Path &" \ww.txt", "", "", 1
End Sub
لاحظ أننا استخدمنا التعليمة ShellExecute والكود بشرحه كلاميا بالتفصيل بثلاثة جمل
عند الضغط على الزر الاول قم بفتح الملف ShellExecute Me.hwnd, "open",
الموجود في مسار البرنامج App.Path حيث تعني مسار الملف التنفيذي أي البرنامج الذي تقوم بعمله
الملف صاحب الاسم ww و لاحقته txt أي مستند نصي
غير الاسم و اللاحقة حسب البرنامج فقد يكون ملف تنفيذي لاحقته exe
لاحظ الجملة " \ww.txt"حيث نضع الرمز \ قبل اسم الملف حيث الملف موجود مع برنامجك بنفس المسار أي المجلد

لان بفرض البرنامج الذي تريد فتحه داخل مجلد وهذا المجلد بجوار البرنامج الرئيسي

حسب الصورة السابقة الملف 1.txt موجود ضمن المجلد prog
فما عليك إلا كتابة نفس الكود السابق لكن أضف قبل اسم الملف اسم المجلد
فالكود كان
ShellExecute Me.hwnd, "open", App.Path &" \ww.txt", "", "", 1
و أصبح
ShellExecute Me.hwnd, "open", App.Path &" \prog\ww.txt", "", "", 1
إي الإضافة لم تتعدى اسم المجلد وهذه هي الإضافة
\prog

الزر الثاني الفتح من مسار معين

Private Sub Form_Load()
ShellExecute Me.hwnd, "open", "C:\WINDOWS\NOTEPAD.EXE", "", "", 1
End Sub

حاول المقارنة بين الكودين ستجد أننا أزلنا عبارة App.Path أي من المسار لنضع المسار الكامل للبرنامج وهو مسار المفكرة مثلاً وهو معلوم لدى الجميع أنه في مجلد النظام فالكود الثاني عندما يكون المسار ثابت لا يتغير فمسار المفكرة و الآلة الحاسبة ومستعرض الملفات ثابتة و أغلبها تكون في القرص c في مجلد الويندوز
أي إن الكود سيكون ملزم بفتح الملف كما ورد مساره بالتحديد و غير قابل للتغيير و بذلك أنهينا الكود الثاني
وخلاصة القول بين الكودين :

الكود الأول أشمل حيث أين ما وضعت برنامجك داخل أي قرص أو مجلد فسيقوم بتشغيل الملفات المهم تكون بجواره أو داخل مجلد أو مجلدين بجواره أي في مساره وهو المفضل أن تستخدمه لأنك عندما تصمم برنامج وتوزعه فكل قد ينسخه على جهازه بمكان وبذلك تستوعب حالة اختلاف الأقراص لدى المستخدم

الكود الثاني كما ذكرنا عندما يتحدد المسار تحديدا

تستطيع إضافة المزيد من الأزرار وتضع الكود لكل زر نفسه مع التغيير بأسم البرنامج ولاحقته

الآن قد تسأل ما معنى الرقم 1 الموجود في أخر الكود هذا الرقم يعطي الصيغة العادية لفتح الملف أي NORMAL أي كما تم تصميم البرنامج تستطيع تغيره إلى 2 لفتح الملف بصيغة مصغرة Minimized في شريط المهام وإذا غيرته إلى 3 فسيفتح البرنامج بحجم كامل الشاشة Maximized .
وعذرا على الإطالة في الشرح لعلها تفيد عددا أكبر


انا قرأت هذا الموضوع فأعجبني وأفادني كثيرا فلذلك رفعته لكم حتى تعم الفائدة


أخوكم محمد العنابي


يقول صاحب الموضوع
لا تنسونا من دعوة صالحة
و السلام عليكم ورحمة الله وبركاته
الرجوع الى أعلى الصفحة اذهب الى الأسفل
mohameeeed



عدد المساهمات : 3
درجة نشاطه : 6
درجة تميزه في المنتدى : 1
تاريخ التسجيل : 05/02/2012

مُساهمةموضوع: رد: كيفية فتح ملف من خلال برنامج بلغة الفيجوال بيسك 6   الثلاثاء فبراير 07, 2012 6:39 am

ممكن ردود حتى نتشجع ونزيد أكثر مواضيع
الرجوع الى أعلى الصفحة اذهب الى الأسفل
elmakrom



عدد المساهمات : 5
درجة نشاطه : 5
درجة تميزه في المنتدى : 0
تاريخ التسجيل : 28/02/2012

مُساهمةموضوع: رد: كيفية فتح ملف من خلال برنامج بلغة الفيجوال بيسك 6   الأربعاء فبراير 29, 2012 12:32 am

شكرا جزيلا وجزاكم الله خيرا عنا ان شاء الله عز وجل
الرجوع الى أعلى الصفحة اذهب الى الأسفل
عميد المنتدى
Admin


عدد المساهمات : 21
درجة نشاطه : 88
درجة تميزه في المنتدى : 2
تاريخ التسجيل : 25/03/2009
العمر : 26
الموقع : العراق

مُساهمةموضوع: رد: كيفية فتح ملف من خلال برنامج بلغة الفيجوال بيسك 6   السبت مارس 03, 2012 11:50 am

شكراااااااااااااااا جزيلا ونتمنى المزيد

الله يوفقك
الرجوع الى أعلى الصفحة اذهب الى الأسفل
http://softwareforallarab.yoo7.com
 
كيفية فتح ملف من خلال برنامج بلغة الفيجوال بيسك 6
استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
منتدى سوفت وير لكل العرب SOFTWARE FOR ALL ARAB :: منتدى الدورات التعليمة-
انتقل الى: