پایگاه مقالات کامپیوتر

مرکز دانلود جدیدترین مقالات کامپیوتر

پایگاه مقالات کامپیوتر

مرکز دانلود جدیدترین مقالات کامپیوتر

آموزش زبان برنامه نویسی سی شارپ

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


دانلود

باز کردن پنجره جدید

با کد زیر می توانید یه پنجره جدید باز کنید


window.open('your_url', 'popup_name
'
,
'height=' + screen.height + ',width=' + screen.width + ',
resizable=yes,scrollbars=yes,toolbar=yes,menubar=yes,
location=yes'
)




دومقاله در باره ی MD5

مقاله ی اول(مقدماتی)
آیا می دانید در دنیای کامپیوتر هر فایل دارای یک اثر انگشت منحصر به فرد است این اثر انگشت MD5 Checksum یا ام دی 5 یا Message-Digest algorithm 5 یا کد هش /hash code نامیده می شود  MD5 معمولا در سایت های دانلود نرم افزار دیده می شود به دلیل اینکه هر تغییر کوچک و بزرگ در فایل یا برنامه سبب تغییر کلی MD5 یا اثر انگشت آن می شود.

استفاده های فراوان  MD5 Checksum

از اثر انگشت فایل استفاده های بسیاری می شود مثلا برای تست صحت فایل ها: برای اینکه بفهمیم در هنگام انتقال فایل ها آیا تغییری در اثر خطا یا عوض شدن با فایلی مخرب ایجاد شده است از md5 استفاده می شود اثر انگشت هر فایل با ام دی 5  یک کد با طول ثابت (32 کاراکتر) است مثلا اگر MD5 یا اثرانگشت  فایلی به بزرگی 100 مگابایت را با اثر انگشت فایلی به حجم چند کیلوبایت از نظر طول کد تولید شده مقایسه کنید یکسان است از این مطلب یک چیز مهم برداشت می شود : کد تولید شده توسط MD5 یک طرفه است یعنی نمی توان از کد به فایل رسید این ویژگی باعث استفاده های بیشتری از MD5 Check sum می شود مثلا بعضی برنامه نویسان برای چک کردن صحت یک رمز / پسورد از md5 استفاده می کنند یا بعضی از انتی ویروس ها کد md5 ویروس ها را در دیتابیس خود ذخیره کرده و در هنگام اسکن فایل اثر انگشت فایل را تولید و با پایگاه داده ی خود مقایسه می کنند که البته این روشهای استفاده پسندیده نیست و مثلا می توان با تغییری بسیار کوچک مثلا افزودن چند بیت بی مصرف به ویروس یا فایل مخرب کد MD5 Checksum آن را تغییر داد همچنین در سال 2007 گروهی از محققان شامل Arjen Lenstra روشی را شرح کردند که با آن می توان دو فایل با یک اثر انگشت تولید کرد ولی باید توجه داشت که مساوی شدن کد ام دی 5 دوفایل یک در عدد 3.4 در 10 به توان 34 است. در ویکیپدیا و همچنین نرم افزار هایی به نام هایی چون md5 crack یا MD5CRK برای پیدا کردن رمز های کد شده توسط md5 وجود دارند

ادامه مطلب ...

گرافیک در طراحی صفحات وب

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

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

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

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

ادامه مطلب ...

امان از این فریم ها

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

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

هر وقت خواستید یک فریم از یک پنجره فریم دار را save کنید یا پرینت بگیرید، برای اینکه مطمئن باشید صفحه مورد نظر save می شود و یا یک "صفحه تر و تمیز بدون فریم" پرینت می گیرید، ابتدا باید صفحه مورد نظر را از توی فریم بیرون بکشید. چطوری؟ روی صفحه فریم مورد نظر کلیک راست کنید و بیایید روی properties، سپس کلید موس را رها کنید تا صفحه properties باز شود. آیا در این صفحه آدرسی جلوی عبارت URL می بینید؟ این آدرس را در جعبه آدرس مرورگرتان بنویسید و کلید enter را بزنید، بله حالا همان صفحه را تر و تمیز و بدون فریم می توانید مشاهده کنید.

راستی.... لازم نیست آدرس جلوی عبارت URL را در جعبه آدرس مرورگرتان تایپ کنید، آن را های لایت (select) کنید (کرزر را ابتدای آن قرار دهید، کلید چپ موس را فشار دهید و توسط موس کرزر را روی تمام آدرس بکشید تا تماما آبی شود) سپس کلیک راست، copy . بعد روی جعبه آدرس رفته، تمام آدرس قبلی را های لایت کنید سپس کلیک راست paste . بله کار انجام شده است.

http://persiantalent.mihanblog.com/post/450

com. pcdocblogsky.www

تعریف نرم افزار آزاد

- آزادی برای اجرای برنامه به هر منظوری (آزادی ۰)ما این تعریف را از نرم افزار آزاد(Free Software) ارائه می دهیم تا به وضوح نشان دهیم که چه مواردی باید در مورد یک نرم افزار خاص صدق کند تا آن نرم افزار آزاد تلقی شود.نرم افزار آزاد موضوع آزادی است نه قیمت. برای درک این مفهوم ،باید به معنای کلمه free در عبارت free speech(سخن آزاد) فکر کنید نه به معنای آن در عبارتی مانند free beer.[توضیح این که کلمه free در زبان انگلیسی در دو معنای آزاد و رایگان به کار می رود.منظور نویسندگان در این جا مفهوم آزادی است نه رایگان بودن.بدیهی است به دلیل وجود دو کلمه جداگانه برای ترجمه این کلمه در فارسی،چنین مشکل لغوی وجود ندارد.]نرم افزار آزاد موضوع آزادی کاربران در اجرا، کپی، توزیع، آموختن، تغییر دادن و توسعه نرم افزار است.به بیان دقیقتر ،نرم افزار آزاد به چهار نوع آزادی(Freedom) برای کاربران یک نرم افزار اشاره می کند:

-
آزادی برای اجرای برنامه به هر منظوری (آزادی ۰)
-
آزادی برای آموختن نحوه عملکرد نرم افزار و سازگار کردن آن با نیازهای شخصی. (آزادی ۱). دسترسی به کد منبع پیش شرط این بند است.
-
آزادی برای توزیع مجدد کپی برنامه تا بتوانید به همسایه خود کمک کنید! (آزادی ۲)
-
آزادی برای اصلاح کردن و توسعه نرم افزار و منتشر کردن این اصلاحات برای همگان، که نتیجه آن منفعت‌های عمومی جامعه خواهد بود. (آزادی ۳). دسترسی به کد منبع پیش شرط این بند است.برنامه ای آزاد است اگر کاربران آن همه این آزادی‌ها را داشته باشند. بنابراین، شما باید آزاد باشید تا کپی‌ها را با تغییر یا بدون تغییر، رایگان یا با دریافت وجهی برای توزیع، برای هرکس و هرجا مجددا توزیع کنید. آزاد بودن برای انجام این کارها (در میان مطالب دیگر) به این معنی است که شما مجبور نیستید از کسی اجازه بگیرید یا برای مجوز پولی پرداخت کنید.شما همچنین باید این آزادی را داشته باشید که در برنامه تغییراتی ایجاد کنید و آنها را به طور خصوصی در کار خود استفاده کنید. بدون این که حتی وجود آنها را متذکر شوید. اگر شما تغییراتتان را منتشر کنید، نباید مجبور باشید که شخص مخصوصی را به روش خاصی آگاه کنید.آزادی برای استفاده از یک برنامه به معنای آزادی برای هر شخص یا سازمان برای استفاده در هر نوع سیستم رایانه‌ای، هر نوع کار، و بدون نیاز به ارتباط بعدی با توسعه دهنده یا هر نهاد خاص دیگر است.

ادامه مطلب ...

نحوه ساخت یک فلش مموری قابل بوت

