كيفية قراءة البارامترات المرسله عند فتح البرنامج (vb.net)

السلام عليكم ورحمة الله وبركاته

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

لمن لايعرف البارامترات عليه ان يضع هذا الكود في نافذة cmd أو تشغيل

firefox.exe alkrsan.net

إذا كان متصفح الثعلب الناري مثبت في جهازك تدخل مباشرة الى بوابه القرصان, تفسير هذا ان البرنامج قراء البارامتر المرفق عند فتحه ونقلنا إليه مباشرةَ.

وللعلم فأن أي برنامج يستطيع إستقبال البارامترات ولكن ليست كل البرامج تستطيع التعامل معها !

التطبيق سيكون بأستخدام لغه vb.net

بدايتاً ماهي الفائدة !

حسناً .. أعتقد انه لايمكنني اقناعك ببساطه لكن الواقع أقعني قبلك , اغلب البرامج الكبيرة في السوق منفصله عن بعضها البعض (البرنامج مكون من أكثر من مشروع exe) والبرنامج الرئيسي وحده يستطيع فتحها على الرغم انها ملفات exe عاديه , وبما انك مبرمج يجب ان تعرف انه يبعث اليها بارامترات لكي يتمكن من فتحها .

إن لم تقتنع فلا تبالي فا بستخدام البارامترات تستطيع إنشاء اسرار لبرنامجك مثل ان تجعله يفتح بدون المطالبة بتسجيل الدخول ولك ان تفكر بكيفية ذلك J.

 

 

انا في هذا المثال سأفتح مشروعي وابعث له بارامتر يحمل القيمة hi

تستطيع سحب أي عنصر وافلاته على برنامجك للتجربه 🙂

1

الآن في حدث فتح الفورم أو ضغط زرسنكتب احد الاكواد التالية

    Dim CommandLineArgs As System.Collections.ObjectModel.ReadOnlyCollection(Of String) = My.Application.CommandLineArgs

        For i As Integer = 0 To CommandLineArgs.Count – 1

            MessageBox.Show(CommandLineArgs(i))

        Next

 

———————————————————————— 

        For Each s As String In My.Application.CommandLineArgs

            MessageBox.Show(s)

        Next

 

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

2

لاحظ الرساله تحمل محتوى البارامتر

في المستقبل عندما نصبح أكثر احترافاً سنكتب الكود السابق في حدث

MyApplication_Startup

 الموجود في ملف

ApplicationEvents.vb

ونستطيع الحصول على الملف عن طريق الذهاب الى خصائص المشروع ثم

View ApplicationEvents

3

كودين اضافيين لتشغيل عمليه وارفاق بارامترات لها

 

  Dim p = New Process()

p.StartInfo.CreateNoWindow = True

p.StartInfo.FileName = “firefox.exe”

p.StartInfo.Arguments = “/c alkrsan.net ”

p.StartInfo.UseShellExecute = False

p.StartInfo.RedirectStandardOutput = True

p.StartInfo.RedirectStandardError = True

p.Start()

 

 

 Process.Start(“firefox.exe“, “alkrsan.net“)

إرسال التعليق