PDA

View Full Version : سوالاتی پیرامون ویژال سی!



hector2000
شنبه 07 اردیبهشت 1387, 10:47 صبح
با سلام
من دانشجوی فوق دانشگاه ازاد در رشته نرم افزار هستم.تاکنون زبانهای زیادی را به ارائه دادند که الزاما همگی انها مورد قبول بازار کار و دنیای امروز برنامه نویسی نبودند.بهرحال تا به امروز تخصصم طراحی صفحات وب با asp.net و از طریق vb.net و همچنین ساخت Application از طریق Vb.net بود.اما همیشه فکر می کردم که یک چیزی در زندگیم کمه و با من جور نیست.یعنی همیشه وقتی کامپیوتر را روشن می کردم میل و رغبت انچنانی برای باز کردن ویژال استودیو نداشتم ولی ناچارن این کار را می کردم.
تصمیم دارم که یک رویه مشخص را دنبال کنم و برای همیشه با as.net و vb.netخداحافظی کنم و برم سراغ چیزی که برای اجرای برنامه هایش نیازی به فریم ورک نداشته باشد،سطح دسترسی به منابع در حد بسیار خوبی باشد،سرعت اجرای برنامه هایش یک سر و گردن از vb.net بالاتر باشد و.. چیزی که بهش رسیدم همان ویژال سی بود که البته در قالب MFC. اول تصمیم داشتم به سراغ دلفی برم و پشیمان شدم چون واقعا حتی سینتکس این برنامه را نمیدانم(از زمانی که پاسکال را پاس کردم زمان زیادی می گذرد)
و اعتقاد دارم که سی از ان قوی تر است(نمرات و استعداد بسیار خوبی در درسهای سی دارم)حال این تاپیک را باز کردم که از دوستان برای حل مشکلاتم در ویژال سی کمک بگیرم
امیدوارم که دوستان من را تنها نگذارند.
ممنون

hector2000
یک شنبه 08 اردیبهشت 1387, 10:45 صبح
خوب دوباره سلام
بعنوان اولین سوال :ایا شما یک گرید(همان دیتا گرید معروف)پیشرفته با امکانات خوب که قابلیت وصل شدن به adodc را داشته باشد را سراغ دارید؟
من مثلا پیشرفته ترینش را که پیدا کردم IDC_MSHFLEXGRID2 بود که زیاد هم کامل نیست

hector2000
سه شنبه 10 اردیبهشت 1387, 11:07 صبح
هیچ پاسخی؟

حسین محمدی
چهارشنبه 11 اردیبهشت 1387, 10:39 صبح
با سلام

بنده به برنامه نویسی علاقه خاصی دارم و با دیتابیس نیز کار کرده ام. من نیز vb کار کرده ام و کمی با C# .Net کار کرده ام. پاسکال را نیز مدتها پیش به صورت تقریبا کامل کار کرده بودم. ولی هیچکدام از این زبانهای برنامه نویسی قانع کننده نبود و یک جوری سینتکس آنها راضی کننده نبود. بالاخره بعد از مدتها کار کردن با آنها گمشده خود را در C++ پیدا کردم و با استفاده از کلاسهای MFC و ATL راه بسیار روشنی را در جلوی خود دیدم.

در مورد grid هایی که شما قبلا در .net استفاده می کردید باید بگویم در mfc قضیه مشابه صورت قبل نیست که شما یک component یا یک control را در سی استفاده کنید و به راحتی به دیتابیس وصل شوید و کارتان را ادامه دهید.

در سی کار کمی طولانی تر است و خودتان جزئیات کار را درست خواهید کرد. مثلا من خودم یک برنامه با سی نوشته ام که با دیتابیس کار می کند و به جای استفاده از component ها و کنترلهای .net از CListCtrl سی استفاده کرده ام.

هرچند امکان استفاده از component ها و کنترهای .net نیز وجود دارد ولی محدودیتهای آنها بسیار زیاد است.

mehrzad007
چهارشنبه 11 اردیبهشت 1387, 23:46 عصر
هیچ پاسخی؟

دوست من پيشنهاد مي كنم براي هر سوال تاپيك جداگانه اي باز كنيد تا سريعتر به جواب برسيد و همچنين از عناوين واضح براي سوالاتتان استفاده كنيد .
اميدوارم كه موفق باشيد

