لتشغيل البرامج والملفات في الويندوز من داخل الفيجوال بيسك (هام جدا جدا)
صفحة 1 من اصل 1
لتشغيل البرامج والملفات في الويندوز من داخل الفيجوال بيسك (هام جدا جدا)
هناك عدة طرق لتشغيل الملفات في الويندوز من داخل الفيجوال بيسك.
وقد وضعنا في هذا الدرس أهم الطرق لتشغيل الملفات التنفيذية والملفات الأخرى. لعنا نقدم الفائدة لكل مبرمج في الفيجوال بيسك.
نبدأ بتشغيل الملفات التنفيذية ( البرامج EXE)
أولاً - بإستخدام الدالة Shell :
هذه الدالة تستخدمها الفيجوال بيسك لتشغيل الملفات التنفيذية.
صيغتها العمامة كما يلي.
Shell 'File Name Path', WindowsStyle
File Name Path : مسار الملف التنفيذي المراد تشغيله.
WindowsStyle : طريقة عرض نافذة البرامج المراد تشغيله .
وهذا الشرج يبين الثوابت لهذا الوسيط:
vbHide القيمه 0 تكون النافذة مخفية
vbNormalFocus القيمه 1 تكون النافذة في حجمها الطبيعي مع إعطاء التركيز لها
vbMinimizedFocus قيمتها 2 تكون النافذة في وضع التصغير على شريط المهام وإعطائها التركيز
vbMaximizedFocuse قيمتها 3 تكون النافذة في وضع التكبير مع إعطائها التركيز
vbNormalNoFocus قيمتها 4 تكون النافذة في وضع التصغير دون إعطائها التركيز
vbMinimizedNoFocus قيمتها 5 تكون النافذة في وضع التصغير دون إعطائها التركيز
مثال :
Shell 'notepad.exe', vbNormalFocus
تشغيل المفكرة في الوضع العادي
لاحظ انه لم نكتب المسار الكامل للمفكرة لأنها داخل مجلد النظام .
ثانياً - بإستخدام إجراءات API .
الدالة WinExec . وهي تشبه الدالة السابقة :
يتم التصريح عن الدالة بالكود التالي في مديول:
Declare Function WinExec& Lib 'kernel32' (ByVal lpCmdLine As String, ByVal nCmdShow As Long)
التشغيل:
WinExec('Notepad.exe', vbMaximizedFocus)
تشغيل الملفات الأخرى:
لايمكننا تشغيل الملفات المرتبطة ببرامج خاصة عن طريق الدوال السابقة فوراً .
ولاكن عليك كتابة مسار التطبيق أولاً . ثم مسار الملف المرتبط بالبرنامج. مثال:
Shell 'Notepad.exe c:\windows\faq.txt', vbNormalFocus
لوفرضنا أنك لم تعرف البرنامج المرتبط بالملف . فالدالة التالية تقوم بمعرفة البرنامج المقترن وتشغيله:
الدالة ShellExecute.
التصريح عنها : في قسم التصريحات General
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
وسيطات الدالة :
hwnd : مقبض النافذة.
lpOperation : احدى المعاملين 'Print' للطباعة و 'Open' للفتح.
lpFile : اسم الملف لمراد تطبيق العملية عليه.
lpParameters : الوسيطات المراد تمريرها إلى جوار اسم الملف (في حال وجودها).
lpDirectory : اسم المجلد الذي يقع عليه الملف.
nShowCmd : مطابقة للوسيطة windowstyle التابعة للدالة Shell .
مثال:
ShellExecute hwnd, 'Open', 'Calc.exe', vbNullString, vbNullString, 3
لتشغيل كافة الملفات :
ضع هذا التصريح في قسم General بعد التصريح الأساسي للدالةSub ShellDocument(FileName As String)
Dim Ret&
Ret = ShellExecute(hwnd, 'Open', FileName, '', '', 1)
If Ret <= 32 Then
Select Case Ret
Case 2&
MsgBox 'لم يتم العثور على الملف'
Case 3&
MsgBox 'المسار غير موجود'
Case 5&
MsgBox 'تعذر الوصول'
Case 8&
MsgBox ' ذاكرة غير كافية'
Case 11&
MsgBox 'هناك خلل في البرنامج'
Case 32&
MsgBox 'مكتبة الربط الديناميكي غير موجودة'
Case 31&
MsgBox 'لايوجد برنامج مقترن لفتح هذا الملف'
Case Else
MsgBox 'خطأ غير معرف '
End Select
End If
End Sub
للتشغيل هذا الكود : ShellDocument 'c:\windows\faq.txt'
وقد وضعنا في هذا الدرس أهم الطرق لتشغيل الملفات التنفيذية والملفات الأخرى. لعنا نقدم الفائدة لكل مبرمج في الفيجوال بيسك.
نبدأ بتشغيل الملفات التنفيذية ( البرامج EXE)
أولاً - بإستخدام الدالة Shell :
هذه الدالة تستخدمها الفيجوال بيسك لتشغيل الملفات التنفيذية.
صيغتها العمامة كما يلي.
Shell 'File Name Path', WindowsStyle
File Name Path : مسار الملف التنفيذي المراد تشغيله.
WindowsStyle : طريقة عرض نافذة البرامج المراد تشغيله .
وهذا الشرج يبين الثوابت لهذا الوسيط:
vbHide القيمه 0 تكون النافذة مخفية
vbNormalFocus القيمه 1 تكون النافذة في حجمها الطبيعي مع إعطاء التركيز لها
vbMinimizedFocus قيمتها 2 تكون النافذة في وضع التصغير على شريط المهام وإعطائها التركيز
vbMaximizedFocuse قيمتها 3 تكون النافذة في وضع التكبير مع إعطائها التركيز
vbNormalNoFocus قيمتها 4 تكون النافذة في وضع التصغير دون إعطائها التركيز
vbMinimizedNoFocus قيمتها 5 تكون النافذة في وضع التصغير دون إعطائها التركيز
مثال :
Shell 'notepad.exe', vbNormalFocus
تشغيل المفكرة في الوضع العادي
لاحظ انه لم نكتب المسار الكامل للمفكرة لأنها داخل مجلد النظام .
ثانياً - بإستخدام إجراءات API .
الدالة WinExec . وهي تشبه الدالة السابقة :
يتم التصريح عن الدالة بالكود التالي في مديول:
Declare Function WinExec& Lib 'kernel32' (ByVal lpCmdLine As String, ByVal nCmdShow As Long)
التشغيل:
WinExec('Notepad.exe', vbMaximizedFocus)
تشغيل الملفات الأخرى:
لايمكننا تشغيل الملفات المرتبطة ببرامج خاصة عن طريق الدوال السابقة فوراً .
ولاكن عليك كتابة مسار التطبيق أولاً . ثم مسار الملف المرتبط بالبرنامج. مثال:
Shell 'Notepad.exe c:\windows\faq.txt', vbNormalFocus
لوفرضنا أنك لم تعرف البرنامج المرتبط بالملف . فالدالة التالية تقوم بمعرفة البرنامج المقترن وتشغيله:
الدالة ShellExecute.
التصريح عنها : في قسم التصريحات General
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
وسيطات الدالة :
hwnd : مقبض النافذة.
lpOperation : احدى المعاملين 'Print' للطباعة و 'Open' للفتح.
lpFile : اسم الملف لمراد تطبيق العملية عليه.
lpParameters : الوسيطات المراد تمريرها إلى جوار اسم الملف (في حال وجودها).
lpDirectory : اسم المجلد الذي يقع عليه الملف.
nShowCmd : مطابقة للوسيطة windowstyle التابعة للدالة Shell .
مثال:
ShellExecute hwnd, 'Open', 'Calc.exe', vbNullString, vbNullString, 3
لتشغيل كافة الملفات :
ضع هذا التصريح في قسم General بعد التصريح الأساسي للدالةSub ShellDocument(FileName As String)
Dim Ret&
Ret = ShellExecute(hwnd, 'Open', FileName, '', '', 1)
If Ret <= 32 Then
Select Case Ret
Case 2&
MsgBox 'لم يتم العثور على الملف'
Case 3&
MsgBox 'المسار غير موجود'
Case 5&
MsgBox 'تعذر الوصول'
Case 8&
MsgBox ' ذاكرة غير كافية'
Case 11&
MsgBox 'هناك خلل في البرنامج'
Case 32&
MsgBox 'مكتبة الربط الديناميكي غير موجودة'
Case 31&
MsgBox 'لايوجد برنامج مقترن لفتح هذا الملف'
Case Else
MsgBox 'خطأ غير معرف '
End Select
End If
End Sub
للتشغيل هذا الكود : ShellDocument 'c:\windows\faq.txt'
Coptic_Programmer- مشرف برامج
- المساهمات : 43
تاريخ التسجيل : 29/10/2008
مواضيع مماثلة
» حمل الفيجوال بيسك 6
» شرح طريقة تركيب CrossOver Office Pro 3.0 لتشغيل برامج الويندوز على اللينكس
» بيئة التطوير في الفيجوال بيسك
» دورة كاملة بالصور فى الفيجوال بيسك 6
» إدراج نص في Microsoft Word عن طريق الفيجوال بيسك
» شرح طريقة تركيب CrossOver Office Pro 3.0 لتشغيل برامج الويندوز على اللينكس
» بيئة التطوير في الفيجوال بيسك
» دورة كاملة بالصور فى الفيجوال بيسك 6
» إدراج نص في Microsoft Word عن طريق الفيجوال بيسك
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى