الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

شرح:: برنامج Installaware

بدأه محمد فؤاد تركي في 17 يوليو 2009 · 15 رد · 7,021 مشاهدة · في قسم الدروس والمواضيع المتميزة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الاخوة الاعضاء

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

أحب أن اضع بين ايديكم الشرح الكامل والكمال لله وحده لبرنامج التحزيم الشهير

InstallAware Studio Admin 9.0

post-46243-1247854857_thumb.jpg

والخاص بعمل Setup لبرامجك وذلك بناء علي طلب الكثير من الاعضاء

أولاً سيكون الحديث عن الاصدار التاسع (أحدث اصدار)

حجم البرنامج 12.63 ميجا

والان مع خطوات عمل تحزيم لبرنامجك واخراجة علي شكل ملف Setup EXE

الخطوة الاولي

post-46243-1247855468_thumb.jpg

الخطوة الثانية

post-46243-1247855479_thumb.jpg

الخطوة الثالثة

post-46243-1247855486_thumb.jpg

الخطوة الرابعة

post-46243-1247855495_thumb.jpg

الخطوة الخامسة

post-46243-1247855508_thumb.jpg

الخطوة السادسة

post-46243-1247855518_thumb.jpg

الخطوة السابعة

post-46243-1247855530_thumb.jpg

الخطوة الثامنة

post-46243-1247855553_thumb.jpg

الخطوة التاسعة

post-46243-1247855565_thumb.jpg

الخطوة العاشرة

post-46243-1247855573_thumb.jpg

الخطوة الحادية عشر

post-46243-1247855580_thumb.jpg

يمكنك من خلال هذه الخطوة التعديل واضافة مميزات وخواص لملف Setup من خلال هذه القائمة علي اليسار الملئية بالخيارات والتي يصعب سردها نظراً لكبر حجمها وضيق وقتي لكنها واضحه ولا تحتاج لشرح علي ما أظن

post-46243-1247855602_thumb.jpg

تم تعديل هذه المشاركة بواسطة طارق إبراهيم في 20 يوليو 2009 في 15:52 — السبب: حذف روابط الكراك

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#2

بسم الله الرحمن الرحيم

جزاك الله خيرا وجعل ذلك فى ميزان حسناتك

ربنا يكرمك يا أخى

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

اللهم إنى أتيت بابك مستغفراً فإن غفرت لى وأدخلتنى فأنت أهلٌ لذلك

وإن لم تغفر لى وطردتنى فأنا أهلٌ لذلك

#3

شكرا لك على هذا الشرح استفدت منه الكثير

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

ولدي استفسار بسيط وهو هل يجب أن أنقل للمستخدمين جميع الملف بعد عمل السيت خاصة أن من لديه برنامج الفيجوال بيسك سيستطيع أن يدخل لمشروعي ويعدل عليه كما يشاء فما الذي عليه أن أفعله لأنعه من ذلك

وشكرا لك مرة أخرى

#4

أختي الفاضلة

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

أولاً:- المفروض ان الملف الذي ستقومين بتحزيمة وجعلة Setup هو ملف EXE وليس مصدر المشروع فأذا قمنا بعمل Setup للبرنامج سيظهر للمستخدم ملف EXE وليس مصدر المشروع وبناء علي ذلك لا يستطيع أحد المستخدمين التعديل علي المشروع

ثانياً:- وهذه نقطة مهمة لقد قمت بشرح هذا البرنامج في المقام الاول والاخير لاني لاحظت عدم استطاعتك في قراءة الملف المرفق بواسطة Ghost2010 والذي يشرح طريقة العمل علي البرنامج ولكن باللغة الانجليزية وعلي الرغم من ان الملف المرفق كان في منتهي السهولة لكن عدم استطاعتك لقراءة اللغة الانجليزية منعتك من فهم البرنامج لذلك أنصحك أختي الفاضلة بالاهتمام بعض الشيء باللغة الانجليزية وذلك لعده اسباب

السبب الاول ان معظم الكتب الاحترافية كلها باللغة الانجليزية

السبب الثاني لن تستطيعي تعلم اصول لغة البرمجة الا اذا كنتي تجيدين اللغة الانجليزية بدرجة لابئس بها علي الاقل مساعده نفسك في قراءة وفهم الكتب الاجنبية

