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

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




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

نام تاپيک: تبدیل ستاپ پروژه به صورت پرتایل

  1. #1
    پروفشنال shadmehrshadow1's Avatar
    تاريخ عضويت
    Oct 2009
    پست ها
    842

    پيش فرض تبدیل ستاپ پروژه به صورت پرتایل

    سلام
    برنامه هایی که ساخته میشه یا نصبی هستند یا به صورت پرتابل.
    ایجاد و تبذیل پروژه رو به صورت نصبی بلد هستم.
    میخواستم ببینم چه جوری میشه پروژه رو به صورت پرتابل ایجاد کرد که نیاز به نصب نداشته باشه. برنامه دارای dll هم هست .
    ممنون.

  2. #2
    پروفشنال shadmehrshadow1's Avatar
    تاريخ عضويت
    Oct 2009
    پست ها
    842

    پيش فرض

    توی نت چندتا برنامه پیدا کردم. برای مثال vmware thin app که با این برنامه انجام دادم فایل اجرایی که داد رو زدم پیغام خطا داد و برنامه اجرا نشد. البته فایلی که داد هم حجمش به طور عجیبی بالا بود.
    یا برنامه cameyo که خب بهتر عمل کرد و برنامه اجرا شد . ولی خب قبل از اجرا اول اسم برنامه cameyo اومد و بعد از چند ثانیه برنامه اصلی باز شد.
    البته روی سیستم دیگه امتحان نکردم نمیدونم درست عمل می کنه یا نه.
    با برنامه winrar هم امتحان کردم که پسوند فایلی که میده exe نست . Sfx باشه اگه اشتباه نکنم.

    خود ویژوآل استودیو چیزی رو برای این کار نداره ؟
    ممنون میشم اکه دوستان راهنمایی کنند.

  3. #3
    پروفشنال shadmehrshadow1's Avatar
    تاريخ عضويت
    Oct 2009
    پست ها
    842

    پيش فرض

    از دوستان کسی نیست راهنمایی کنه؟

  4. #4
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    برای کارکرد صحیح برنامه تان باید، نسخه مناسب دات نت در رایانه مقصد نصب باشد.
    اینکه بدیهی است وحرفی رویش نداریم.

    می ماند خود برنامه.
    برنامه های دات نت (بجز نصب framework) ذاتا مشکلی در portable بودن ندارند.
    برنامه شما با تمام dll هایش اگر به رایانه مقصد کپی شود، کار خواهد کرد، اگر کار نمیکند باید ببینیم چه کرده اید؟!

    اگر dll هایتان دات نتی هستند و میخواهید همه را با exe تان یکی کنید، تا یک فایل به مردم بدهید که راحت در فلش شان جابجا و اجرا کنند، مشکلی نیست.
    میتوانید از برنامه خط فرمانی رایگان خود مایکروسافت با نام ILMerge استفاده کنید.
    این برنامه امکان یکپارچه کردن dll های دات نتی را درون یک exe دات نتی دارد.
    برنامه های فرعی غیر رایگان دیگری هم مانند reactor هم در کنار امکانات اصلی خود، حتی این امکان را دارند.

    درنهایت شما میتوانید با یک exe و یک فایل config کوچک برنامه تان را در بیشتر شرایط اجرا کنید.
    (فایل config کمک میکند تا با نصب بودن framework نسخه های بالاتر هم برنامه تان کار کند...)

    شب خوش.

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


  6. #5
    پروفشنال shadmehrshadow1's Avatar
    تاريخ عضويت
    Oct 2009
    پست ها
    842

    پيش فرض

    سلام
    برای کارکرد صحیح برنامه تان باید، نسخه مناسب دات نت در رایانه مقصد نصب باشد.
    اینکه بدیهی است وحرفی رویش نداریم.

    می ماند خود برنامه.
    برنامه های دات نت (بجز نصب framework) ذاتا مشکلی در portable بودن ندارند.
    برنامه شما با تمام dll هایش اگر به رایانه مقصد کپی شود، کار خواهد کرد، اگر کار نمیکند باید ببینیم چه کرده اید؟!

    اگر dll هایتان دات نتی هستند و میخواهید همه را با exe تان یکی کنید، تا یک فایل به مردم بدهید که راحت در فلش شان جابجا و اجرا کنند، مشکلی نیست.
    میتوانید از برنامه خط فرمانی رایگان خود مایکروسافت با نام ILMerge استفاده کنید.
    این برنامه امکان یکپارچه کردن dll های دات نتی را درون یک exe دات نتی دارد.
    برنامه های فرعی غیر رایگان دیگری هم مانند reactor هم در کنار امکانات اصلی خود، حتی این امکان را دارند.

    درنهایت شما میتوانید با یک exe و یک فایل config کوچک برنامه تان را در بیشتر شرایط اجرا کنید.
    (فایل config کمک میکند تا با نصب بودن framework نسخه های بالاتر هم برنامه تان کار کند...)

    شب خوش.
    سلام
    ممنونم
    یعنی اگر از برنامه ILMerge استفاده کنم. دیگر نیازی به نصب freamwork نداره؟
    البته وقتی ILMerge رو نصب کردم و اجرا کردم. یک لحظه پنجره ای شبیه به cmd باز شد و بلا فاصله بسته شد. نمیدونمدباید همین طور باشه و نحوه استفاده ازش رو بلد نیستم یا مشکلی داره.

  7. #6
    کاربر فعال انجمن دات نت عــــلی's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    زیر سایه عرش الهی
    پست ها
    2,335

    پيش فرض

    سلام، میتونید از پکیج Costura.Fody هم استفاده کنید.فقط کافیه پکیج رو از طریق package manager ویژوال استادیو به پروژه ای که میخواهید dll هاش مرج بشه اضافه کنید و بیلد کنید.
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

  8. 2 کاربر از عــــلی بخاطر این مطلب مفید تشکر کرده اند


  9. #7
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    یعنی اگر از برنامه ILMerge استفاده کنم. دیگر نیازی به نصب freamwork نداره؟
    همانطورکه اول بحثش را جدا ومشخص کردم، دات نت فریم ورک باید نصب باشد، آن بحثش مشخص است.
    حرف من فقط روی dll هایی است که خودتان (از nuget یا به عنوان لایه بندی نرم افزار ساخته اید و...) به پروژه اضافه کرده اید.

    مثلا برنامه ای دارید که یک dllبابت zip دارد ویکی بابت log برداری و یکی بابت لایه هسته برنامه تان و...
    این ها میتوانید با exe تان یکی کنید. (این را هم فقط برای برنامه های کوچک و دم دستی پیشنهاد میکنم ...)

    برنامه ilmerge همانطورکه اشاره کردم خط فرمانی است، یعنی UI و دکمه و textbox و کلیک و... ندارد.
    باید cmd را اجرا کنید و فرامین را با سوییچ های مورد نیاز در cmd تایپ کنید.
    مثلا شبیه این:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    برای مشاهده help برنامه های خط فرمانی میتوانید از سوییچ "?/" استفاده کنید.
    البته تلاش هایی هم شده که برای این برنامه UI ساخته شود، مثلا
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

    میتوانید هم از برنامه ها وگزینه های ساده تری مانند Costura.Fody (که دوستمان معرفی کردند) با reactor و... استفاده کنید که کاربری راحت تری دارند.

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


  11. #8
    پروفشنال shadmehrshadow1's Avatar
    تاريخ عضويت
    Oct 2009
    پست ها
    842

    پيش فرض

    سلام


    همانطورکه اول بحثش را جدا ومشخص کردم، دات نت فریم ورک باید نصب باشد، آن بحثش مشخص است.
    حرف من فقط روی dll هایی است که خودتان (از nuget یا به عنوان لایه بندی نرم افزار ساخته اید و...) به پروژه اضافه کرده اید.

    مثلا برنامه ای دارید که یک dllبابت zip دارد ویکی بابت log برداری و یکی بابت لایه هسته برنامه تان و...
    این ها میتوانید با exe تان یکی کنید. (این را هم فقط برای برنامه های کوچک و دم دستی پیشنهاد میکنم ...)

    برنامه ilmerge همانطورکه اشاره کردم خط فرمانی است، یعنی UI و دکمه و textbox و کلیک و... ندارد.
    باید cmd را اجرا کنید و فرامین را با سوییچ های مورد نیاز در cmd تایپ کنید.
    مثلا شبیه این:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    برای مشاهده help برنامه های خط فرمانی میتوانید از سوییچ "?/" استفاده کنید.
    البته تلاش هایی هم شده که برای این برنامه UI ساخته شود، مثلا
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

    میتوانید هم از برنامه ها وگزینه های ساده تری مانند Costura.Fody (که دوستمان معرفی کردند) با reactor و... استفاده کنید که کاربری راحت تری دارند.
    خیلی ممنون بابت توضیحاتتون
    فقط برای DLL ها میشه این کار رو کرد یا اینکه مثلا میشه برای فایل های معمولی که باید در مسیر نصب برنامه وجود داشته باشند هم ازش استفاده کرد؟

  12. #9
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    فایل های معمولی که باید در مسیر نصب برنامه وجود داشته باشند هم ازش استفاده کرد؟
    طبیعتا انجام این کار برای برنامه ثالث سخت است.
    چون اگر برنامه دیگری بیاید و این فایلها را درون exe شما جا دهد ولی شما در زمان کدنویسی بروید دستور دهید فایل را از هارد و کنار exe تان برداشته و استفاده کنید، هیچ فایده ای ندارد
    این مورد به شیوه کدنویسی شما وابسته است، طبیعتا وقتی این فایل ها را درون exe یا dll تان جا میدهید، باید کدنویسی تان هم کمی فرق کند ودیگر کاری به مسبر فایل در هارد نداشته باشد(چون فایل آنجا نیست!!!)
    برنامه ثانویه ای بخواهد این کار را برای شما انجام دهد وبرنامه شما کار هم بکند، ارزشی ندارد، چون باید برنامه تان را قبل اجرا در جایی در هارد Extract کند و سپس اجرا کند...
    .
    ولی...
    .
    در اغلب موارد، فایل هایی که برای کار در خود دات نت نیاز دارید وویرایش هم ندارد را خودتان میتوانید درون exe و dll هایتان قرار دهید واز آنها استفاده کنید.
    مثلاً یک فایل متنی یا xml که بابت زبان های برنامه دارید، تصاویر مورد استفاده در خود برنامه ، فایل های wav کوچکی که در زمان رخدادهای خاص پخش شان میکنید...
    همه اینها را خودتان می توانید در Embedded Resources های اسمبلی هایتان جا دهید.
    عبارت Embedded Resources را جستجوکنید.
    موفق باشید وشب خوش.

Thread Information

Users Browsing this Thread

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

User Tag List

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

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