دانلود مقاله توضیحی مختصر درباره API

Word 136 KB 18362 21
مشخص نشده مشخص نشده کامپیوتر - IT
قیمت قدیم:۱۶,۰۰۰ تومان
قیمت: ۱۲,۸۰۰ تومان
دانلود فایل
  • بخشی از محتوا
  • وضعیت فهرست و منابع
  • توضیحی مختصر درباره API
    قلب ویندوز یعنی چیزی که اساس سیستم عامل ویندوز است، چیزی نیست بجز توابع API .
    API مخفف کلمه Aplication programming interface میباشد که به معنای رابط برنامه سازی کاربردی است.


    که از آن به نام های Aplication programming Interface و Application Programmers Interface نیز یاد شده است.


    نام API به توابعی اطلاق میشود که در فایل های مختلف ویندوز مانند advapi32.DLL و userDLL32.DLL و ole32.DLL و ...

    وجود دارند.


    هر کاری که در ویندوز روی می دهد و هر اتفاقی که می افتد با استفاده از این توابع صورت می گیرد.


    در حقیقت نوشتن برنامه برای ویندوز از صدا کردن توابع API تشکیل می شود.


    API بخشی از خود ویندوز است.

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


    در محیط چند وظیفه ای ویندوز ضروری است که تمام برنامه ها در روش تعریف شده دقیق عمل کنند .

    با استفاده از توابع API که در تمامی برنامه های کاربردی استفاده می شود این سازگاری بوجود می آید.


    شاید شما ندانسته تا حالا بارها با API کار کرده باشید.

    وقتی شما در محیط یک زبان برنامه نویسی مثل Delphi یا Visual Basic یا هر محیط دیگری پروژه جدیدی را آغاز می کنید و فرم اولیه را روی صفحه آورده و آماده طراحی می شوید در واقع استفاده از توابع API را آغاز کرده اید .

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


    از نظر برنامه نویس API شامل یک سری زیر برنامه ی آماده و کاملا سالم می باشد که در اختیار برنامه نویسان محیط ویندوز قرار می گیرد.
    مشخصات توابع API
    اگر بخواهیم توابع API را تقسیم بندی کنیم به دو دسته 16 بیتی و 32 بیتی تبدیل میشوند که دسته 16 بیتی دارای 730 تابع و دسته 32 بیتی دارای 6500 تابع میباشد.این روالها درون فایلهایی وجود دارند که در پوشه های Windows و Windows\System ذخیره شده اند.
    در توابع API مانند هر زبان برنامه نویسی متغیر های ورودی و خروجی وجود دارد.

    این متغیر ها میتوانند از نوع long , integer , string , byte و ...

    باشند.


    برخی از این توابع میتوانند فقط مقدار ثابت تعریف شده ای را بگیرند.


    در تعدادی از توابع متغیر های ورودی و خروجی یه یک ساختار TYPE اشاره دارند که فیلدهای این ساختار اطلاعات ورودی یا برگشتی تابع را در خود نگهداری میکنند.


    توابع API در کجا قرار می گیرند؟


    حتما این سوال برای شما پیش آمده که این توابع قدرتمند در کجا قرار دارند؟

    یا اینکه این توابع کجا هستند که می توانند به طور اشتراکی در چند برنامه و حتی خود ویندوز مورد استفاده قرار گیرند؟

    ابتدا باید مطالبی در مورد فایل های DLL بیاموزید.


    DLL چیست؟


    در حقیقت DLL ها هم مانند API ابزاری هستند که شما از آنها استفاده کرده اید ولی شاید نمی دانستید.

    اگر نگاهی به دایرکتوری system یا windows یا System32 بیندازید تعداد زیادی از این فایل های DLL می بینید!


    Dynamic Linked Library (DLL): به معنای کتابخانه پیوندی پویا می باشد که می تواند شامل انواع داده یا کد باشد.

    درون DLL میتوان انواع داده ها همانند کد - تصویر - صوت و غیره را قرار داد.


    فایلهای DLL در دسترس برنامه هایی که به زبان ویژوال بیسیک و زبانهای دیگری(که از DLL پشتیبانی می کنند) نوشته شده اند می باشد.
    نکته جالب فایل های DLL خاصیت مستقل از زبان برنامه نویسی این فایل ها می باشد.

    یعنی اگر DLL با استفاده از Delphi ایجاد شده باشد می تواند Visual Basic یا Visual C++ از آن استفاده کرد.


    نکته دیگر DLL ها صرفه جویی در مصرف حافظه می باشد که به همین دلیل نام Dynamic را به همراه خود دارند.

    در واقع هر قسمت از DLL که فراخوانی می شود همان قسمت به حافظه بار می شود و در صورت عدم نیاز هم از حافظه خارج می شود.


    در واقع دلایل استفاده از DLL را موارد زیر را می توان نام برد:
    • توانایی اشتراکی کردن کد بین چند برنامه و حتی خود ویندوز
    • استفاده مجدد از کد های نوشته شده.


    • استفاده بهینه از منابع ویندوز و منابع سیستم.


    • جدا کردن کد های مختلف از هم.


    لازم به ذکر است که DLL ها را می توان به زبان هایی مانند Delphi و Visual C++ تولید کرد.


    حالا می توانیم به سوال قبلی پاسخ دهیم .

    API درون فایلهایی وجود دارند که در پوشه های Windows و Windows\System ذخیره شده اند.

    هنگام نصب ویندوز فایلهای DLL نیز ذخیره می شوند ، پس به طور اتوماتیک به این کتابخانه ها دسترسی دارید.
    مهمترین DLL ها که بیشترین API ها را در خود جا داده اند عبارتند از Kernel32.DLL و User32.DLL و Shell32.DLL و ...

    البته DLL های دیگری هم وجود دارند!
    اکثر فایلهای DLL پسوند .DLL یا .EXE دارند.هربرنامه ای که می نویسید به این فایلها دسترسی دارد.این فایلهای DLL در ویرایش های قدیمی تر ویندوز (قبل از 95) هم وجود داشتند ، منتها این فایلها شماره 32 را (که نشان دهنده سازگار 32 بیتی است)در نام خود نداشتند.ویرایشهای قبل از ویندوز 95 سیستمهای 16 بیتی بودند ، بدین معنی که انتقال اطلاعات با نرخ 16 بیت یا دو بایت انجام می شد.برنامه نویسی در محیط های 32 بیتی ، انعطاف بیشتر ، سرعت زیادتر و کارایی بالاتر را در مقایسه با یک محیط 16 بیتی قدیمی دارد.
    اکثر فایلهای DLL پسوند .DLL یا .EXE دارند.هربرنامه ای که می نویسید به این فایلها دسترسی دارد.این فایلهای DLL در ویرایش های قدیمی تر ویندوز (قبل از 95) هم وجود داشتند ، منتها این فایلها شماره 32 را (که نشان دهنده سازگار 32 بیتی است)در نام خود نداشتند.ویرایشهای قبل از ویندوز 95 سیستمهای 16 بیتی بودند ، بدین معنی که انتقال اطلاعات با نرخ 16 بیت یا دو بایت انجام می شد.برنامه نویسی در محیط های 32 بیتی ، انعطاف بیشتر ، سرعت زیادتر و کارایی بالاتر را در مقایسه با یک محیط 16 بیتی قدیمی دارد.

    سه فایل که عمدتا استفاده می شوند عبارتند از: Usre32.DLL: شامل توابعی است که محیط ویندوز و واسط کاربر مثل مکان نماها ، منوها و پنجره ها را کنترل می کند .

    Gdi32.DLL: شامل توابعی است که خروجی برنامه به صفحه تصویر و ابزارهای دیگر را کنترل می کنند.

    Kernel32.DLL: شامل توابعی است که سخت افزار و واسط نرم افزار داخلی ویندوز را کنترل می کنند.اکثر روالهای مربوط به حافظه ، فایل و دایرکتوری درون Kernel32.DLL قرار دارند.

    توجه: ویندوز یک سیستم عامل است که از چند لایه تشکیل شده است.شروع این لایه ها با واسط گرافیکی کاربر یا GUI(Grapical User Interface) است که کاربر می بیند و ختم آنها با نزدیک ترین لایه به سخت افزار است که جریان داده ها بین برنامه و سخت افزار را کنترل می کند.

    این پایین ترین سطح سیستم عامل را هسته اصلی (Kernel) می گویند.

    بنابراین نام Kernel32.DLL مربوط به کتابخانه ای است که تعدادی روال بر مبنای هسته اصلی را دارد.

    این سه فایل بیشتر روالها یا توابع API را نگه می دارند.با یک نگاه کوتاه به پوشه های Windows و Windows \ system چند کتابخانه پیوند دینامیکی دیگر را نیز می بینید مثل COMDLG.DLL,MAPI32.DLL,NETAPI32.DLLوWINMM.DLL .

    همچنانکه مایکروسافت قابلیتهایی را به سیستم عامل اضافه می کند، فایلهای جدید DLL هم ظاهر می شوند.

    فایلهای DLL فقط قسمتی از ویندوز نمی باشند .

    وقتی یک برنامه جدید را به سیستم خودتان اضافه می کنید.این برنامهDLL خاص خودش را فراهم می کند.بنابراین در طول زمان تعداد زیادی فایل DLL روی سیستم خودتان خواهید داشت.

    ماهیت فایلهای DLL: اصطلاح پیوند دینامیکی معانی خاصی برای برنامه نویسان دارد.وقتی گفته میشود که یک روال با یک برنامه پیوند دینامیکی دارد بدین معناست که این روال(سابروتین یا تابع) تا قبل از ترجمه برنامه به آن متصل نمی شود .این تابع فقط در زمان اجرا در دسترس برنامه می باشد.توابعی که درون پنجره کد می نویسید دارای پیوند استاتیکی میباشند،یعنی هر وقت برنامه را ترجمه می کنید این توابع با بقیه کد اصلی ترکیب می شوند.اما فایلهای DLL برنامه ترکیب نمی شوند.

    برنامه شما به این روالها در زمان اجرا دسترسی دارداما فایل EXE برنامه شامل روالهای واقعی DLL نمی باشد.

    این توابع زمانی با ارزش است که می خواهید توابع را به عنوان کتابخانه های پیوند دینامیکی استفاده کنید، زیرا کتابخانه یا توابعی که برنامه شما احضار می کند هیچوقت قسمتی از برنامه شما نیستند.توابع API اندازه فایلهای برنامه شما را زیاد نمی کنند.حین اجرای برنامه این روالها در مواقع ضروری بار می شوند ، در ادامه چنانچه دیگر نیازی به آنها نباشد سیستم عامل ویندوز می تواند منابع را آزاد کندتا حافظه و وقت CPU صرف روالهای جدید شود.

    اما مزیت عمده پیوند دینامیکی این نیست که موجب افزایش راندمان منابع می گردند.چنانچه ویندوز تغییر کند این فایلهای DLL با ویرایشهای جدید DLL باید جایگزین شوند.بنابراین برنامه شما قادر است تا از قابلیتهای جدید ویندوز استفاده کند بدون آنکه مجبور باشید همه برنامه هایی را که از API ویندوز استفاده میکنند مجددا ترجمه کنید.به عنوان مثال در ویندوز 95 ظاهر پنجره ها تغییر کرد.شمایلهای موجود در گوشه بالا و سمت راست یک پنجره نسبت به ویندوز 11.3 تفاوت دارند.اما هر برنامه ویژوال بیسیک که برای نمایش پنجره یک تابع API ویندوز را احضار می کند در همه محیطهای ویندوز اینگونه عمل می کند.

    یعنی این برنامه وقتی در محیط ویندوز11.3 اجرا میشود شمایلهای قدیمی را نشان میدهد با وجودی که برنامه را تغییر نداده اید.

    در نتیجه در اکثر مواقع وقتی از ویرایشهای مختلف ویندوز استفاده میکنید، برنامه های شما که به API ویندوز دسترسی دارند به هیچ تغییری نیاز ندارند.

    نکته1: ویندوز فقط یک برنامه بزرگ نیست ، بلکه مجموعه ای از تعداد زیادی برنامه است که برخی از آنها درون فایلهای DLL قرار دارند .شاید ویندوز خودش بزرگترین استفاده کننده از فایلهای DLL باشد.

    نکته2:مزیت استفاده از روالهای DLL آن است که چند برنامه اجرایی تحت ویندوز میتوانند به یک روال از فایل DLL دسترسی داشته باشند دلایل استفاده از توابع API توابع API به دلیل اینکه در فایلهای DLL هر سیستم عامل ویندوز میباشند و در هر مکان مانند یکدیگر میباشند پس نیازی به ارایه ی آن فایل DLL در نسخه برنامه نمیباشد و در نتیجه حجم نسخه کم میشود.

    بیشتر توابع کارهایی را انجام میدهند که زبان های برنامه نویسی قادر به انجام آن کار نیست.

    و چندین علت دیگر ...

    چند نمونه از توابع API در ویندوز: GetSysColor کتابخانه: User32 سیستم عامل:, CE , 2000 , 98 , 95 مبتنی بر NT این تابع مقدار ارزشیRBG یکی از رنگهای سیستم را برمیگرداند.رنگهای سیستم آنهایی هستندکه یک پنجره مورد استفاده توسط آنها کشیده می شود.برای مثال رنگ تیتر پنجره.رنگ اسکرول بار(Scrollbar) ، رنگ زمینه(DeskTop) و رنگ دور(Border) و ...

    &&&&&&&&&&&&&&&&&&&&&&&&&& GetSystemMetrics کتابخانه:User32 سیستم عامل: , 32S, 98,95مبتنی بر NT این تابع اطلاعات بسیار گوناگونی از ویندوز میدهد.بیشتر اینها با اندازه های اشیای گوناگون از جمله صفحه ، آیکونها، کرسر و ...

    سرکار دارند.این دستور اطلاعات در رابطه با سیستم را آماده می کند.

    مقدار برگشتی این تابع بستگی به مقدار nindex * دارد.همه اندازه های نگهداری شده(درازا و پهنا)بر حسب نقطه(pixel) میباشد.توجه کنید معنی بعضی از اقلام سیستم متریک در ویندوز 95 و 98 با ویندوز NT کمی متفاوت است.

    *: nindex -- &&&&&&&&&&&&&&&&&&&&&&&&&& GetsystemMenu کتابخانه: User32 سیستم عامل: ,CE , 2000 , 98 , 95مبتنی برNT این تابع هندل منوی سیستم را برمیگرداند(که به آن کنترل منو نیز می گویند).این منو زمانی ظاهر میشود که ما روی آیکون برنامه در روی تایتل بار پنجره برنامه مان کلیک کنیم یا روی خود تایتل بار کلیک راست را بزنیم.وقتی که شما بتوانید هندل منوی سیستم را پیدا کنید، میتوانیدبه ان آیتم اضافه یا کم کنید.(این نکته یعنی کار بر روی منوبار سیستم بسیار مهم است).نکته مهم دیگر این است که با انتخاب هر آیتم از منوی سیستم یک پیام(یک کد) به WM_SYSCOMMAND ارسال میگردد.به جای آنکه این پیام به WM_COMMAND ارسال شود.از تابع GetSystemMenu می توان برای ذخیره مجدد(برگرداندن)آیتمهای پیش فرض پس از تغییرات نیز استفاده نمود.

    &&&&&&&&&&&&&&&&&&&&&&&&&& GetNumberForemat کتابخانه: Kernel32 سیستم عامل: CE , 2000 , NT , 98 , 95 این تابع یک عدد را برای نمایش فرمت میکند.به صورت پیش فرض تابع فرمت عدد را با استفاده از setting محلی انجام میدهد.اگر چه ارجحیت با فرمت تعیین شده کاربر میباشد.نتیجه نهایی تابع ، یک عدد برای نمایش مطابق با خواست کاربر میباشد.

    &&&&&&&&&&&&&&&&&&&&&&&&&& GetMenu کتابخانه: User32 سیستم عامل: 2000 , NT , 98 , 95 این تابع تشخیص میدهد که کدام منو به یک پنجره اختصاص داده شده است.این منو به صورت یک منوبار ظاهر می شود.

    &&&&&&&&&&&&&&&&&&&&&&&&&& GetLogicalDrives کتابخانه: Kernel32 سیستم عامل: 32S,NT,98,95 این تابع همه درایوهای منطقی موجود در کامپیوتر


