منتدى استراحات زايد

منتدى استراحات زايد (http://vb.ma7room.com/index.php)
-   منتدى أخبار المواقع والمنتديات العربية والأجنبية (http://vb.ma7room.com/forumdisplay.php?f=183)
-   -   حصرياً على المشاغب (تعلم صنع برنامج يصنع برامج) (http://vb.ma7room.com/showthread.php?t=491158)

محروم.كوم 08-26-2010 01:30 AM

حصرياً على المشاغب (تعلم صنع برنامج يصنع برامج)
 


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


مقدمة :


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

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


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

http://www7.0zz0.com/2010/08/25/20/911237309.png



والأوامر :
http://www7.0zz0.com/2010/08/25/20/322057820.png

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

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

الخصائص :
غير النص في Form1 إلى "Sample"
غير النص في Button 1 إلى "زر 1"
غير النص في Button 1 إلى "زر 2"
ليكون شكل الفورم كالتالي :
http://www7.0zz0.com/2010/08/25/20/856419070.png

------------------------------------------------------------------------------

قم بحفظ المشروعان بعد ذلك قم بنسخ المشروع الثاني إلى مجلد bin\Debug بدون ملف الsln
ليكون كالتالي :
http://www7.0zz0.com/2010/08/25/20/631823867.png
وعند فتح المجلد Sample :
http://www7.0zz0.com/2010/08/25/20/557485708.png

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

كود PHP:
[LEFT]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[/LEFT]



والآن نأتي إلى التحميل






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

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


الساعة الآن 11:38 PM

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.5.2 TranZ By Almuhajir


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227