PDA

View Full Version : طرز استفاده از API ها رو کسی در سی میدونه؟



Yunas Farhadnia
چهارشنبه 22 بهمن 1382, 00:22 صبح
لطفا اگر ممکنه بگید چه جوری باید از api ها در بورلند سی استفاده کرد اصلا راحی هست یا نه با سی ++ بلدم ولی اگه میشه فقط در مورد سی پیغام بزارید :)

Anti_Evil
چهارشنبه 22 بهمن 1382, 02:23 صبح
در ++Borland C همانند ++Visual C شما قادر خواهید بود از توابع مختلف API در برنامه تان استفاده کنید.
فقط کافی است Header File ها و احیانا Library File های مورد نیاز را به برنامه تان اضافه کنید.
که به نظرم این روش تا حد زیادی به ساده تر شدن استفاده از توابع API در برنامه کمک میکند.
مثال زیر در مورد چگونگی استفاده از تابع MessageBox در برنامه است:


#include <windows.h>

.
.
.

int APIENTRY _tWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
MessageBox( NULL, "Yunas is a good boy ;)", "Message", 0 );
return 0;
}

تابع MessageBox در windows.h تعریف شده بنابراین کافی است با ذکر نام این هدر فایل از تابع مورد نظر استفاده کنیم.

موفق باشید.

Yunas Farhadnia
چهارشنبه 22 بهمن 1382, 23:45 عصر
ممنون از شما
راهنمای تون خیلی بدرد من خورد انشاالله که بتونم جبران کنم :)
ولی این جواب سوال من نبود. چون با سی ++ بلد بودم

Yunas Farhadnia
دوشنبه 11 اسفند 1382, 22:31 عصر
یعنی کسی نمی دونه :shock: :shock: :? :? :? :?
پس من کجا به جواب سوالم برسم :? :-x :cry:

Anti_Evil
سه شنبه 12 اسفند 1382, 00:13 صبح
ما هم در مورد ++C صحبت کردیم :)
نسخه Turbo C++ 4.5 و Visual C++ 2.0 از تمام توابع Win16 API پشتیبانی میکنند.

اگر منظورتان از ++C کامپایلر های قدیمی نظیر Turbo C++ 3.0 هستند باید بگویم خیر، از آنها برای نوشتن برنامه هایی در قالب ویندوز نمیتونید استفاده کنید.

اینها رو هم نگاه کن:
http://info.borland.com/education/bcppbuilder/tcppmatrix.html

موفق باشید.

Yunas Farhadnia
سه شنبه 12 اسفند 1382, 22:40 عصر
آقای Anti_Evil
از راهنمایتون ممنونم منظور من همون سی تحت داس بود که شما فرمودید نمیشه احساس من این بود که میتونیم با استفاده از هدر های سی ++ از این قابلیت در سی هم استفاده کنیم.
خوب که اشتباه میکردم :cry: :oops:
استاد جان میشه یه مثال برای Turbo C++ 4.5 بزنید البته یه کم واضحتر و اگه میشه یه سورس کامل :)

vbc
شنبه 08 مرداد 1384, 23:39 عصر
سلام دوستان
بورلند سی پلاس 5.0 از توابع ای پی ای پشتیبانی میکنه؟(به نظر شما بهترین کامپایلر برای سی پلاس چی هست؟)

Blaster
یک شنبه 09 مرداد 1384, 09:53 صبح
++ Visual C

sh_roohani
یک شنبه 09 مرداد 1384, 13:01 عصر
فکر می کنم استاندارد ترین کامپایلر ++C/C روی لینوکس gcc باشه. تا اونجا که می دونم پورت اون تو ویندوز اسمش هست mingw. اگه dev-cpp رو نصب کنید، باهاش mingw هم نصب می شه. در ضمن من QT 4.0 رو که نصب کردم هم اونو با خودش نصب کرد (یعنی اول دانلود کرد و بعد نصب کرد).

amir_civil
چهارشنبه 11 آبان 1384, 21:46 عصر
سلام
ایا برلند سی پلاس پلاس ورژن5 هم از ای پی ای پشتیبانی میکند؟

seyedof
پنج شنبه 12 آبان 1384, 02:54 صبح
سلام
بله Borland C++ 5.0 هم یک کمپایلر با قابلیت تولید فایل اجرایی تحت پلتفرم ویندوز است. ضمنا اگر برنامه شما برنامه کنسول است و قرار است تحت ویندوز Dos Box اجرا شود میتوانید از توابع API در اوون استفاده کنید ولی اگر برنامه شما به طور کلی تحت داس است و قرار است روی سیستم عامل داس کار کند نمیتوانید از API ویندوز استفاده کنید. دلیلش هم واضحه مثل این میمونه که فایل اجرایی لینوکس رو بخواهید روی ویندوز اجرا کنید!
ضمنا قویترین کامپایلر تحت ویندوز در حال حاضر Intel C++ می باشد.
ممنون علی

sh_roohani
پنج شنبه 12 آبان 1384, 09:59 صبح
بله فکر می کنم پشتیبانی کنه. تا اونجاییکه یادم میاد نسخه 5 بورلند ++C تحت ویندوز اجرا می شد و می تونست پروژه های Win32 بسازه.

sh_roohani
پنج شنبه 12 آبان 1384, 10:02 صبح
ای بابا! آقای seyedof من متوجه پست شما نشدم، وگرنه تکراری نمی فرستادم. :خجالت: :لبخند:

Reza_K
جمعه 13 آبان 1384, 18:15 عصر
ضمنا قویترین کامپایلر تحت ویندوز در حال حاضر Intel C++ می باشد.


ممکنه دلایلتان را عنوان کنید؟

seyedof
جمعه 13 آبان 1384, 20:29 عصر
سلام
اول از همه توضیح بدم که منظورم محیط توسعه یا RAD یا IDE یا... نیست فقط کمپایلر است. Intel C اصلا محیط توسعه ندارد و به صورت یک کمپایلر روی ویژوال استودیو Integrate شده و جای کمپایلر Visual C را میگیرد.
تحت دو سیستم عامل ویندوز و لینوکس عرضه میشود و ضمن رعایت استانداردها سریعترین کد خروجی را دارد. با استفاده از کتابخانه های جانبی اینتل میتوان کتابخانه های توابع ریاضی و سایر توابع کتابخانه ای را جایگزین نمود و به این ترتیب بیشترین استفاده را از سخت افزارهای امروزی میبرد.
ممنون علی