السبب الثالث جميع لغات البرمجة أساساً كلها باللغة الانجليزية واستخدامك للغة العربية داخل هذه اللغة سيعقوقك في امور كثيرة

لذلك انصحك بالاهتمام باللغة الانجليزية. . .

تم تعديل هذه المشاركة بواسطة محمد فؤاد تركي في 22 يوليو 2009 في 20:12

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#5

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

وجعل الله ما تقدمه في موازين أعمالك

وبالنسبة للاستفسار الذي استفسرته فأنا فعلا أعمل setup لملف الـ exe ولكن بعد عمل السيت أب وعند الدخول على مجلد البرنامج بعد التثبيت أجد فيه المشروع وجميع الفورم الموجودة في البرنامج مما يجعل التعديل عليها ممكنا لأي شخص يملك برنامج الفيجوال بيسك

تم تعديل هذه المشاركة بواسطة مبرمجة مسلمة في 23 يوليو 2009 في 13:23

#6

أختي الفاضلة

قومي بانشاء مجلد خارجي علي حاسبك وليكن مكانة علي Desktop ثم قومي بنسخ جميع ملفاتك اللازمة لتشغيل برنامجك علي اي جهاز

مثال

قاعدة البيانات (ان وجدت)

ملف EXE

تقارير الكريستال ريبورت (ان وجدت)

ملفات موسيقي مثلاً (ان وجدت)

مكتبات

كل هذا يتم تجميعة في مجلد خارجي

وعند تشغيل برنامج Installaware اختاري عند التحزيم هذا المجلد وثم قومي باختيار EXE ليقوم البرنامج بعمل Shortcut لها وكما في الشرح بعدها وعند تنصيب البرنامج لن يكون معنا البرنامج الاصلي . . . . .

ملحوظة:-

اذا نظرتي الي الخطوة رقم خمسة ستجدي ان برنامج Installaware يأخذ جميع الملفات التي توجد في مجلد Debug

C:\Documents and Settings\Mohamed Fouad\Desktop\WHSystems\WHSystems\bin\Debug

وهذا المجلد من المفترض ان يكون بداخلة جميع الملفات التي اشرت عليها اعلاه

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

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#7

يعطيك ألف عافية يا الغالي على الموضوع المفيد ..

شرح بسيط ومميز ، مشكور وما قصرت .. :) ..

#8

شكرا لك حلت المشكلة بالفعل

#9

مشكور وبارك الله فيك على هذا الشرح والتوضيح

ياريت لو حد عنده روابط يرسلها لي على الخاص

#10

شكرا جزيلا اخ محمد فؤاد التركي

هل استطيع تحميل الفريم وورك + السكيو ال سيرفر ضمن ملف التنصيب

ياريت لو الإجابة بنعم تحدد الخيار المسؤول عن إضافتها ,, وشكرا مره أخرى

#11

السلام عليكم

لك الشكر الجزيل

بس بدي منك خدمة أيها الأخ الكريم

كيف بدي أدخل على السكريبت التابع للبرنامج و أخلليه يستدعي DLL من كيرنيل

و ذلك للحصول على رقم البارتشن للجهاز

أرجو منك الررد و شكرا لكم

قال رسول الله صلى الله عليه و سلم :

عبادة في الهرج كهجرة إلي

وقال أيضاً :

من عيّر أخاه بذنب لم يمت حتى يفعله

أو كما قال

www.dr.syria4soft.com

#12

أو بمعنى آخر كيف سأحصل على الرقم السيريال للهارد ديسك

مثلاً يوجد في برنامج سيت أب فاكتوري وظيفة خاصة بهذا الموضوع

لكني لم أجها في هذا البرنامج

كع كل الشكر

قال رسول الله صلى الله عليه و سلم :

عبادة في الهرج كهجرة إلي

وقال أيضاً :

من عيّر أخاه بذنب لم يمت حتى يفعله

أو كما قال

www.dr.syria4soft.com

#13

شكرااااااااااااا الله يعطيك العافيه

#14

ألف شكر يا أستاذ محمد أنت دائما مبدع

جزاك الله خيرا وجعل ذلك فى ميزان حسناتك

ربنا يكرمك يا أخى

#15

السلام عليكم انا عايزه ابعت كود معلش ومحتجته ضروري وعايزه ابعتلكو في رساله للمسول هنا ومش عارفه اعمل ايه

ومحتاجه الكود ضرووووووري

هو بالغه vb , وعيزه احولو بال C#

وجزاكم الله كل خير

السلام عليكم انا عايزه ابعت كود معلش ومحتجته ضروري وعايزه ابعتلكو في رساله للمسول هنا ومش عارفه اعمل ايه

ومحتاجه الكود ضرووووووري

هو بالغه vb , وعيزه احولو بال C#

وجزاكم الله كل خير

Imports System.String

Imports System.Data.OleDb

Imports System.Data

Public Class Form1

Function indexab()

Dim s, s1, a, b As String

Dim z As Integer

s = (tuc.Text).Trim()

If (s.Length = 0) Then

s = "a1b1"

End If

s1 = s.ToUpper()

tuc.Text = s1

z = s1.IndexOf("B")

a = s1.Substring(1, z - 1)

b = s1.Substring(z + 1, s1.Length - z - 1)

ta.Text = a

tb.Text = b

End Function

Private Sub insertclient()

Dim cmd As New OleDb.OleDbCommand

Dim cnn = New OleDb.OleDbConnection

cnn.ConnectionString = "Provider=Microsoft.Jet.Oledb.4.0; Data Source=" & Application.StartupPath & "\client.mdb"

cnn.Open()

cmd.Connection = cnn

'add data to table

cmd.CommandText = "INSERT INTO tblclient(code, mail, name, points, pass) " & _

" VALUES('" & Me.nuc.Text & "','" & Me.txtmail.Text & "','" & _

Me.txtname.Text & "','" & Me.txtpoints.Text & "','" & Me.txtpass.Text & "')"

cmd.ExecuteNonQuery()

'close connection

cnn.Close()

End Sub

Private Function findnode(ByVal qq As String) As Integer

Dim con As New OleDb.OleDbConnection

Dim Str As String

Dim sql As String

Dim da As OleDb.OleDbDataAdapter

Dim ds As New DataSet

Dim rs As New Object

Dim rc1 As Integer

Str = "Provider=Microsoft.Jet.Oledb.4.0; Data Source=" & Application.StartupPath & "\client.mdb"

con.ConnectionString = Str

con.Open()

sql = "select code from tblclient where code='" & qq & "'"

da = New OleDb.OleDbDataAdapter(sql, con)

da.Fill(ds, "rs")

rc1 = ds.Tables("rs").Rows.Count

If rc1 = 0 Then

findnode = 0

Else

findnode = rc1

End If

con.Close()

End Function

Function addnode()

Dim x1, y1, k1, z1, rc As Integer

Dim f1 As Boolean

indexab()

f1 = True

If (Val(tb.Text) > 2 ^ (Val(ta.Text) - 1)) Then

MsgBox("this is invalid node")

Exit Function

End If

If Val(ta.Text) = 1 And Val(tb.Text) = 1 Then

x1 = Val(ta.Text) + 1

While f1

For i = 1 To 2 ^ (x1 - 1)

y1 = i : z1 = y1

' MsgBox("a" & x1 & "b" & z1)

rc = findnode("a" & x1 & "b" & z1)

If rc = 0 Then

f1 = False

Exit For

End If

Next

x1 = x1 + 1

End While

Else

x1 = Val(ta.Text) : y1 = Val(tb.Text) : k1 = 0

x1 = x1 + 1 : k1 = k1 + 1

While f1

y1 = y1 - 1

y1 = 1 + 2 * y1

For i = y1 To 2 ^ k1 + y1 - 1

z1 = i

'MsgBox("a" & x1 & "b" & z1)

rc = findnode("a" & x1 & "b" & z1)

If rc = 0 Then

f1 = False

Exit For

End If

Next

x1 = x1 + 1 : k1 = k1 + 1

End While

End If

nuc.Text = "a" & x1 - 1 & "b" & z1

insertclient()

End Function

Public Sub reset()

txtmail.Text = ""

txtname.Text = ""

txtpass.Text = ""

tuc.Text = ""

txtpoints.Text = 0

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

Dim ffr As Integer

If rfriend.Checked = True And (tuc.Text).Trim().Length() = 0 Then

MsgBox("يجب ادخال كود الصديق اواختار الاشتراك عن طريق الشركة")

