تبليغاتX
آموزش ويژوال بيسيك و برنامه های موبایل
آیا می توان با ویژوال بیسیک فایل Exe ساخت ؟ ( پاسخ به سوال جناب VB6 BEST )

 

با سلام

در این پست انجام یک کار مهم یعنی ساخت فایل اجرایی توسط برنامه را بررسی می کنیم . چیزی که در بیشتر برنامه های تروجان ساز و ویروس ساز مشاهده نموده اید .

 

در ابتدا باید بگویم که ساخت فایل اجرایی جدید توسط برنامه های نوشته شده با ویژوال بیسیک کاری تقریبا غیر ممکن است .

 

حتما از خود می پرسید پس برنامه هایی که اشاره کردیم چگونه فایل اجرایی می سازند ؟

 

با هم برنامه ای که جناب VB6 BEST خواسته بودند را انجام می دهیم.

 

سوال جناب VB6 BEST

 

یک سورس میخواستم که اگه براتون مقدور باشه برامون بزارید!
تو خیلی از برنامه ها ما میتونیم چیزهایی که توی یه تکست نوشتیم رو سیو کنیم که نوشتن اون برنامه خیلی پیچیده نیست !
اما من یک سورس میخوام که مثلا ما در یک فرم یک تکست بزاریم بعد از طریق اون تکست رنگ فرم رو بکنیم قرمز! تا اینجا که اصلا سختی و جود نداره اما من میخوام توی فرم یک دکمه بزارم که وقتی زدیمش صفحه سیو باز بشه و ما بتونیم اون فرمی رو که مثلا رنگش رو کردیم قرمز رو بتونیم با پسوند
exeسیو کنیم و وقتی فایلی رو که سیو کردیم رو باز کنیم صفحه قرمز باز بشه ممنون میشم بگید مرسی.

  

 

پاسخ » جناب VB6 BEST ! روش ذخیره متن و ذخیره فایل Exe دو کار بسیار متفاوت است . در ضمن منظور شما را از اینکه بوسیله تکست رنگ فرم را عوض کنیم متوجه نشدم . اما پاسخ به سوال :

 

توضيح برنامه »  برنامه ای که دارای دو دکمه رنگ و ذخیره است و بوسیله دکمه رنگ , فرم را به رنگ دلخواه در می آوریم و بوسیله دکمه ذخیره , پروژه را با فرمی با رنگ انتخاب شده و پسوند Exe ذخیره می کنیم .

 

در واقع این برنامه از دو پروژه تشکیل می شود که پروژه یک , پروژه ای است که در بالا توضیح آن را خواندید و پروژه دو فایل اجرایی ساخته شده توسط برنامه است . شکل کلی کار این برنامه این است که فایل اجرایی ساخته شده , رنگ فرم را درون خودش ذخیره کرده است و بوسیله پروژه اول فقط آن مقدار را تغییر می دهیم .

 

پروژه یک   

 

پروژه جدیدی با یک فرم ایجاد نمایید سپس در قسمت General فرم متغیر های زیر را بصورت زیر تعریف نمایید :

 

Dim bp As Long

Dim pbag As PropertyBag

Dim arr() As Byte

 

سپس در رویداد Load فرم دستورات زیر را قرار دهید :

 

Set pbag = New PropertyBag

Open App.Path & "\" & App.EXEName & ".exe" For Binary As #1

Get #1, LOF(1) - 3, bp

Seek #1, bp

Get #1, , temp

arr = temp

pbag.Contents = arr

Form1.BackColor = Val(pbag.ReadProperty("Text"))

 

حال از منوی File گزینه Make …  را برگزینید و فایل را با پسوند دلخواه ذخیره کنید .(در اینجا Skr.Dat)

 

کار این پروژه تمام شد و با این پروژه دیگر کاری نداریم و فقط به فایل Skr.Dat نیاز داریم .

 

 

پروژه دو

 

پروژه جدیدی با یک فرم ایجاد نمایید سپس در قسمت General فرم متغیر های زیر را بصورت زیر تعریف نمایید :

 

Dim bp As Long

Dim pbag As PropertyBag

 

 

حال دو دکمه به فرم بیفزایید و در رویداد Click یکی از آنها دستورات زیر را بنویسید :

 

Set pbag = New PropertyBag

pbag.WriteProperty "text", Str(Form1.BackColor)

cd1.Filter = "Exe Files|*.exe"

cd1.ShowSave

If cd1.FileName <> "" Then

FileCopy App.Path & "\Skr.dat", cd1.FileName

Open cd1.FileName For Binary As #1

bp = LOF(1)

temp = pbag.Contents

Seek #1, LOF(1)

Put #1, , temp

Put #1, , bp

Close

End If

 

در رویداد Click دکمه دیگر دستورات زیر را بنویسید :

 

cd1.ShowColor

If cd1.Color <> 0 Then

Form1.BackColor = cd1.Color

End If

 

حال وارد منوی Project شده و گزینه Components را برگزینید و از کادر محاوره ای باز شده تیک گزینه Microsoft Common Dialog Control  را قرار دهید و بر روی Ok کلیک کنید . حای یک کنترل Common Dialog بر روی فرم قرار دهید و نام آن را Cd1 بگذارید .

 

پروژه تمام شد . حال پروژه را در جایی ذخیره کنید و فایلی را که ساختیم (Skr.Dat) را در کنار فایلهای پروژه قرار دهید .

 

 

دانلود پروژه ساخت فایل اجرایی

 

 

در ضمن برنامه درخواستی آقا علیرضا برایشان میل شد . 

موفق باشید .

 

 

            <با نظرات و سوالات خود ما را حمایت کنید>

 

/ نوشته شده در جمعه بیست و یکم دی 1386 و ساعت 10:59 در ارتباط با موضوع پاسخ به سوالات |