hector2000
پنج شنبه 12 اردیبهشت 1387, 15:14 عصر
componet بهتری سراغ ندارید؟

حسین محمدی
شنبه 14 اردیبهشت 1387, 11:23 صبح
خیر ولی اگر دنبال کمپوننت خوبی می گردید حتما به سایت http://www.componentone.com یک سری بزنید.

linux
شنبه 14 اردیبهشت 1387, 13:28 عصر
با سلام
من دانشجوی فوق دانشگاه ازاد در رشته نرم افزار هستم.تاکنون زبانهای زیادی را به ارائه دادند که الزاما همگی انها مورد قبول بازار کار و دنیای امروز برنامه نویسی نبودند.بهرحال تا به امروز تخصصم طراحی صفحات وب با asp.net و از طریق vb.net و همچنین ساخت Application از طریق Vb.net بود.اما همیشه فکر می کردم که یک چیزی در زندگیم کمه و با من جور نیست.یعنی همیشه وقتی کامپیوتر را روشن می کردم میل و رغبت انچنانی برای باز کردن ویژال استودیو نداشتم ولی ناچارن این کار را می کردم.
تصمیم دارم که یک رویه مشخص را دنبال کنم و برای همیشه با as.net و vb.netخداحافظی کنم و برم سراغ چیزی که برای اجرای برنامه هایش نیازی به فریم ورک نداشته باشد،سطح دسترسی به منابع در حد بسیار خوبی باشد،سرعت اجرای برنامه هایش یک سر و گردن از vb.net بالاتر باشد و.. چیزی که بهش رسیدم همان ویژال سی بود که البته در قالب MFC. اول تصمیم داشتم به سراغ دلفی برم و پشیمان شدم چون واقعا حتی سینتکس این برنامه را نمیدانم(از زمانی که پاسکال را پاس کردم زمان زیادی می گذرد)
و اعتقاد دارم که سی از ان قوی تر است(نمرات و استعداد بسیار خوبی در درسهای سی دارم)حال این تاپیک را باز کردم که از دوستان برای حل مشکلاتم در ویژال سی کمک بگیرم
امیدوارم که دوستان من را تنها نگذارند.
ممنون
شما بازار کار را حتما در نظر بگیرید. کاری که انجام می دهید باید از نظر اقتصادی هم توجیه داشته باشد.

Nima_NF
شنبه 14 اردیبهشت 1387, 17:17 عصر
شما بازار کار را حتما در نظر بگیرید. کاری که انجام می دهید باید از نظر اقتصادی هم توجیه داشته باشد.
بسیاری از شرکت های قدرتمند در سطح کشور برنامه نویسان ++C می خواهند از جمله مهم ترین آن ها طی ماه های اخیر بود که در حال استخدام چند برنامه نویس MFC برای کارت خوان های بانک ها بودند.
تا برنامه نویسی وجود نداشته باشد نباید انتظار داشته باشید کاری هم برایش باشد، که البته خوشبختانه علی رغم حس راحت طلبانه اکثر برنامه نویسان ما در ایران، هنوز به طور کامل نابود نشده است.

hector2000
سه شنبه 17 اردیبهشت 1387, 14:51 عصر
ایا امکان اجرا شدن برنامه های تحت mfc در ویندوز 98 هم هست؟

Nima_NF
سه شنبه 17 اردیبهشت 1387, 15:42 عصر
بله برای 98 هم می توانید، به شرط اینکه از جدیدترین SDK که امسال منتشر شده است (نسخه ای که همراه VS2008 می باشد) استفاده نکنید.

hector2000
سه شنبه 17 اردیبهشت 1387, 18:25 عصر
بله برای 98 هم می توانید، به شرط اینکه از جدیدترین SDK که امسال منتشر شده است (نسخه ای که همراه VS2008 می باشد) استفاده نکنید.
چگونه؟
من به هر طریقی که پروژه ام را کامپایل می کنم بازم در 98 اجرا نمی شود

amir_civil
سه شنبه 17 اردیبهشت 1387, 19:50 عصر
با سلام
به نظر من اگر dllهای مربوطه همراه برنامتون باشه مشکلی پیش نمیاد