یکی از راه های بسیار مناسب برای نصب سیستم عامل های مختلف (operating systems ) بروی برخی از کامپیوتر ها  ( مانند نت بوک ها ( Netbook ) که فاقد دیسک خوان DVD و CD می باشند ) استفاده از حافظه های جانبی مانند فلش مموری ها ( Flash memory ) می باشد. در حالت عادی اگر یک کاربر کامپیوتر کلیه محتویات دی وی دی نصب ویندوز ویستا یا هر سیستم عامل دیگری را در داخل یک فلش مموری بریزد نمی تواند از این فلش مموری برای نصب سیستم عامل بروی کامپیوتری که سیستم عامل ندارد استفاده کند زیرا این حافظه جانبی قابلیت بوت شدن را ندارد . خوشبختانه با استفاده از برنامه Command Prompt سیستم عامل ویندوز ویستا و ویندوز هفت به راحتی و بدون نیاز به نرم افزار های جانبی ، دوستان می توانند یک فلش مموری قابل بوت بسازند و بعد از ساختن فلش مموری قابل بوت محتویات سی دی و یا دی وی دی نصب سیستم عامل را بروی این فلش مموری کپی کنند و از آن برای نصب سیستم عامل استفاده کنند .

من این آموزش را برای سیستم عامل ویندوز ویستا ( Vista ) توضیح میدهم و هیچ تفاوتی با ویندوز هفت ( Seven ) ندارد . برای انجام این کار به ترتیب زیر عمل کنید :

 1- ابتدا یک فلش مموری با ظرفیت حداقل یک گیگا بایت را به یو اس بی ( USB ) کامپیوتر وصل کنید 
2-
برنامه Command Prompt  یا CMD در ویندوز ویستا را اجرا کنید
3-
بعد از اجرای نرم افزار Command Prompt ، در محیط داس عبارت diskpart را تایپ کنید و دکمه اینتر را فشار دهید
4-
اینک عبارت list disk را تایپ کنید و دکمه اینتر را فشار دهید تا کلیه درایو دیسک های شما در این لیست نمایش داده شود . ( ظرفیت هارد لپ تاپ من 180 گیگابایت می باشد و برای آموزش بهتر به دوستان یک فلش مموری 2 گیگا بایتی به کامپیوترم وصل کردم که بعد از اجرای دستور list disk مطابق تصویر زیر این دو درایو دیسک را به صورت مجزا نشان میدهد که فلش مموری من با نام Disk 1 می باشد )

- حال دستور select disk X را تایپ کنید ( به جای عبارت X شماره درایو فلش مموری را تایپ کنید )
6-
سپس دستور clean را تایپ کنید
7-
بعد از اجرای دستور clean دستور create partition primary را تایپ کنید
8-
بعد از اجرای دستور فوق دستور select partition 1 را تایپ کنید

ادامه مطلب ...

ده نکته در رابطه با XSL

