إجراء رئيسي في Visual Basic
يجب أن يحتوي كل تطبيق في Visual Basic على إجراء يسمى Main. يعمل هذا الإجراء كنقطة البداية وكتحكم عام للتطبيق الخاص بك. يستدعي .NET Framework إجراء Main الخاص بك عندما يتم تحميل التطبيق الخاص بك ويكون جاهز لتمرير عنصر التحكم إليه. ما لم تقم بإنشاء أحد تطبيقات نماذج Windows يجب كتابة إجراء Main للتطبيقات التي تعمل لوحدها.
Main يحتوي على التعليمات البرمجية التي تعمل أولاً. في Main، يمكنك تحديد أي نموذج يتم تحميله أولاً عند بدء تشغيل البرنامج، اكتشاف ما إذا كان هناك نسخة للتطبيق الخاص بك قيد التشغيل على النظام، إنشاء مجموعة من المتغيرات للتطبيق الخاص بك، أو فتح قاعدة بيانات يتطلبها التطبيق.
متطلبات الإجراء الرئيسي
الملف الذي يعمل من تلقاء نفسه (عادةً مع الملحق .exe) يجب أن يحتوي على إجراء Main. مكتبة (على سبيل المثال مع ملحق .dll) لا تعمل من تلقاء نفسها و لا تتطلب إجراء Main. متطلبات الأنواع المختلفة من المشاريع التي يمكنك إنشائها هي كالتالي:
وحدة تشغيل التطبيقات تعمل من تلقاء نفسها، و يجب أن توفر إجراء Main واحد على الأقل. .
تطبيقات Windows Forms تعمل من تلقاء نفسها. ومع ذلك، ينشئ برنامج التحويل البرمجي Visual Basic إجراء Main بشكل تلقائي في مثل هذا التطبيق، و لا تحتاج إلى كتابة واحد.
لا تتطلب مكتبات الفئة إجراء Main. هذه تتضمن مكتبات تحكم Windows ومكتبات تحكم ويب. يتم نشر تطبيقات ويب كمكتبات فئة.
تعريف الإجراء الرئيسي
توجد أربع طرق لتعريف إجراء Main. يمكن أن تأخذ وسائط أو لا، و يمكن أن ترجع قيمة أم لا.
ملاحظة
إذا قمت بتعريف Main في فئة ، يجب أن تستخدم الكلمة الأساسية Shared. في وحدة نمطية، لا يحتاج Main ليكون Shared.
إن أبسط طريقة هي أن تعرف إجراء Sub الذي لا يأخذ وسائط أو لايقوم بإرجاع قيمة.
Module mainModule Sub Main() MsgBox("The Main procedure is starting the application.") ' Insert call to appropriate starting place in your code. MsgBox("The application is terminating.") End Sub End Module
Main يمكن أيضاً أن يرجع قيمة Integer، التي يستخدمها نظام التشغيل كرمز الخروج لهذا البرنامج. يمكن للبرامج الأخرى اختبار هذه التعليمات البرمجية بفحص قيمة Windows ERRORLEVEL. لإرجاع رمز الخروج, يجب أن تقوم بتعريف Main كإجراء Function بدلاً من إجراء Sub.
Module mainModule Function Main() As Integer MsgBox("The Main procedure is starting the application.") Dim returnValue As Integer = 0 ' Insert call to appropriate starting place in your code. ' On return, assign appropriate value to returnValue. ' 0 usually means successful completion. MsgBox("The application is terminating with error level " & CStr(returnValue) & ".") Return returnValue End Function End Module
Main يمكنك أيضاً أن يأخذ صفيف String كوسيطة. تحتوي كل سلسلة في الصفيف على إحدى وسائط خط الأوامر المستخدم لاستدعاء البرنامج الخاص بك. يمكنك اتخاذ إجراءات مختلفة تبعا لقيمها.
Module mainModule Function Main(ByVal cmdArgs() As String) As Integer MsgBox("The Main procedure is starting the application.") Dim returnValue As Integer = 0 ' See if there are any arguments. If cmdArgs.Length > 0 Then For argNum As Integer = 0 To UBound(cmdArgs, 1) ' Insert code to examine cmdArgs(argNum) and take ' appropriate action based on its value. Next argNum End If ' Insert call to appropriate starting place in your code. ' On return, assign appropriate value to returnValue. ' 0 usually means successful completion. MsgBox("The application is terminating with error level " & CStr(returnValue) & ".") Return returnValue End Function End Module
يمكنك تعريف Main لفحص وسائط خط الأوامر و لكن دون إرجاع رمز الخروج كما يلي.
Module mainModule Sub Main(ByVal cmdArgs() As String) MsgBox("The Main procedure is starting the application.") Dim returnValue As Integer = 0 ' See if there are any arguments. If cmdArgs.Length > 0 Then For argNum As Integer = 0 To UBound(cmdArgs, 1) ' Insert code to examine cmdArgs(argNum) and take ' appropriate action based on its value. Next argNum End If ' Insert call to appropriate starting place in your code. MsgBox("The application is terminating.") End Sub End Module
راجع أيضًا:
المرجع
نوع بيانات الأعداد الصحيحة (Visual Basic)
نوع بيانات السلسلة (Visual Basic)