Exit Sub

ElseIf rcomp.Checked = True Then

ffr = 1

Else

ffr = findnode(tuc.Text)

If ffr = 0 Then

MsgBox("الكود غير صحيح")

Exit Sub

End If

End If

If rb1.Checked = True Then

addnode() : nuc1.Text = nuc.Text

nuc2.Text = ""

nuc3.Text = ""

nuc4.Text = ""

nuc5.Text = ""

nuc6.Text = ""

nuc7.Text = ""

MsgBox("congratulation!!. now you have one account")

reset()

rb1.Checked = False

ElseIf rb2.Checked = True Then

addnode() : nuc1.Text = nuc.Text

tuc.Text = nuc.Text

addnode() : nuc2.Text = nuc.Text

addnode() : nuc3.Text = nuc.Text

nuc4.Text = ""

nuc5.Text = ""

nuc6.Text = ""

nuc7.Text = ""

MsgBox("congratulation!!. now you have three account")

reset()

rb2.Checked = False

ElseIf rb3.Checked = True Then

addnode() : nuc1.Text = nuc.Text

tuc.Text = nuc.Text

addnode() : nuc2.Text = nuc.Text

addnode() : nuc3.Text = nuc.Text

addnode() : nuc4.Text = nuc.Text

addnode() : nuc5.Text = nuc.Text

addnode() : nuc6.Text = nuc.Text

addnode() : nuc7.Text = nuc.Text

MsgBox("congratulation!!. now you have seven account")

reset()

rb3.Checked = False

Else

MsgBox("!!!!يجب اخيار نوع الاشتراك اولا")

End If

End Sub

Private Sub rfriend_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rfriend.CheckedChanged

If rcomp.Checked = True Then

tuc.Visible = False

lbfc.Visible = False

Else

tuc.Visible = True

lbfc.Visible = True

End If

End Sub

Private Sub rcomp_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rcomp.CheckedChanged

If rcomp.Checked = True Then

tuc.Visible = False

lbfc.Visible = False

Else

tuc.Visible = True

lbfc.Visible = True

End If

End Sub

Function indexcode()

Dim s, s1, a, b As String

Dim z As Integer

s = (tucode.Text).Trim()

If (s.Length = 0) Then

s = "a1b100"

End If

s1 = s.ToUpper()

tuc.Text = s1

z = s1.IndexOf("B")

a = s1.Substring(1, z - 1)

b = s1.Substring(z + 1, s1.Length - z - 1)

ta.Text = a

tb.Text = b

End Function

Private Sub bcalcpoint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bcalcpoint.Click

Dim xyz, sumc, x1, y1, z1, rc, k1 As Integer

Dim f1 As Boolean

sumc = 0

xyz = findnode((tucode.Text).Trim())

If (xyz = 0) Then

MsgBox("هذا الكود غير صحيح")

Else

indexcode()

f1 = True

x1 = Val(ta.Text) : y1 = Val(tb.Text) : k1 = 0

x1 = x1 + 1 : k1 = k1 + 1

While f1

y1 = y1 - 1

y1 = 1 + 2 * y1

For i = y1 To 2 ^ k1 + y1 - 1

z1 = i

'MsgBox("a" & x1 & "b" & z1)

rc = findnode("a" & x1 & "b" & z1)

If rc = 0 Then

f1 = False

Exit For

Else

sumc = sumc + 1

End If

Next

x1 = x1 + 1 : k1 = k1 + 1

End While

End If

clientc.Text = sumc

Dim points As Integer

Select Case sumc

Case Is >= 8190 'l13

points = 11550

Case Is >= 4094 'l12

points = 11050

Case Is >= 2046 'l11

points = 10550

Case Is >= 1022 'l10

points = 10050

Case Is >= 510 'l9

points = 5550

Case Is >= 254 'l8

points = 4900

Case Is >= 126 'l7

points = 4250

Case Is >= 62 'l6

points = 3600

Case Is >= 30 'l5

points = 2800

Case Is >= 14 'l4

points = 2000

Case Is >= 6 'l3

points = 1000

End Select

pointcount.Text = points

End Sub

End Class

#16

بسم الله الرحمن الرحيم

جزاك الله خيرا وجعل ذلك فى ميزان حسناتك

مواضيع مشابهة