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


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



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



پیاده سازی فایل ترتیبی شاخص دار به زبانc

1:

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


نحوه درج علامت or در برنامه

2:

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

----------

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


 
شاد باشید


درخواست يك برنامه

3:



load picture

4:

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


لینگ دانلود c++

5:

این هدر فایلو اضافه کن

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


پورت com در c++ یا c#
قبلا هم فرمودم فرقی نمیکنه که برنامه تحت داس باشه
یا دارای اینترفیس و ظاهر گرافیکی در دو حالت به دلیل اینکه هر دو در ویندوز هستن حتما باید API وجود داشته باشه.


مشکل در صب ++c

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

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

شاد باشید


مشکل فنی با برنامه ++c..

6:

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

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

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

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

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

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

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

7:

سلام

بله میشه، اون کدی که بالا داده بودم بیشتر توابع API بودن.



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

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

باید یا از API هستفاده کنیم یا کتابخانه های دیگه مثل MFC و ...
خیلی از برنامه های بزرگ در دنیا به همین شکل تولید میشن.


و در مورد سوالتون که آیا API لارم دارین به نظر من بهتره که خودتون به این سوال جواب بدین،
خودتون به نتیجه برسین که آیا لازم دارین یا نه خیلی بهتره تا کسی دیگه به شما بگه

شاد باشید

8:


9:

سلام

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

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

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

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

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

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

10:

سلام
 
mfc خیلی از api ها رو پوشش داده که می تونید هستفاده کنین ولی خوب باز api هایی هست که تو mfc نیست.
 
آيا زبان ايشانژوال سي mfc رو پشتيباني مي كنه؟
البته چند بار فرموده بودم زبانی به نام ویژوال سی نداریم به هر حال اگه منظورتون محیط ++vc هست بله پشتیبانی میشه
در واقع تنها محیطی که این کتابخانه رو پشتیبانی می کنه ++vc هست که در این صورت بهتره آخرین ورژن ++vc رو در نصب کنید
که کلاسها و توابع بیشتری بهش اضافه شده
 
و جدا از بحث هاي اين تاپيك اين سوال برام پيش اومد ---- >
 
مزيت برنامه هاي ايشانژوال سي نسبت به برنامه هاي زبان سي چي هست؟
 
مثل سوال بالایی هنوز منظورتون رو از ویژوال سی نمیدونم چیه؟؟
 
شاد باشید

11:


12:

سلام

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

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


13:

سلام

در مورد مزیت چیزی که آشکاره تنها مزیت در برنامه های دارای اینترفیس داشتن رابط کاربری هست.
این خودش مزیت بزرگی مثلا خیلی از توابع gdi که برای کار های گرافیکی مثل رسم شکل و تصویر و ..

هست
در محیط کنسولی قابل هستفاده نیستن.

و چیزای دیگه که الان به ذهنم نمیرسه

شاد باشید

14:



76 out of 100 based on 56 user ratings 1306 reviews