منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
كيف تبرمج برنامج يصنع برامج ! - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم مقالات VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=184)
+--- الموضوع : كيف تبرمج برنامج يصنع برامج ! (/showthread.php?tid=4177)



كيف تبرمج برنامج يصنع برامج ! - Osama_Ghareeb - 17-09-12



إخواني و أخواتي الكرام أعضاء منتديات VB4Arab مرحبا بكم


مقدمة :


كثيراً ما نرى برامج تقوم بصنع برامج بالإعدادات التي أدخلها المستخدم

ومن أمثلة هذه البرامج :

1. Visual Studio
2. WinRAR
3. SetupFactory
4. إلخ...
ولكن هنا السؤال هل نستطيع صنع برامج مثل هذه البرامج؟
والجواب هو نعم نستطيع صنع برامج مثل هذه البرامج باستخدام أداة Microsoft.Build
وهي أداة من أدوات.Net Framework وظيفتها تحويل المشروع إلى ملف EXE
المتطلبات :
1.Microsoft Visual Studio
2. أداة Microsoft.Build
3. مشروعين
الأول المشروع الخاص بك
الثاني المشروع الخاص بالمستخدم


الشرح :
1. المشروع الأول

المتطلبات :
1. 1 Form
2. 4 TextBox
3. 4 Label
4. 1 Button

الخصائص :
غير النص في Form1 إلى "صانع البرامج"
غير النص في Label1 إلى "العنوان :"
غير النص في Label2 إلى "الرسالة عند الضغط على زر 1 :"
غير النص في Label3 إلى "الرسالة عند الضغط على زر 2 :"
غير النص في Label4 إلى "حفظ إلى"
غير النص في Button 1 إلى "حفظ"
من قائمة Project إختر Add Revrence ثم من أدوات .Net إختر أداة Microsoft.Build


ليكون شكل الفورم كالتالي :






والأوامر :



------------------------------------------------------------------------------
2. المشروع الثاني

المتطلبات :
1. 1 Form
2. 2 Button

الخصائص :
غير النص في Form1 إلى "Sample"
غير النص في Button 1 إلى "زر 1"
غير النص في Button 1 إلى "زر 2"
ليكون شكل الفورم كالتالي :



[b]------------------------------------------------------------------------------[/b]

قم بحفظ المشروعان بعد ذلك قم بنسخ المشروع الثاني إلى مجلد bin\Debug بدون ملف الsln
ليكون كالتالي :

وعند فتح المجلد Sample :


------------------------------------------------------------------------------
انتهى صنع المشروعان والآن الأوامر والشرح :

كود :
Public Class Form1

   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       TextBox4.Text = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\Sample.exe"
       ' تحديد مسار حفظ البرنامج
   End Sub

   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
       Try
           If TextBox1.Text = "" Or TextBox2.Text = "" Or TextBox3.Text = "" Or TextBox4.Text = "" Then MsgBox("إملأ البيانات") : Exit Sub
           ' إذا كان أحد مربعات النص فارغة إظهار رسالة تحذيرية
           Dim R As New RichTextBox
           ' تعريف الكائن R بأنه أداة RichTextBox
           R.LoadFile("Sample\Form1.Designer.vb", RichTextBoxStreamType.PlainText)
           'فتح الملف  "Sample\Form1.Designer.vb" لتغيير عنوان الفورم
           For I = 0 To R.Lines.Count - 1
               ' للبحث عن أمر عنوان الفورم وتغييره
               If InStr(R.Lines.GetValue(I), "Me.Text") > 0 Then
                   R.Text = Replace(R.Text, R.Lines.GetValue(I), "        Me.Text = """ & TextBox1.Text & """")
                   Exit For
               End If
           Next
           ' لحفظ الملف
           R.SaveFile("Sample\Form1.Designer.vb", RichTextBoxStreamType.PlainText)
           ' كتابة أوامر الأزرار في ملف " "Sample\Form1.vb
           R.Text = "Public Class Form1"
           R.Text += vbNewLine
           R.Text += vbNewLine
           R.Text += "    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click"
           R.Text += vbNewLine
           R.Text += "        MsgBox(""" & TextBox2.Text & """)"
           R.Text += vbNewLine
           R.Text += "    End Sub"
           R.Text += vbNewLine
           R.Text += vbNewLine
           R.Text += "    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click"
           R.Text += vbNewLine
           R.Text += "        MsgBox(""" & TextBox3.Text & """)"
           R.Text += vbNewLine
           R.Text += "    End Sub"
           R.Text += vbNewLine
           R.Text += vbNewLine
           R.Text += "End Class"
           ' لحفظ الملف
           R.SaveFile("Sample\Form1.vb", RichTextBoxStreamType.PlainText)
           ' الخطوة الأهم وهي تعريف الكائن P على أنه مشروع وفتح المشروع الثاني
           Dim P As New Microsoft.Build.Evaluation.Project("Sample\Sample.vbproj")
           ' وأخيراً عمل Build للمشروع ونسخه إلى المكان المحدد
           If P.Build() = False Then MsgBox("خطأ") : Exit Sub
           My.Computer.FileSystem.CopyFile("Sample\bin\Debug\Sample.exe", TextBox4.Text) : MsgBox("تم")
       Catch ex As Exception
           MsgBox(ex.ToString)
       End Try
   End Sub
End Class


للتحميل في المرفقات



بالتوفيق للجميع إن شاء الله

وصلى الله على سيدنا محمد وعلى أله وصحبه وسلم





كيف تبرمج برنامج يصنع برامج ! - أسامة أحمد - 27-09-12

طب أخي ممكن طريقة عمل برنامج يصعع برامج exe بس يصممه
يعني زي الفجوال ستوديو كدا أو بمعنى اصح Power AutoPlay Menu


كيف تبرمج برنامج يصنع برامج ! - Osama_Ghareeb - 30-09-12

أسامة أحمد كتب :طب أخي ممكن طريقة عمل برنامج يصعع برامج exe بس يصممه
يعني زي الفجوال ستوديو كدا أو بمعنى اصح Power AutoPlay Menu

ممكن بس بده وقت


كيف تبرمج برنامج يصنع برامج ! - أسامة أحمد - 30-09-12

طبعا أكيد أخي أنتا بتستأذني دا انا الي باستأذنك


كيف تبرمج برنامج يصنع برامج ! - Osama_Ghareeb - 30-09-12

في المرفقات مثال على اللي بدك ياه  سويته من شهور بس ما كملته لأني عقدت الأوامر :confused:
فما أنصحك تشوف لأنك يمكن تبطل برمجة Wink


كيف تبرمج برنامج يصنع برامج ! - أسامة أحمد - 30-09-12

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


كيف تبرمج برنامج يصنع برامج ! - karika - 03-10-12

مبدع وواصل يا اخى