تکنولوژی XSL ، از CSS)Cascading Style Sheets) اقتباس شده است . CSS از یک Stylesheet بمنظور فرمت یک فایل HTML استفاده می نماید .XSL و CSS در موارد متعددی با یکدیگر تفاوت دارند. CSS ، امکان تعریف رنگ ها ، مشخص نمودن زمینه ها ، نوع فونت ها و ... را برای فایل های مبتنی بر Html فراهم می نماید. XSL امکان تبدیل یک فایل XML را به یک فایل Html ( و یا سایر فرمت های دلخواه نظیر متن ) فراهم می نماید. در این مقاله ده نکته مهم در رابطه با تکنولوژی XSL بیان می گردد .
نکته اول: همزمان با ارائه تکنولوژی
XML توسط کنسرسیوم وب ، تکنولوژی XSLT)Extensible StyleSheet Language for Transformation )، برای تبدیل یک سند به نوع دیگر ، مطرح گردید. در زمان پیاده سازی XSLT ، تکنولوژی دیگر و مرتبط با XML با نام XPointer نیز ارائه گردید. XPointer ، مکانیزمی برای اشاره به بخش های متفاوت یک سند XML است . یکی دیگر از تکنولوژی های مرتبط با XML ، با نام XPath مطرح و ارائه گردید. XSLT,XPointer و XPath جملگی تکنولوژی های مبتنی بر XML می باشند .
نکته دوم: تکنولوژی
XSLT ، مشابه یک زبان برنامه نویسی بوده و دارای توابع و متدهای فراوانی است که نمونه آنها را می توان در سایر زبان های برنامه نویسی مشاهده نمود. مثلا" XSLT دارای یک حلقه تکرار با نام for-each است .<XSL:for-each> .تکنولوژی فوق دارای برخی امکانات خاص دیگر است که نمونه آنها در سایر زبانهای برنامه نویسی وجود ندارد . مثلا" با استفاده از المان <XSL:script> ، می توان در هر مکان دلخواه ، اقدام به درج اسکریپت های مورد نظر نمود. برای درج محتویات یک فایل نیز می توان از المان <XSL:include> استفاده کرد . در صورتیکه XML را بمنزله داده ها در نظر بگیریم ، XSL ، زبان برنامه نویسی مناسب ، بمنظور انجام عملیات دلخواه بر روی داده ها است .
نکته سوم: با اینکه
XSLT مشابه یک زبان برنامه نویسی است ولی دارای یک تفاوت اساسی با زبانهای برنامه نویسی است . زبان XSLT مبتنی بر تمپلیت ها می باشد . با استفاده از تمپلیت ها می توان نحوه پردازش یک المان را مشخص نمود. قوانین تمپلیت می توانند با اولویت های متفاوت و بصورت دلخواه تعریف و استفاده گردند. XSLT یک زبان تعریفی است . (در صورت مواجه شدن با یک الگو ، خروجی به چه صورت تولید می گردد ) . روش برنامه نویسی در XSLT ، مشابه زبانهای VB و یا جاوا نمی باشد . زبانهای فوق بصورت "رویه ای " می باشند . ( XSLT زبانی تعریفی است )
نکته چهارم: در تمام فایل های
XSL ، می بایست XSL namespace مشخص گردد. بدین ترتیب پارسر از نوع نسخه XSLT آگاهی پیدا خواهد کرد . برای مشخص نمودن namespace ، عموما" از عبارت زیر استفاده می گردد. با معرفی namespace مربوطه ، می توان یک XSLT را بگونه ای طراحی و پیاده سازی کرد که هم با نسخه های قبلی و هم با نسخه های بعدی ، سازگار باشد .

تکنولوژی XSL ، از CSS)Cascading Style Sheets) اقتباس شده است . CSS از یک Stylesheet بمنظور فرمت یک فایل HTML استفاده می نماید .XSL و CSS در موارد متعددی با یکدیگر تفاوت دارند. CSS ، امکان تعریف رنگ ها ، مشخص نمودن زمینه ها ، نوع فونت ها و ... را برای فایل های مبتنی بر Html فراهم می نماید. XSL امکان تبدیل یک فایل XML را به یک فایل Html ( و یا سایر فرمت های دلخواه نظیر متن ) فراهم می نماید. در این مقاله ده نکته مهم در رابطه با تکنولوژی XSL بیان می گردد .
نکته اول: همزمان با ارائه تکنولوژی
XML توسط کنسرسیوم وب ، تکنولوژی XSLT)Extensible StyleSheet Language for Transformation )، برای تبدیل یک سند به نوع دیگر ، مطرح گردید. در زمان پیاده سازی XSLT ، تکنولوژی دیگر و مرتبط با XML با نام XPointer نیز ارائه گردید. XPointer ، مکانیزمی برای اشاره به بخش های متفاوت یک سند XML است . یکی دیگر از تکنولوژی های مرتبط با XML ، با نام XPath مطرح و ارائه گردید. XSLT,XPointer و XPath جملگی تکنولوژی های مبتنی بر XML می باشند .
نکته دوم: تکنولوژی
XSLT ، مشابه یک زبان برنامه نویسی بوده و دارای توابع و متدهای فراوانی است که نمونه آنها را می توان در سایر زبان های برنامه نویسی مشاهده نمود. مثلا" XSLT دارای یک حلقه تکرار با نام for-each است .<XSL:for-each> .تکنولوژی فوق دارای برخی امکانات خاص دیگر است که نمونه آنها در سایر زبانهای برنامه نویسی وجود ندارد . مثلا" با استفاده از المان <XSL:script> ، می توان در هر مکان دلخواه ، اقدام به درج اسکریپت های مورد نظر نمود. برای درج محتویات یک فایل نیز می توان از المان <XSL:include> استفاده کرد . در صورتیکه XML را بمنزله داده ها در نظر بگیریم ، XSL ، زبان برنامه نویسی مناسب ، بمنظور انجام عملیات دلخواه بر روی داده ها است .
نکته سوم: با اینکه
XSLT مشابه یک زبان برنامه نویسی است ولی دارای یک تفاوت اساسی با زبانهای برنامه نویسی است . زبان XSLT مبتنی بر تمپلیت ها می باشد . با استفاده از تمپلیت ها می توان نحوه پردازش یک المان را مشخص نمود. قوانین تمپلیت می توانند با اولویت های متفاوت و بصورت دلخواه تعریف و استفاده گردند. XSLT یک زبان تعریفی است . (در صورت مواجه شدن با یک الگو ، خروجی به چه صورت تولید می گردد ) . روش برنامه نویسی در XSLT ، مشابه زبانهای VB و یا جاوا نمی باشد . زبانهای فوق بصورت "رویه ای " می باشند . ( XSLT زبانی تعریفی است )
نکته چهارم: در تمام فایل های
XSL ، می بایست XSL namespace مشخص گردد. بدین ترتیب پارسر از نوع نسخه XSLT آگاهی پیدا خواهد کرد . برای مشخص نمودن namespace ، عموما" از عبارت زیر استفاده می گردد. با معرفی namespace مربوطه ، می توان یک XSLT را بگونه ای طراحی و پیاده سازی کرد که هم با نسخه های قبلی و هم با نسخه های بعدی ، سازگار باشد .

ادامه مطلب ...

نوشته های سایه دار توسط CSS

