تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 2 12 آخرآخر
نمايش نتايج 1 به 10 از 11

نام تاپيک: ارتباط با سخت افزار در برنامه هاي تحت داس

  1. #1
    پروفشنال mahdi7s's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    هر جایی می تونه باشه
    پست ها
    757

    14 ارتباط با سخت افزار در برنامه هاي تحت داس

    سلام
    من مي خواستم بدونم آيا ميشه با همين برنامه هاي زبان سي پي پي كه ما مي نويسيم و تحت داس اجرا ميشن . ميشه با سخت افزار ارتباط برقرار كرد؟(مثلا ميشه برنامه اي نوشت كه در سي دي رام رو باز وبسته كنه؟)
    اگه ميشه لطفا نحوه ي انجام اين كار رو توضيح بدين تا ببينيم چه جوري هست!

  2. #2
    پروفشنال mahdi7s's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    هر جایی می تونه باشه
    پست ها
    757

    پيش فرض

    از دوستان كسي نبود كمك كنه؟

  3. #3
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    سلام
     
    اگه منظورتون از داس همین محیط command prompt هست که در ویندوز وجود دارد بله این امکان هست
    ویندوز تعداد بسیار زیادی توابع داخلی یا همون API داره که تمام کارها در ویندوز فقط با استفاده از این API ها امکان پذیز هست
    تمام توابعی که در کامپایلر ها تعریف شده در نهایت به API ختم میشن فرقی نمیکنه برنامه به صورت GUI باشه یا به صورت Console
    در دو حالت به دلیل اینکه محیط ویندوز هست باید از API های تعریف شده استفاده بشه
    در نتیجه کسی که API ها ویندوز رو خوب یاد بگیره میتونه هر کاری می خواد بکنه که این شامل کار با سخت افزار هم میشه،
     
    برای نمونه برای باز و بسته کردن سی دی رام این کد رو ببینید ، driveLetter رو به درایو سی دی رام خود تغییر بدین مثلا من k گزاشتم
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
     
    تمام این API ها هم در MSDN کامل شرح داده شده،

    ----------

    ولی اگه منظورتون اون داس قدیمی هست بدلیل اینکه اونا از وقفه ها استفاده میکنن در ویندوز به درستی پشتیبانی نمیشن و در نتیجه خیلی کارا قابل انجام نیست


     
    شاد باشید
    Last edited by hoax3r; 13-12-2008 at 22:19.

  4. این کاربر از hoax3r بخاطر این مطلب مفید تشکر کرده است


  5. #4
    پروفشنال mahdi7s's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    هر جایی می تونه باشه
    پست ها
    757

    پيش فرض

    خيلي از پاسختون ممنونم
    ولي يه مشكلي وجود داره كه فكر مي كنم از كامپايلر من باشه(microsoft visual c++6) حالا ميگم اگه ميدونيد چي هست بگيد ممنون ميشم
    وقتي كد زيرو در كامپايلرم وارد مي كنم اروررهاي زير رو ميده مي دونيد دليلش چي هست؟
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    در ضمن يه سوال ديگه هم داشتم ->
    اگه كسي بره طرف ويژوال سي و برنامه ها رو از حالت داس بيرون بياره ميتونه بدون استفاده از api ويندوز با سخت افزار ارتباط برقرار كنه؟(منظورم از تحت داس همون cmd هستش)

  6. #5
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    خيلي از پاسختون ممنونم
    ولي يه مشكلي وجود داره كه فكر مي كنم از كامپايلر من باشه(microsoft visual c++6) حالا ميگم اگه ميدونيد چي هست بگيد ممنون ميشم
    وقتي كد زيرو در كامپايلرم وارد مي كنم اروررهاي زير رو ميده مي دونيد دليلش چي هست؟
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    این هدر فایلو اضافه کن

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    در ضمن يه سوال ديگه هم داشتم ->
    اگه كسي بره طرف ويژوال سي و برنامه ها رو از حالت داس بيرون بياره ميتونه بدون استفاده از api ويندوز با سخت افزار ارتباط برقرار كنه؟(منظورم از تحت داس همون cmd هستش)
    ویژوال سی یک محیط برنامه نویسی است نه یک زبان مستقل. قبلا هم گفتم فرقی نمیکنه که برنامه تحت داس باشه
    یا دارای اینترفیس و ظاهر گرافیکی در دو حالت به دلیل اینکه هر دو در ویندوز هستن حتما باید API وجود داشته باشه.
    ولی خوب ما در زبان های برنامه نویسی مستقیم از API استفاده نمیکنیم ولی وقتی بخوایم از امکانات بیشتری در
    برناممون استفاده کنیم مثل کار با سخت افزار که دیگه خارج از توانایی زبان برنامه نویسی هست یا باید مستقیم از API استفده بشه
    یا از کتابخانه هایی که برای راحتی برنامه نویس در زمینه مورد نظر تولید شده استفاده کرد.

    البته بهتره منظورتون رو از سخت افزار معلوم کنید که بهتر بشه نظر داد

    شاد باشید

  7. #6
    پروفشنال mahdi7s's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    هر جایی می تونه باشه
    پست ها
    757

    پيش فرض

    سلام
    ممنونم / با اضافه كردن هدر فايل winioctl.h مشكلم حل شد.
    يه چند تا سوال برام پيش اومده اگر مي دونيد لطفا جواب بدين(اگه از دوستان كسي نظري داره بگه ممنون ميشم)
    --------->

    آيا ميتونيم به طور مستقيم در محيط برنامه نويسي از API استفاده كنيم؟

    =========================

    ...
    قبلا هم گفتم فرقی نمیکنه که برنامه تحت داس باشه
    یا دارای اینترفیس و ظاهر گرافیکی در دو حالت به دلیل اینکه هر دو در ویندوز هستن حتما باید API وجود داشته باشه.
    پس مزيت برنامه هاي ويژوال سي نسبت به برنامه هاي زبان سي چي هست؟

    =============================

    و آيا يادگيري API هاي ويندوز براي نوشتن برنامه هاي تحت ويندوز لازم است؟

    =====================================
    Last edited by mahdi7s; 14-12-2008 at 22:18. دليل: خودمم نمي دونم!!!

  8. #7
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    سلام

    آيا ميتونيم به طور مستقيم در محيط برنامه نويسي از API استفاده كنيم؟
    بله میشه، اون کدی که بالا داده بودم بیشتر توابع API بودن.

    پس مزيت برنامه هاي ويژوال سي نسبت به برنامه هاي زبان سي چي هست؟
    من از نظر داشتن API گفتم وگرنه متمعنا اینا نسبت به هم مزیت هایی دارن

    و آيا يادگيري API هاي ويندوز براي نوشتن برنامه هاي تحت ويندوز لازم است؟
    بزارین اینطور بگیم ++C ذاتا تحت داسه (Console) و مطمعنا تا الان شما با خیلی از امکانات این زبان آشنا هستین
    و برای بقیه کارها مثل اضافه کردن اینترفیس و ... باید یا از API استفاده کنیم یا کتابخانه های دیگه مثل MFC و ...
    خیلی از برنامه های بزرگ در دنیا به همین شکل تولید میشن.
    و در مورد سوالتون که آیا API لارم دارین به نظر من بهتره که خودتون به این سوال جواب بدین،
    خودتون به نتیجه برسین که آیا لازم دارین یا نه خیلی بهتره تا کسی دیگه به شما بگه

    شاد باشید

  9. این کاربر از hoax3r بخاطر این مطلب مفید تشکر کرده است


  10. #8
    پروفشنال mahdi7s's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    هر جایی می تونه باشه
    پست ها
    757

    پيش فرض

    سلام

    اگر كسي كار با mfc رو ياد بگيره ديگه كاري به كار كردن مستقيم با api ها نداره؟

    =========
    آيا زبان ويژوال سي mfc رو پشتيباني مي كنه؟

    ===============

    و جدا از بحث هاي اين تاپيك اين سوال برام پيش اومد ---- >

    مزيت برنامه هاي ويژوال سي نسبت به برنامه هاي زبان سي چي هست؟

    ***************************************از كمكتون ممنونم************************************** ****

  11. #9
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    سلام
     
    اگر كسي كار با mfc رو ياد بگيره ديگه كاري به كار كردن مستقيم با api ها نداره؟
    mfc خیلی از api ها رو پوشش داده که می تونید استفاده کنین ولی خوب باز api هایی هست که تو mfc نیست.
     
    آيا زبان ويژوال سي mfc رو پشتيباني مي كنه؟
    البته چند بار گفته بودم زبانی به نام ویژوال سی نداریم به هر حال اگه منظورتون محیط ++vc هست بله پشتیبانی میشه
    در واقع تنها محیطی که این کتابخانه رو پشتیبانی می کنه ++vc است که در این صورت بهتره آخرین ورژن ++vc رو در نصب کنید
    که کلاسها و توابع بیشتری بهش اضافه شده
     
    و جدا از بحث هاي اين تاپيك اين سوال برام پيش اومد ---- >
     
    مزيت برنامه هاي ويژوال سي نسبت به برنامه هاي زبان سي چي هست؟
     
    مثل سوال بالایی هنوز منظورتون رو از ویژوال سی نمیدونم چیه؟؟
     
    شاد باشید
    Last edited by hoax3r; 15-12-2008 at 19:59.

  12. این کاربر از hoax3r بخاطر این مطلب مفید تشکر کرده است


  13. #10
    پروفشنال mahdi7s's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    هر جایی می تونه باشه
    پست ها
    757

    پيش فرض

    سلام

    از اين كه به سوالاتم پاسخ دادين ممنونم

    و در مورد سوال آخر منظورم از برنامه هاي ويژوال سي برنامه هايي هست كه داراي اينتر فيس هستند واز برنامه هاي سي منظورم برنامه هايي هست كه تحت داس اجرا ميشن و كنسولي هستن.

صفحه 1 از 2 12 آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •