ورود

View Full Version : خبر: ويرايش دوم كتاب آموزش مقدماتي MFC در Visual C++2008



Jenab4372
سه شنبه 28 مهر 1388, 19:29 عصر
سلام
ويرايش دوم كتاب آموزش مقدماتي MFC را به علاقه مندان به برنامه نويسي تقديم ميكنم. در اين نسخه بسياري از ايرادات ويرايش قبلي برطرف شده.


منابع استفاده شده در كتاب

سايت www.codeguru.com (http://www.codeguru.com) و MSDN مايكروسافت (60%)
كتاب برنامه نويسي در 21 روز انتشارات نص (25%)
سايت barnamenevis.org با تشكر ويژه از آقاي Nima_NF مدير بخش (15%)

هرچند در اينجا ميزان منابع استفاده شده از سايت barnamenevis.org پانزده درصد ذكر شده است ولي بايد بگوييم كه انصافا 80% كمكي كه براي تكميل مطالب اين كتاب نياز داشتم را از مدير بخش و دوستان فعال در سايت دريافت كرده ام كه كمال تشكر را از آنها دارم.




فهرست مطالب مهم كتاب

مقدمه
چرا از ++C استفاده كنيم
به طور كلي چند نوع شیوه برنامه نویسی برای سي پلاس پلاس وجود دارد
كدام روش را انتخاب كنيم

فصل اول
آشنايي با محيط ويژوال استديو
آشنايي با كليات و مفاهيم زبان سي پلاس پلاس
تعريف متغيير و انواع آنها
ميدان ديد متغيير ها
تعريف توابع و ارسال پارامتر به آنها
انجام عمليات محاسباتي مانند جمع ، تفريق ، ضرب و ...
دستور شرطي if براي كنترل برنامه
استفاده از and و or منطقي
دستور using

فصل دوم
شروع برنامه نويسي در محيط ويژوال استديو به روش MFC
توضيحاتي در مورد پنجره هاي پروژه در محيط ويژوال مانند Solution Explorer ، Class View ، Properties و ...
پنجره توضيحات برنامه (About Dialog)
توليد آسان آيكونهاي زيبا براي برنامه توسط نرم افزار Sib Icon Editor
كامپايل نهايي پروژه به صورت يك برنامه مستقل و بدون نياز به نصب (Portable)
توليد يك برنامه نصب براي پروژه (Setup)
گرفتن راهنمایی فوری از MSDN
چگونه در برنامه نویسی استاد شویم

فصل سوم
کنترل های اصلی ویندوز مانند متن ثابت، جعبه اديت، دكمه فرمان و ...
طراحي پنجره برنامه برنامه، تنظيم خواص ، چيدن و مرطب كردن كنترلها بر روي آن
ست كردن نام شناسايي (ID) كنترلهاي برنامه، نسبت دادن متغير و عملياتي كردن آنها
نمايش پيام كاربر و اجراي برنامه هاي ديگر
غير فعال يا فعال نمودن كنترلها ، مرئي يا نا مرئي كردن آنها
تعيين ترتيب حركت بين كنترلها (Tab Order)

فصل چهارم
استفاده از ماوس و كي بورد
نقاشي با ماوس
استفاده از AND و OR باينري
پرچمهاي باينري(Flags)
بدام انداختن رويدادهاي كي بورد
تغيير دادن كرسر

فصل پنجم
ساختن آيكون در سيستم تراي ويندوز (آيكون هاي بغل ساعت ويندوز)
حذف آيكون سيستم تراي در هنگام خروج يا اجراي برنامه
تشخيص كليك شدن ماوس بر روي آيكون سيستم تراي برنامه
نمايش داده نشدن پنجره برنامه هنگام شروع
مخفي شدن پنجره پروژه هنگام انتخاب كليد Minimize
نمايش منو در صورت راست كليك كردن بر روي آيكون سيستم تراي
تغيير خواص و مشخصات سيستم تراي برنامه مانند آيكون و متن راهنما به هنگام اجرا
نمايش بالون در سيستم تراي
محو كردن بالون به نمايش در آمده در سيستم تراي

فصل ششم
اطلاعات اوليه درباره رجيستري ويندوز
تهيه پشتيبان از رجيستري و بازيابي دوباره آن
نوشتن يك رشته از نوع CString در رجيستري ويندوز
خواندن يك رشته از نوع CString از يك كليد در رجيستري
نوشتن يك عدد از نوع long در رجيستري
خواندن يك عدد از نوع long از رجيستري
حذف داده از يك كليد در رجيستري
حذف كليد از رجيستري
شمارش كليدهاي يك مسير از رجيستري
شمارش داده هاي يك مسير از رجيستري

فصل هفتم
افزودن تايمر به برنامه
غير فعال كردن تايمر

فصل هشتم (مباحث متفرقه)
الگوریتم تبدیل تاریخ میلادی به تاریخ شمسی
اجراي يك پنجره ديالوگ ديگر در هنگام اجراي برنامه
شيشه اي كردن پنجره ديالوگ
تغيير عكس ميز كار (Desktop)
مشخص كردن تعداد درايوهاي متصل به سيستم
خواندن نام فايلها و پوشه هاي يك مسير
تغيير خواص يك فايل يا پوشه
حذف فايل

لینک دانلود کتاب از سرور مدیا فایر
http://www.mediafire.com/?je0lufm6rdab5mm


براي دانلود كتاب آموزش مقدماتي MFC بر روي عكس آن كليك كنيد


http://jenab.persiangig.com/E-BOOK/Cover.jpg (http://barnamenevis.org/downloads.php?do=file&id=46&act=down)

Nima_NF
چهارشنبه 29 مهر 1388, 22:45 عصر
مطمئنا با این کار به بسیاری از دوستان کمک زیادی خواهید کرد.

چیزی که همچنان خیلی نیاز هست، ایجاد بخشی برای آموزش تغییرات گذشته با نسخه های جدید هست، تا کاربران قدیمی ++C که از کتاب های گذشته استفاده می کنند بتوانند راحت با این کتاب نیز کار کنند.

چند نکته:
- منابع و کتاب های استفاده شده را حتما ذکر کنید.
- از بخش "کتابخانه فایل ها" در سایت برای قرار دادن کتاب استفاده کنید (این لینک) (http://barnamenevis.org/forum/downloads.php)

موفق باشید

leili7107
پنج شنبه 28 آبان 1388, 01:44 صبح
سلام. ممنون که این کتاب را تهیه و در این سایت قرار دادید.
من دو تا برنامه دارم که یکی با Win32 و در مورد پردازش تصویر است و از کتابخانه OpenCV استفاده کردم و برنامه دوم کار با پورت سریال است که با MFC و Comport.dll کار کردم. اما نیاز دارم که این دو برنامه را تلفیق کنم تا یک خروجی داشته باشه.
آیا همچون کاری امکان پذیر است؟چگونه؟
ممنون میشم اگر دوستان کمک کنند تا مشکل من حل بشه:لبخندساده:

Nima_NF
پنج شنبه 28 آبان 1388, 11:36 صبح
آیا همچون کاری امکان پذیر است؟چگونه؟
ابتدا یک پروژه MFC بسازید، سپس در آن می توانید تمامی کدهای win32 را استفاده کنید.
این طور فکر نکنید که هر چه هست باید کپی کنید، ابتدا با مباحث اولیه win32 آشنا شوید، سپس اگر مثلا نیازمند ساخت یک دیالوگ به شیوه win32 هستید، کدهای تابع انجام پیام های دیالوگ و همین طور اعلان این تابع را در داخل یکی از فایل های cpp قرار دهید. برای فراخوانی هم دقیقا همان توابع win32 را استفاده کنید.
فقط تنها کاری که لازم هست انجم دهید، دریافت hwnd و Hinstance کلاس مورد نظر در MFC هست (اولی عضو داده ای Cwnd است و دومی با ماکرو دریافت می شود، در FAQ بخش جستجو کنید)

leili7107
شنبه 30 آبان 1388, 22:25 عصر
ممنون از راهنماییتون
مشکل من این بود که Linker ها را درست مشخص نکرده بودم و برنامه نمی توانست از کتابخانه استفاده کنه.
با اضافه کردن کتابخانه های مورد نظر خطای برنامه بر طرف شد.

hosseinzpp
سه شنبه 21 اردیبهشت 1389, 20:54 عصر
با سلام
من یک متن یا شکلی روی دیالوگ رسم می کنم چرا در هنگام حرکت دادن دیالوگ محتویات آن پاک میشود
برای رفع مشکل چکارکنم؟( زبان برنامه MFC است)
ممنون اگه کسی جواب بده.
hosseinjavidian@gmail.com

محمد فدوی
شنبه 05 تیر 1389, 11:28 صبح
سلام، دوست عزیز.
هر بار که دیالوگ رو جابجا می کنید، اونو از صفحه خارج می کنید یا... رویداد WM_PAINT فرم رو دوباره بازرسم می کنه.:متعجب: برای اینکه اشکال کشیده شده توی فرم از بین نرن باید یک تابع ایجاد کنید که مثلاً وظیفه ی رسم اشکال رو داشته باشه، سپس اون رو در آخر تابع OnPaint فراخوانی کنید. امیدوارم توضیحاتم رو درست و کامل داده باشم.

BeginnerProgrammer
شنبه 02 مرداد 1389, 11:11 صبح
من یه کد با ام اف سی نوشتم وقتی کامپایلش می کنم همش این خطا رو میگیره
LINK : fatal error LNK1000: Internal error during IncrBuildImage
ولی وقتی یه بار دیگه یه ذره تغییرش میدم مثلا یه جا فاصله رو میزنم که دوباره کامپایل بشه اجرا میشه
نمیدونم مشکلش چیه یه پروژه جدیدم درست کردم همین مشکل پیش اومد.
چیکار کنم؟؟؟؟؟؟؟؟؟؟؟؟؟/
Tanx

mk8800
یک شنبه 07 آذر 1389, 01:08 صبح
میبخشید میپرسم چون ممکنه بی ربط باشه تو نسخه های جدید vc++ برنامه کمپایل شده حتما به دات نت ها نیاز داره؟

mk8800
یک شنبه 07 آذر 1389, 23:52 عصر
آقا ای ول کار بزرگی کردی این طور مرجعی حتی در سطح مقدماتی واقعا برای MFC لازم بود
خودم من مجبور شدم اونو با کلی مکافات و تازه ناقص از منابع انگیلیسی یاد بگریم
آقا موفق باشی واقا براش خیلی زحمت کشیدی باز از این کار ها بکن:تشویق::تشویق::تشویق:

mk8800
دوشنبه 08 آذر 1389, 00:01 صبح
با سلام
من یک متن یا شکلی روی دیالوگ رسم می کنم چرا در هنگام حرکت دادن دیالوگ محتویات آن پاک میشود
برای رفع مشکل چکارکنم؟( زبان برنامه MFC است)
ممنون اگه کسی جواب بده.
hosseinjavidian@gmail.com
ببین قکر کنم اینچا جای این سوال نبود
فکر کنم باید DC فرم رو لاک کنی تو زیر مجموعه کلاس DC از فرم بگرد پیداش میکنی
بابا نمیدونی کارکردن با این VC6 چه دردسری داره . . . خیلی از توابعش با ویندوز های بعد از 98 کار نمیکنه!

sonixax
چهارشنبه 17 آذر 1389, 20:14 عصر
لینک دانلودش خرابه ، میشه یک بررسی بکنید ؟

cardano7
جمعه 03 دی 1389, 03:42 صبح
لینک دانلودش خرابه ، میشه یک بررسی بکنید ؟
صد سال دیگه هم اینجا بپوسیم کسی گویا محل نمی گذاره

cardano7
یک شنبه 05 دی 1389, 02:56 صبح
آخرش کار خودمونه:
http://www.4shared.com/file/GrIqM3u3/Beginning_MFC_in_Visual_Studio.html

shaligar
پنج شنبه 16 دی 1389, 11:32 صبح
اقا اين لينك كه باز نميشه ؟ برداشتين ؟ چه كار كنم ؟................... باز ميشه اشتباه از من بود .ببخشيد

milad.biroonvand
شنبه 02 بهمن 1389, 17:08 عصر
این کتاب پسورد داره

behnamelec
یک شنبه 03 بهمن 1389, 08:34 صبح
اول کتاب غلط املایی داره . وسعت درسته نه وصعت

hasan_esfahan
دوشنبه 18 بهمن 1389, 10:16 صبح
اقای دکتر
behnamelec شما زحمت بکش کتاب را بخون. بنده خدا این همه زحمت کشیده حالا جای تشکر این جواب را میدی .هنوز ما جز کشور های جهان هزارومی هستیم

zahmatkesh8519
دوشنبه 02 اسفند 1389, 11:25 صبح
سلام
دستت درد نکنه کتاب خوبی باید باشه
احتمال وجود چنین کتابی به فارسی رو نمی دادم
تشکر

robat7
شنبه 07 اسفند 1389, 05:02 صبح
سلام
دست گلت درد نکند من واقعا به همچون مرجعی برای شروع نیاز داشتم. برایت از ایزد یگانه آروزی بهروزی دارم. شاد و تندرست باشی

phantom
پنج شنبه 25 فروردین 1390, 20:11 عصر
می خواستم یک برنامه شبیه ساز سیال بنویسم. مثل این برنامه ای که تو سایت زیر هست. اگر یک دقیقه از فیلم سایت رو ببینید متوجه میشید چه جوریه. http://xflowcfd.com/
حالا چند سوال:
1- زبان برنامه نویسی چی باشه: C++ یا C++.net یا C#.net
2- از چه شیوه ای استفاده کنم: مثلا particle system یا چیز دیگه.
3-از کتاخانه گرافیکی dx استفاده کنم یا opengl یا یه چیز دیگه.
این رو توی یک تاپیک دیگه گذاشتم و کسی جوابم رو نداد. امیدوارم اینجا یکی باشه که با دلیل جواب بده.

ممنون.

emrali
شنبه 04 تیر 1390, 02:40 صبح
با عرض پوزش

من می خوام كتاب آموزش مقدماتي MFC دانلود کنم با این پیغام روبرو میشم چی کار باید بکنم

اشکال در زمینه کار با بانک اطلاعات سایت
ضمنا هر سه گزینه رو تست کردم نشد.

zahmatkesh8519
یک شنبه 12 تیر 1390, 16:30 عصر
لینک دانلود مستقیم کتاب Beginning MFC in Visual Studio
http://s4.uploadbaz.com/files/1/jdwtdjagbydxyk/dlr.phpname_vc6
دانود ار 4share
http://www.4shared.com/file/GrIqM3u3/Beginning_MFC_in_Visual_Studio.html#

Sharif Lotfi
سه شنبه 21 تیر 1390, 00:28 صبح
آقا بهزاد خيلي لطف كردي هزار تا ممنون

mojtabat82
جمعه 09 دی 1390, 18:14 عصر
سلام کسی کدهای ارتباط با sql تو mfc ها رو داره ؟

mojtabat82
جمعه 09 دی 1390, 18:18 عصر
سلام کسی کد ارتباط با sql تو mfc ها رو داره ؟

saeed-71
شنبه 19 فروردین 1391, 00:07 صبح
سلام دانلود نشد.لینک دانلود رو تصحیح کنید لطفا.

mahllaa
سه شنبه 09 خرداد 1391, 22:23 عصر
سلام یه سوال
روی لپ تاپم ویژوال استدیو 2010 نصبه!اما هرچی میگردم توی new project چیزی به نام mfc نمیبینم!
فقط windows aplication هست!
اینا چه فرقی با هم دارن؟؟؟
چه طور میتونم mfc رو نصب کنم؟؟؟
mfc توی ورژن 2010 هم هست؟؟؟

farzad.love
سه شنبه 09 خرداد 1391, 22:58 عصر
لینک دانلود خرابه. لطفا" لینک رو اصلاح کنید تا ما هم بتونیم ویرایش دوم کتاب آقای جناب رو دانلود کنیم. مرسی

jeson_park
جمعه 12 خرداد 1391, 10:26 صبح
سلام یه سوال
روی لپ تاپم ویژوال استدیو 2010 نصبه!اما هرچی میگردم توی new project چیزی به نام mfc نمیبینم!
فقط windows aplication هست!
اینا چه فرقی با هم دارن؟؟؟
چه طور میتونم mfc رو نصب کنم؟؟؟
mfc توی ورژن 2010 هم هست؟؟؟
نباید اینجا پست می دادین
در VS 2010 هست
وقتی وارد قسمت new project شدین سمت چپ باید باشه
توی قسمت Visual C++‎‎‎ Projects باید MFC Application رو انتخاب کنید
http://www.cprogramming.com/tutorial/game_programming/new_project.png

mahllaa
جمعه 12 خرداد 1391, 19:06 عصر
نباید اینجا پست می دادین
در VS 2010 هست
وقتی وارد قسمت new project شدین سمت چپ باید باشه
توی قسمت Visual C++‎‎‎‎‎ Projects باید MFC Application رو انتخاب کنید

شرمنده نخواستم بیخودی تاپیک ایجاد کنم!
باور کنید نیست :متعجب:
اصلا منوی من این شکلی نیست:متفکر:
این همه کزینه نداره 6 تا بیشتر نیستن
سمت چپش هم 3 تا کزینه بیشتر نداره

crackgns
چهارشنبه 24 خرداد 1391, 22:34 عصر
اینکه این کتاب رو برای دانلود گذاشتین نشون دهنده ی اینه که به پیشرفت برنامه نویسی وبالا بردن معلومات برنامه نویسان بیشتر از امور مادی اهمیت میدین. به عنوان یه مبتدی واقعا ممنونم.

saeedansari
پنج شنبه 05 مرداد 1391, 14:22 عصر
سلام :
کتاب خوبی رو تهیه کرده اید من از برنامه C++ 2008 Express Edition ومی خواستم MFC بسازم ممنون می شم اگه راهنمایی ام کنید.

Hadiir.net
پنج شنبه 10 اسفند 1391, 01:00 صبح
سلام
بسیار عالیه و واقعا زحمت کشیدین من بارها خواستم یه کتاب ساده برای استفاده عموم بنویسم اما هر وقت خواستم شروع کنم با هزار جور اما و اگرها برخورد کردم و نهایتا نمیشد. این نشون دهنده اینه که شما برای ایجاد و تولید این کتاب واقعا زحمت کشیدین و وقت گذاشتین. بسیار عالیه و خدا خیرتون بده.

و یه نکته خیلی مهم اکثر برنامه نویسای ایرانی بیشتر با بانکهای اطلاعاتی کار میکنن، ایکاش اگر فعلا امکان توسعه سایر بخش های کتاب نیست ولی حداقل یک بخش آموزش کار با بانکهای اطلاعاتی و دیتابیس ها رو هم اضافه میکردین.

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

mohsenmax70
دوشنبه 06 شهریور 1396, 18:35 عصر
سلام. کتاب خ خوبی تهیه کزدین وتشکر . البته توی بحث تایمرها گفتین میشه همزمان از چند تا تیمر استفاده کنیم ولی نگفتین چطوری. و یا در انتهای کتاب چند مطلب رو فقط کمی توضیح دادین که اگه بشه اینارو اضافه کنین که عالی میشه...