درست کردن سایه توسط نرم افزارهای گرافیکی مانند فتوشاپ یا فایروورکس کار ساده ای میباشد و احتمالا اکثر شما طریقه انجام این کار رو بلد هستید . اما نکته اینه که تا جایی که امکانش هست از حجم صفحات بکاهیم.
در این خود آموز روش انداختی سایه برای متون و توسط کدهای
CSS رو آموزش خواهیم داد .
ابتدا از این آدرس نتیجه کار رو مشاهده کنید تا دقیقا بدونید که قرار است چه کاری انجام دهیم :
Demo
انجام این کار بسیار ساده است و در زیر توجهتون رو به اون جلب میکنم :
کاری که در حقیقت انجام میدهیم این است که توسط آدرس دهی مطلق (
absolute) 2 متن که اولی نقش نوشته اصلی و دومی نقشه سایه را برعهده خواهند گرفت با فاصله ۲px از همدیگر قرار میدهیم .به کد زیر که در صفحه html ما نوشته خواهد شد دقت کنید :
1. <
div id=“shadow”>
2. <
span class=“firstlayer”>Text with shadow using CSS</span>
3. <
span class=“secondlayer”>Text with shadow using CSS</span>
4. </
div>
همانطور که مشاهده میکنید یک متن ۲ بار و در قالب ۲ کلاس مختلف و تحت آیدی
shadow نوشته شده اند و هیچگونه عمل خاص دیگری بر روی متونمان انجام نداده ایم .کار اصلی ما بر روی CSS انجام خواهد پدیرفت .
کاری که انجام میدهیم این است که به تگ
text container(#shadow) آدرس دهی نسبی نسبت میدهیم اینکار باعث خواهد شد تمامی المانهایی که در داخل تگ #shadow استفاده خواهند شد توسط آدرس دهی مطلق وابسته به تگ #shadow بشوند نه به تگ body
در مرحله بعد به کلاسهای
firstlayer و secondlayer موقعیت دهی مطلق میکنیم با این تفاوت که secondlayer به مقدار ۲px پایینتر و به راست بیاید .

ادامه مطلب ...

آشنایی با DirectX و OpenGL

چکیده :

یک بازی کامپیوتری را روی کامپیوترتان اجرا می‌کنید. فعلا‌ً کارت گرافیک شما روی اسلا‌تAGP سوار می‌شود، پردازشگر سلرون دارید و ... پس از چند ماه یا چند سال کامپیوتر جدیدی می‌خرید. اکنون اسلا‌ت کارت گرافیکی شما PCI Express است و یک پردازشگر 64 بیتی دارید. همان بازی را روی این کامپیوتر هم نصب و اجرامی‌کنید! شاید به نظر طبیعی میآید که همه چیز باید همین‌طور باشد. اما چگونه یک بازی روی کامپیوترهایی با تراشه‌ها و سخت‌افزارهای مختلف و گاه فناوری متفاوت اجرا می‌شود؟ APIهای گرافیکی یا همان رابط‌های برنامه‌نویسی، بخش بزرگی از این مشکل را حل می‌کنند و امکانات گسترده دیگری را نیز در اختیار برنامه‌نویسان و توسعه‌دهندگان بازی و برنامه‌های چندرسانه‌ای قرارمی‌دهند. OpenGL وDirectX، دو مجموعه API گرافیکی و صوتی هستند که برای آسان‌تر ساختن توسعه بازی‌ها و نرم‌افزارهای چندرسانه‌ای طراحی شده‌اند.

API گرافیکی چیست؟

API درواقع بین برنامه و سخت‌افزاری که برنامه روی آن اجرا می‌شود، نقش یک هماهنگ‌کننده را دارد و مانند پلی میان سخت‌افزار و نرم‌افزار ارتباط ایجاد‌می‌کند. یعنی برنامه‌نویس کدهایی می‌نویسد که داده‌های گرافیکی خود را به وسیله دستورهای استانداردی به درایور API می‌فرستد نه مستقیماً به خود سخت‌افزار. سپس درایوری که شرکت سازنده سخت‌افزار تولید‌کرده است، این کداستاندارد تولیدشده را به فرمت بومی و ویژه‌ای که برای آن مدل خاص سخت‌افزار قابل شناسایی است، ترجمه می‌کند.

Microsoft DirectX

شرکت مایکروسافت در سال 1995 DirectX را ساخته و توسعه داده‌است. این نرم‌افزار شامل مجموعه‌ یکپارچه‌ای از ابزارهای برنامه‌نویسی است که به توسعه‌دهندگان امکان می‌دهد انواع مختلف نرم‌افزارهای مالتی‌مدیا را روی پلتفرم ویندوز تولید کنند. DirectX به برنامه‌ای که بر پایه آن طراحی شده امکان می‌دهد به آسانی قابلیت‌های سخت‌افزار کامپیوتر را شناسایی کند و پارامترهای برنامه را با آن هماهنگ سازد.
DirectX
شامل APIهایی است که دسترسی به بخش‌های ویژه‌ای از سخت‌افزار مانند تراشه‌های شتاب‌دهنده گرافیک سه‌بعدی و کارت صوتی را میسرمی‌کند. این APIها کنترل توابع سطح پایین، یعنی نزدیک به سخت‌افزار، شامل شتاب‌دهنده گرافیکی دو بعدی، پشتیبانی از دستگاه‌های ورودی مانند دسته بازی، صفحه‌کلید و ماوس، و کنترل میکس و خروجی صدا را انجام می‌دهند.
DirectX 7.0
در سال 1999 با شش کامپوننت عرضه شد که عبارت بودند از: Direct3D،DirectDraw ،DirectSound ،DirectPlay ،DirectInput و DirectMusic.
در اواخر سال 2000 میلا‌دی، DirectX 8.0 عرضه شد که در آن کامپوننت‌های DirectSound و DirectMusic با هم ادغام شدند و با نام کامپوننت Direct Audio معرفی شدند.

دانلود مقاله