hector2000
سه شنبه 17 اردیبهشت 1387, 20:10 عصر
با سلام
به نظر من اگر dllهای مربوطه همراه برنامتون باشه مشکلی پیش نمیاد

نه متاسفانه اجرا نمیشه!

Nima_NF
سه شنبه 17 اردیبهشت 1387, 22:27 عصر
همانطوری که قبلا دوستان اشاره کردند، سوالات خود را با جزییات بیشتر در تاپیک های جداگانه مطرح کنید تا هم سریع تر به جواب برسید و هم برای سایر دوستان نیز قابل استفاده باشد چرا که کل این بخش مربوط به سوالات ++VC می باشد .

ابتدا باید مشخص کنید که از کدام نسخه کامپایلر استفاده می کنید، آیا dll های مورد نیاز را کپی می کنید، و اینکه پروژه باید به صورت غیر یونیکد برای win98 کامپایل شود مگر با MSLU.

ضمنا برای اینکه برای win98 به بعد کامپایل انجام شود حتما باید در فایل stdafx.h کد های زیر را تعریف کنید:



#ifndef WINVER
#define WINVER 0x0410 // for win98 and above
#endif

#ifndef _WIN32_WINDOWS
#define _WIN32_WINDOWS 0x0410
#endif

برای IE نیز به همین ترتیب تعریف کنید.

hector2000
سه شنبه 17 اردیبهشت 1387, 22:47 عصر
من از vs2008 استفاده می کنم و گزینه Use MFC in a Static Library را انتخاب کردم
بعد از قرار ادن کد شما کلی ارور بوجود امد و اصلا پروژه کامپایل نشد

Nima_NF
چهارشنبه 18 اردیبهشت 1387, 14:23 عصر
چند پست بالاتر توضیح اولیه را دادم!

بله برای 98 هم می توانید، به شرط اینکه از جدیدترین SDK که امسال منتشر شده است (نسخه ای که همراه VS2008 می باشد) استفاده نکنید.در نسخه 2008 ، دیگر ویندوز های زیر 2000 پشتیبانی نمی شود، از طریق کامپایلرهای نسخه های قبل به همراه SDK های قدیمی تر این کار امکان پذیر هست.

hector2000
چهارشنبه 18 اردیبهشت 1387, 20:21 عصر
با سلام و تشکر
من از vc++6 استفاده کردم و یک پروژه بسیار ساده نوشتم و پروژه در ویندوز 98 اجرا شد
حال یک پروژه کوچک دیتابیسی (با بانک اکسس) که شامل datagrid وadodc می شود نوشتم که در ویندوز اکس پی براحتی اجرا می شود اما با وجود اینکه من ocx های این کامپونتهای استفاده شده را در ویندوز 98 کپی کردم ولی اجرا نشد.ایا راهی هست؟

hector2000
جمعه 20 اردیبهشت 1387, 19:17 عصر
بعنوان سوال دیگر:
من یک list view در برنامه ام گذاشتم و می خواهم که در ان تصاویری که می خواهم نمایش داده شود.برای گذاشتن تصاویر می بایستی از image list استفاده کرد که من این کار را کردم.ولی نمیدانم چرا list view این image list را شناسایی نمی کند(احتمالا یک باگ در ide است)یهر حال می بایستی این کار را توسط کد نویسی انجام دهم.ایا کسی می تواند در این زمینه به من کمک کند؟
(من دقیقا همین مشکل را در toolbar control هم دارم)

hector2000
یک شنبه 22 اردیبهشت 1387, 15:45 عصر
هیچ پاسخی نیست؟

alimahdavi675
شنبه 04 خرداد 1387, 16:37 عصر
با عرض سلام .راستش اگه بتونید برای نمایش اطلاعاتتون از لیست ویو استفاده بکنید بجای دیتا گرید موفق تر خواهید بود از طرفی .آدمهای بزرگ اهداف بزرگی هم دارند .زبان ویژوال سی 6 تنها زبانی هست که هم از نظر قدرت و هم از نظر سرعت مخصوصا در ارتباط با سخت افزار و درایور های سخت کرنل می تونه پاسخگوی برنامه نویس باشه مخصوصا در سیستمهای خبره یا Real Time که زمان اهمیت خیلی حیاتی رو داره .فقط یک عیب داره و اون اینه که یادگیری و کار باهاش به زمان بیشتری نیاز داره.