PDA

View Full Version : تبدیل یک پروژه به یک dll



piroozman
یک شنبه 06 دی 1388, 03:31 صبح
آیا امکان این وجود دارد که یک پروژه های که به زبان csharp نوشته شده است را به یک dll تبدیل کرد؟ و اگر پاسخ مثبت است چگونه؟ با تشکر

مهدی رحیم زاده
یک شنبه 06 دی 1388, 06:57 صبح
نه هر نوع پروژه ای رو!
به عنوان مثال پروژه های WinApp رو نمیشه ! باید پروژه شما از نوع ClassLibrary باشه که در این صورت بعد از کامپایل شما یک فایل Dll خواهید داشت.
موفق باشید

sara.f
یک شنبه 06 دی 1388, 16:25 عصر
نه هر نوع پروژه ای رو!
به عنوان مثال پروژه های WinApp رو نمیشه ! باید پروژه شما از نوع ClassLibrary باشه که در این صورت بعد از کامپایل شما یک فایل Dll خواهید داشت.
موفق باشید

یعنی مثلا اگر بخوایم قسمتی از یک پروژه بزرگ که با WinApp نوشتیم را به Dll تبدیل کنیم نمیشه؟ حتما باید از اول پروژه را از نوع ClassLibrary بنویسیم؟

مهدی رحیم زاده
یک شنبه 06 دی 1388, 17:12 عصر
یعنی مثلا اگر بخوایم قسمتی از یک پروژه بزرگ که با WinApp نوشتیم را به Dll تبدیل کنیم نمیشه؟ حتما باید از اول پروژه را از نوع ClassLibrary بنویسیم؟
گمون نمی کنم که بشه و باید از همون نوع ClassLibrary یک DLL بساری و بعد توی برنامت ازش استفاده کنی.

keivan mousavi
یک شنبه 06 دی 1388, 17:24 عصر
براي نوشتن DLL در #C فقط بايد از Class Library استفاده كرد و لاغير

piroozman
دوشنبه 07 دی 1388, 07:30 صبح
براي نوشتن DLL در C#‎‎ فقط بايد از Class Library استفاده كرد و لاغير
این که فقط از Class Library باشد درست است. اما قابل توجه که اگر شما WinApp هم نوشته باشید می توانید آنرا به یک DLL تبدیل کنید! :
از پروژه ی خود Properties گرفته و در اولین زبانه با نام Application مقدار output type خود را روی Class Library گذاشته و سپس پروژه را Build کنید. شما حالا از Win Application خود یک Dll ناز دارید.
این رو مدیون یکی از دوستانم هستم که مدتی با هم برنامه می نوشتیم.
با تشکر از کلیه دوستان عزیزی که به این تاپیک پاسخ دادند

AliSoft
دوشنبه 07 دی 1388, 21:51 عصر
ميشود dll كرد به شرطي كه ان را ابتدا Buildسپس در رفرنس ان را اضافه كرد يا بصورت زير عمل كنيد:

1)یکpublicکلاس تعریف کنید ، اگر کلاس public نباشد تنها می تواند توسط کلاس هاي دیگر در همان اسمبلی مورد استفاده قرار گیرد . .چ
2)یک نام براي تعریفnamespaceخود جهت استفاده از کلاس در برنامه هاي دیگر تعریف کنید .
3) برنامه راbuildکنید .
4)یکreference از کتابخانه کلاس خود به برنامه خود اضافه کنید.
5)یادتان نرود که ازusingبراي فضا نام مربوط به کلاس هایی که در کتابخانه ساخته اید ، استفاه کنید

modern_amin
سه شنبه 27 دی 1390, 09:19 صبح
خطای زیر رو میده و نمیتونه بسازه !!!!!!!!!!!!
.
A project with an Output Type of Class Library cannot be started directly
In order to debug this project, add an executable project to this solution which references the library project. Set the executable project as the startup project
.
راهکار؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

nunegandom
سه شنبه 27 دی 1390, 11:31 صبح
از solution explorer رو پروژه راست کلیک کن،قسمته Properties قسمته Application و OutPut Type پروژه رو برابر Library بذار و خلاص

modern_amin
سه شنبه 27 دی 1390, 15:44 عصر
سلام دوست عزیز، با تشکر از جوابتون
اینکارو کردم ولی متاسفانه جوابی نگرفتم و خطا میده

shadi khanum
سه شنبه 27 دی 1390, 21:24 عصر
دوست عزیز شما وقتی output type پروژتون رو میذارید class library دیگه نباید پروژتون رو run کنید چون dll که قابل اجرا شدن نیست.بلکه صرفا باید پروژه رو build کنید تا براتون تو پوشه bin یه dll بسازه...
حالا اگه میخواین از این dll استفاده کنید باید یه پروژه win app دیگه تعریف کتید و این dll رو اونجا Add refrence کنید
موفق باشید

modern_amin
چهارشنبه 28 دی 1390, 10:41 صبح
با سلام مجدد
مشکل در اینه که دیباگ نمیشه ، build هم نمیشه
.
اما وقتی رفتم تو پوشه bin ، یه dll اونجا بود (همون dllبرنامم) که تستش هم کردم و جوابم گرفتم