PDA

View Full Version : اشکال در کامپایل



mostafa_cpp
شنبه 01 بهمن 1384, 16:39 عصر
سلام

دوستان ، میخواستم بدونم error زیر علتش چیه ؟


Linking...
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16
Debug/inhertiance.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

من یه workspace میسازم ، بعد یه کلاس اضافه میکنم ، وقتی میخوام کامپایل کنم این پیغامو میده
ولی وقتی از محیط visual studio بیرون میام و فایل main.cpp رو باز میکنم ( بدون بازکردن workspace ) برنامه کامپایل میشه .

لطفا منو راهنمایی کنید

C++Lover
یک شنبه 02 بهمن 1384, 02:48 صبح
تو project settings قسمتlinker قسمت command line توی Additional Options اینها رو اضافه کن :


/ENTRY:"wWinMainCRTStartup"


شاید درست بشه...

mostafa_cpp
یک شنبه 02 بهمن 1384, 08:07 صبح
ممنون

این کار برای چیه ؟

من از win32consloe application استفاده کردم مشکلم حل شد ، قبلا از win32 application استفاده میکردم

فرق این دوتا در چیه ؟

seyedof
یک شنبه 02 بهمن 1384, 10:02 صبح
سلام
Lover جان اوون فکر کنم مال یونیکدهاست.
برنامه Win32 Console مثل برنامه داسی میمونه و یه تابع main برای اجرا نیاز داره ولی Win32App
به WinMain نیاز داره چون یک برنامه تحت ویندوز است.
ممنون علی

Inprise
یک شنبه 02 بهمن 1384, 13:15 عصر
مشکلت به کامپایل مربوط نیست ، به لینک مربوطه . مشخصه که کدت به درستی کامپایل شده ، ولیکن به دلیل انتخاب Subsystem غیر مناسب ، امکان لینکش وجود نداشته . وقتی یک Win32 App ایجاد کنی ، نقطهء شروع برنامه ات در سطح کد ، WinMain هست ، و تو متن کدت یا پیکره بندی های پروژه ات قطعا" گزینه ای وجود داشته که تلاش کرده برنامه رو با CRT ی ساب سیستم کنسول لینک کنه ، و چون اونجا WinMain ای وجود نداره ، خطای زمان لینک ِ‌ unresolved external symbol _WinMain@16 رو دریافت کردی .

mostafa_cpp
یک شنبه 02 بهمن 1384, 13:33 عصر
ممنون از توجهتون

منظورتون از ساب سیستم چیه ؟

Inprise
یک شنبه 02 بهمن 1384, 14:05 عصر
روی ویندوز ، چندین ساب سیستم برای اجرای نرم افزار وجود داره که در واقع پائین ترین سطح کدهای زمان اجرای سیستم عامل هستند ؛ مثلا" وقتی یک برنامهء Win32 مینویسی که از API استفاده میکنه ، در حال استفاده از ساب سیستم Windows هستی که پائین ترین کد سیستم عامل روی این ساب سیستم ، API هائی نظیر GDI و User32 و Kernel32‌و ... هستند ، و وقتی در حال استفاده از ساب سیستم Posix هستی ، پائینترین کدهای سیستم عامل ، توابعی مانند Open و Write و ...هستند ؛ برای لینک یک برنامه ، با توجه به ساختار برنامه ، کد باید برای یکی از ساب سیستمها ساخته بشه . برنامه های کنسولی هم از ساب سیستم کنسول استفاده میکنند . برای مطالعه مفصلتر در مورد ساب سیستمها ، توضیحات MSDN دربارهء امکانات Linker ویژال سی رو بخون .

mostafa_cpp
دوشنبه 03 بهمن 1384, 00:03 صبح
ممنون دوست من

با اجازه شما من اسم این تاپیکو به مشکلات VS تغییر میدم تا تمام مشکلات VS اینجا مطرح بشه

اولیشم خودم میپرسم !

جطور میشه فونت ادیتور رو تغییر داد ؟

mostafa_cpp
دوشنبه 03 بهمن 1384, 00:11 صبح
چرا نام تاپیک تغییر نکرد ؟

Inprise
دوشنبه 03 بهمن 1384, 00:39 صبح
دوست عزیز ؛

قرار بر اینه که در هر تاپیک یک سوال مشخص یا تعدادی سوال مربوط بهم پرسیده بشه . برای سوالات بعدی تاپیکها مخصوص به خودشون رو بساز . این مسئله برای کسانی که جستجو میکنن و دنبال اطلاعات خاصی میگردن کمک زیادی میکنه و مسائل نامربوط به هم مخلوط نمیشن .

موفق باشی

mostafa_cpp
دوشنبه 03 بهمن 1384, 05:30 صبح
چشم

من از این موضوع اطلاع نداشتم