تحقیق دانش آموزی در مورد دانلود مقاله توضیحی مختصر درباره API , مقاله دانشجویی با موضوع دانلود مقاله توضیحی مختصر درباره API , پروژه دانشجویی درباره دانلود مقاله توضیحی مختصر درباره API

در باره بایوس کامپیوتر بیشتر بدانید؟ اغلب برای افراد مشکل است که تفاوت بین سخت افزار و نرم افزار را درک نمایند و این به این دلیل است که این دو موضوع در طراحی،ساخت وپیاده سازی سیستم ها بسیار به هم وابسته اند . برای درک بهتر تفاوت بین آنها لازم است که ابتدا مفهوم BOIS را درک کنید. BOISتنها کلمه ای است که می تواند تمام درایورهایی را که در یک سیستم به عنوان واسط سخت افزار سیستم و ...

مفهوم پایگاه داده ها : پایگاه داده ها در ساده ترین وجه به مثابه مخزنی میماند که اطلاعات و داده ها به صورت منسجم و احتمالا ساخت یافته در آن نگهداری میشود . این مخزن میتواند یک فایل متنی یا باینری ساده باشد . همزمان با پیدایش تکنولوژی ذخیره سازی اطلاعات و فایلها ، پایگاه داده ها نیز متولد شد و همزمان با رشد تکنولوژی ذخیره و بازیابی اطلاعات و سیستم فایلینگ ، پایگاه داده ها نیز به ...

