تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 3 از 3

نام تاپيک: ساختن نسخه پرتابل از برنامه مون

  1. #1
    اگه نباشه جاش خالی می مونه 301's Avatar
    تاريخ عضويت
    Jul 2007
    محل سكونت
    301World
    پست ها
    218

    11 ساختن نسخه پرتابل از برنامه مون

    سلام به همه برنامه نویس های VB

    نکته : چون خواستم میتدی ها هم بتونن این کارو بکنن، آموزش رو به صورت قدم به قدم نوشتم حرفه ای ها خسته نشن

    برای ساختن نسخه پرتابل نرم افزارمون ما باید فایل هایی که تو برنامه مون استفاده شده و منبع خارجی داره رو به برنامه مون بچسبونیم و قبل از اجرا شدن برنامه اونا رو همون جایی که لازمه قرار بدیم. مثلا اگه از فایل Dll خواصی تو برنامه استفاده کردیم توی پوشه system32 قرار بدیم یا فونت ها رو تو پوشه Fonts.

    ما تو این مثال می خوایم یه فایل Ocx ، یه فایل Dll ، یه فایل فونت (Ttf) و یه فایل Jpg رو به برنامه بچسبونیم تا برناممون دیگه به این فایل ها نیاز نداشته باشه و از تو خودش اجرا کنه.
    Visual C++ رو باز کنید از منوی File گزینه New رو انتخاب کنید.
    در تب Resource Script،Files رو انتخاب کنید.
    تو پنجره ای که اومد کلیک راست کنید و Import رو انتخاب کنید، Files Type رو *.* قرار بدید.
    فایل Ocx ای که تو برنامتون استفاده شده رو انتخاب کنید. پنجره ای که باز شده نوع Resource رو می خواد بدید Ocx.
    خوب پنجره ای که باز شد رو ببندید و روی فایلی که تو پوشه Ocx هستش کلیک راست کنید و Properties رو بزنید و ID شو عوض کنید مثلا بزارید 1001 .
    دوباره کلیک راست کنید و Import رو بزنید و فایل Dll مورد نظرتون رو انتخاب کنید.
    نوع ریسورس رو بنویسید Dll و ID شو بزارید 1002. حالا فایل Jpg رو Import کنید و نوع شو بنویسید Jpg و ID ایش هم 1003.
    حالا نوبت به فایل Ttf می رسه Import اش کنید و نوع Ttf و ID رو براش 1004 قرار بدید.
    کارمون تو این قسمت تموم شد. به منوی فایل برید و گزینه Save as رو بزنید و Save as type رو res.* انتخاب کنید و ذخیرش کنید. حالا به VB برید.
    خوب تو قسمت پروژه کلیک راست کنید و از منوی بازشو Add و سپس AddFile... رو انتخاب کنید یا می تونید از منوی Project گزینه Add File… رو انتخاب کنید، فایل ریسورس رو به پروژه تون اضافه کنید.
    خوب حالا یه ماژول باز کنید (از منوی Project گزینه Add Module) و توش بنویسید
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    خوب تو این روال یه متغییر از نوع Byte تعریف کنید
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    حالا باید فایل های ریسورس رو تو اونجاهایی که می خواییم کپی کنیم. اینجوری
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    تو خط اول فایل ریسورس رو لود میکنیم می ریزم تو متغییر M و 1001 همون ID فایل هستش و Ocx نوع فایل.
    تو خط دوم یه فایل باینری با نام فایل Ocx مون تو مسیری که باید قرار بگیره به عنوان مثال تو System32 باز میکنیم و در خط سوم فایل ریسورس رو تو فایل باینری می نویسم و در خط چهارم فایل باینری رو می بندیم.
    برای فایل Dll و Ttf هم از همین روش استفاده می کنیم.
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    فایل های Jpg رو نمیشه مستقیما تو PictureBox نمایش داد برای همین باید کپی کنیم تو یه مسیری و از اونجا لودش کنیم
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    بجای پوشه Temp از App.Path هم می تونیم استفاده کنیم ، فکر کنم اینجوری بهتر باشه.
    اگه فایل تون Bmp بود می تونید از این روش استفاده کنید.
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    در آخر روال هم فرمی که هنگام شروع باید باز بشه رو نمایش بدید.
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    نکته : حتما Startup پروژه تون رو Sub Main قرار بدید.(منوی Project گزینه Project1 Properties)
    زمانی که فرم1 باز می شه چون تمام فایل های مورد نیازش سرجاشون هستن هیچ اخطاری نمی ده و به درستی کار می کنه. دیگه هیچ احتیاجی به ساختن ستاپ برای برنامه مون نداریم
    کل کد ها رو دوباره می نویسم
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    البته اگه تعداد فایل هاتون زیاده می تونید یه فرم Splash نمایش بدید تا تمام فایل ها لود بشن.
    امیدوارم بدردتون خورده باشه
    تشکر یادتون نره

  2. این کاربر از 301 بخاطر این مطلب مفید تشکر کرده است


  3. #2
    اگه نباشه جاش خالی می مونه
    تاريخ عضويت
    Jul 2006
    محل سكونت
    ++3D
    پست ها
    259

    پيش فرض

    سلام!

    خیلی روش خوب و جالبیه!
    آفرین!...

    ولی اگه اجازه بدید یکم کدتون رو قشنگتر و آسونتر کنم...

    با اجازه استاد:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    خوب اینجوری هم راحتتر میشه فایل ها رو اضافه کرد (به کدنویسی کمتری احتیاج داره) و هم از دوباره نویسی فایل ها جلوگیری میشه (اگر فایل موجود باشه دیگه ایجاد نمیکنه).

    ببخشید اگر دخالت کردم -- فقط میخواستم بهتر بشه...

    یه نظر دارم چطوره یه برنامه بنویسیم که خودش فایلها رو بگیره و به ریسورس تبدیل کنه و برای برنامه کدش رو هم Generate کنه؟ -- نظرتون چیه؟

    ممنون و سپاسگذارم!
    موفق باشین

  4. این کاربر از Smafias بخاطر این مطلب مفید تشکر کرده است

    301

  5. #3
    اگه نباشه جاش خالی می مونه 301's Avatar
    تاريخ عضويت
    Jul 2007
    محل سكونت
    301World
    پست ها
    218

    پيش فرض

    سلام
    خواهش می کنم، روش شما عالی بود.
    بابت کوتاه و مرتب کردن کد ها ممنونم.
    با نوشتن برنامه پرتابل کننده موافقم اگه انجام بدیم برنامه عالیه ای میشه.
    یا علی

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •