مشاهده نسخه کامل
: کدام ورژن .net ?
limpizik2x
08-05-2015, 15:02
سلام دوستان
آیا راهی هست که بشه برنامه کامپایل شده با C# که با فریمورک ورژن 2 کامپایل شده روی ورژن 4 اجرا کرد؟(یا بلعکس)
حتما باید ورژن فریمورکی که با اون برنامه کامپایل شده روی سیستم اجرا کننده برنامه نصب باشه؟روی ورژن دیگه جواب نمیده؟
ترفندی وجود نداره که بشه برنامه رو طوری تنظیم کرد که قابلیت اجرایی روی تمام ورژنها رو داشته باشه؟
ممنونم
سلام
اجرای برنامه های تحت دات نت با نسخه کمتر روی رایانه هایی با دات نت بالاتر مشکلی ندارد و با یک تنظیم ساده ممکن است.
یعنی اگر برنامه تان تحت dotNet2 بوده ولی رایانه مقصد فقط dotNet4 داشته باشد مشکلی نیست.
(متاسفانه در برخی موارد دیده میشود دوستان کم اطلاع وجود این امکان را در دات نت منکر شده و آن را جزء معایب دات نت میگذارند که همانطورکه داستان پند آموز و کهن ایرانی هم مانند "مرزبان نامه" وجود دارد، لازم است در نفی چیزی که نمیدانیم دقت بیشتری کنیم...)
جواب:
کافیست یک فایل app.config به پروژه تان با محتویات زیر اضافه کنید:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
(در مورد تگ supportedRuntime جستجو و تحقیق کنید) ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ])
این فایل با نام app.config به پروژه VS اضافه میشود و تنظیماتی را برای برنامه حمل میکند.
البته حتی بدون داشتن سورس برنامه و پس از کامپایل هم میتوان فایل فوق را با نام Filename.exe.config وفرمت UTF8 در کنار فایل Filename.exe ایجاد کنید و تنظیمات فوق اعمال خواهد شد.
limpizik2x
09-05-2015, 16:02
سلام
اجرای برنامه های تحت دات نت با نسخه کمتر روی رایانه هایی با دات نت بالاتر مشکلی ندارد و با یک تنظیم ساده ممکن است.
یعنی اگر برنامه تان تحت dotNet2 بوده ولی رایانه مقصد فقط dotNet4 داشته باشد مشکلی نیست.
(متاسفانه در برخی موارد دیده میشود دوستان کم اطلاع وجود این امکان را در دات نت منکر شده و آن را جزء معایب دات نت میگذارند که همانطورکه داستان پند آموز و کهن ایرانی هم مانند "مرزبان نامه" وجود دارد، لازم است در نفی چیزی که نمیدانیم دقت بیشتری کنیم...)
جواب:
کافیست یک فایل app.config به پروژه تان با محتویات زیر اضافه کنید:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
(در مورد تگ supportedRuntime جستجو و تحقیق کنید) ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ])
این فایل با نام app.config به پروژه VS اضافه میشود و تنظیماتی را برای برنامه حمل میکند.
البته حتی بدون داشتن سورس برنامه و پس از کامپایل هم میتوان فایل فوق را با نام Filename.exe.config وفرمت UTF8 در کنار فایل Filename.exe ایجاد کنید و تنظیمات فوق اعمال خواهد شد.
یه دنیا ممنون از پاسختون:n16:
آیا راهی وجود دارد که فایل Filename.exe.config به برنامه ضمیمه شود؟
limpizik2x
10-05-2015, 16:42
آیا امکانش هست فایل app.config رو embed کرد؟
سلام
فایل تنظیماتی دیگری هم به نام manifest داریم که داخل exe قرار میگیرد ولی فایل config باید خارج باشد، چون تفکر و تنظیمات درون آن چیزهایی هستند که باید بتوان پس از کامپایل ویرایش شان کرد مانند ConnectionString و Settings و...
البته همواره راه های محیرالعقولی(!) برای بسته بندی کل یک مجموعه در exe وجود دارد...
اینکه یک exe ثانویه داشته باشید که تعداد زیادی فایل و پوشه و... را درخود جای دهد و درزمان اجرا، آنها را در مسیر موقتی (مانند پوشه Temp) Extract کند و سپس برنامه اصلی را اجرا کند...
خیلی از محصولات بظاهر تک فایلی خارجی این کار را انجام میدهند
ولی باز برای شما سخت است چون میخواهید مستقل از نسخه دات نت باشید، در نتیجه راهش برای شما سخت تر خواهد شد!
ایرادی ندارد، فقط یک فایل است، بگذارید کنار exe تان باشد.
موفق باشید.
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.