شرح جامع BIOS بایوس اصطلاحی است که به عبارت (BASIC INPUT/ OUTPUT) اطلاق می گردد بایوس در واقع پیوند بین سخت افزار و نرم افزار در یک سیستم کامپیوتری محسوب میگردد. اغلب مردم اصطلاح بایوس را با نام دیگری تحت عنوان درایورهای دستگاه یا فقط درایور میشناسد. بایوس عبارت واحدی است که همه درایوهای داخل یک سیستم را که با همکاری یکدیگر به عنوان یک اینترفیس بین سخت افزار و نرم افزار سیستم ...

نرم افزار ویروس یاب چگونه کار می‌کند ؟‌ نرم افزار ویروس یاب بیشترین صنعت آنتی ویروس که موتور قابل اسکن با در نظر گرفتن افزایش شکاف بالا، دستیابی کامل را برای برق موتور‌ها به ما می‌دهد ،‌ترکیب می‌کند .رابط گرافیکی کاربر ویروس یاب بخش‌های برنامه تخصصی داده شده را بدون از بین بردن انعطاف پذیری که شما برای مجهز کردن نرم افزار داخل محیط‌های محاسباتی به آن نیاز دارید ، یکنواخت می‌کند ...

بایوس اصطلاحی است که به عبارت (BASIC INPUT/ OUTPUT) اطلاق می گردد بایوس در واقع پیوند بین سخت افزار و نرم افزار در یک سیستم کامپیوتری محسوب میگردد. اغلب مردم اصطلاح بایوس را با نام دیگری تحت عنوان درایورهای دستگاه یا فقط درایور میشناسد. بایوس عبارت واحدی است که همه درایوهای داخل یک سیستم را که با همکاری یکدیگر به عنوان یک اینترفیس بین سخت افزار و نرم افزار سیستم عامل عمل می ...

دِلفی (Delphi) یا به تعبیری ویژوآل پاسکال – یک زبان برنامه‌ نویسی است و بستری برای توسعهٔ نرم‌افزار که شرکت بورلند آن را تولید کرده است. این زبان، در بدو انتشار خود در سال ۱۹۹۵، به عنوان یکی از نخستین ابزارهایی مطرح شد که از توسعهٔ نرم‌افزار بر مبنای متدولوژی RAD((Rapid Application Developmentپشتیبانی می‌کردند؛ یعنی تولید و توسعهٔ سریع برنامه‌های کاربردی این نرم افزار بر مبنای ...

فصل اول : آشنایی با Access تاریخچه Access : در سال 1992 ، Microsoft Access به عنوان یک DBMS عرضه شد و در طی سالهای متمادی ، در رده خود به صدر رسید . Access به عنوان بخشی از مجموعه برنامه های معروف Microsoft Access روزانه توسط میلیون ها نفر استفاده می شود. از همان ابتدا Access به تدریج توسعه یافت و به برنامه ای کارآمد با کاربردی آسان مبدل شد. نگارش های اخیر آن در حالی که هم چنان ...

هوالمحبوب گفتم با گذشت زمان، تو نیز می روی . اما تو همچنان ماندی ، با نگاههای تیز و عمیق، با دستهایی که هنوز هم به زندگی جنگ می زنند و با تکه کلامهای تکراری. تو ماندی پررنگ ، آنقدر پررنگ که به تنهایی سوژه یک تحقیق شدی؛ « بچه های خیابانی» کسی نگفت که نام تورا بر روی نسیم دود آلود خیابانها و چهارراههای شهر نوشته اند. کسی ننوشت تو ،هشدار ظهور قشر جدیدی از کودکان خیابانی قرن اکنونی. ...

هوالمحبوب گفتم با گذشت زمان، تو نیز می روی . اما تو همچنان ماندی ، با نگاههای تیز و عمیق، با دستهایی که هنوز هم به زندگی جنگ می زنند و با تکه کلامهای تکراری. تو ماندی پررنگ ، آنقدر پررنگ که به تنهایی سوژه یک تحقیق شدی؛ « بچه های خیابانی» کسی نگفت که نام تورا بر روی نسیم دود آلود خیابانها و چهارراههای شهر نوشته اند. کسی ننوشت تو ،هشدار ظهور قشر جدیدی از کودکان خیابانی قرن اکنونی. ...

دلفی RAD است ! ممکن است همچون یک نوجوان هیاهوانگیز به نظر آیم، اما لازم است که منظور کاربران دلفی از RAD بسیار فراتر از این است که دلفی یک محصول بزرگ است. واژه جدید RAD ازکلمات Rapid Application Development گرفته شده است. RAD واژه جدیدی است که برای نوع جدیدی از محیط های تولید نرم افزار در نظرگرفته شده است. برنامه سازان در این دنیای RAD جدید ابزارهایی استفاده می کنند که بسیار ...

ثبت سفارش