+1 امتیاز
قبل در برنامه نویسی توسط (484 امتیاز)
برچسب گذاری دوباره قبل توسط
سلام دوستان!

یه برنامه ای که با تکنولوزی WPF و به زبون سی شارپ نوشته شده باشه، برای اینکه در سیستم کاربر اجرا بشه، آیا باید در اون سیستم، DirectX حتما از قبل نصب باشه؟

هر چی می دونید به بنده هم اطلاع بدید.

ممنونم :)

1 پاسخ

+1 امتیاز
قبل توسط (484 امتیاز)
انتخاب شده قبل توسط
 
بهترین پاسخ

پاسخ این سوال، محدود به داشتن یا نداشتن DirectX نمیشه؛ در حقیقت، باید بدونیم WPF چطوری کار می کنه؟

Windows Presentation Foundation، یه سامانه ی فرعی گرافیکی، برای رندر کردن واسط کاربری برنامه های ویندوزیه. برای این منظور، برنامه هایی که به کمک این تکنولوژی تهیه میشن، واسط کاربریشون در سه سطح گرافیکی مجزا، رندر میشه.

  •     در سطح اول، تمامی رندر ها، نرم افزاری هستن و هیچ نیازی به استفاده از منابع سخت افزاری نداریم.
  •     در سطح دوم، بخشی از رندرها به کمک منابع سخت افزاری صورت می گیره، بخش دیگه به صورت نرم افزاری.
  •     در سطح سوم، بیش تر رندر ها، به صورت سخت افزاری صورت می گیره.

تعیین اینکه از کدوم سطح گرافیکی برای رندر کردن واسط کاربری استفاده بشه، به عهده ی WPF؛ اما ما می تونیم متوجه بشیم که،در یه برنامه ی نمونه، از چه سطحی برای این منظور داره استفاده میشه؛ در این صورت، به کمک قطعه کد های این چنینی می شه به این موضوع پی برد:

int renTier = (RenderCapability.Tier >> 16);
MessageBox.Show(string.Format("Tier = {0}", renTier));

حالا، لازمه یادآور بشیم که، DirectX، دسته ای API های توسعه داده شده از سوی Microsoft که، به برنامه نویسا، قابلیت استفاده از ویزگی های سخت افزاری یه دستگاه رو میده؛ یعنی بدون این که بدون این که وارد جزئیات بشیم، می تونیم از بهترین ویزگی های سخت افزاری، برای برنامه های چند رسانه ای مون، استفاده کنیم.

پس در حقیقت، DirectX مدیریت منابع سخت افزاری دستگاه رو به عهده می گیره.

حالا با تمام این حرفا روشنه که، یه برنامه ی تهیه شده به کمک WPF، دو جور پیش نیاز نرم افزاری و سخت افزاری داره؛(البته به جز سطح یک که، نیازی به استفاده از منابع سخت افزاری دستگاه نیست.)

یعنی مثلا در دستگاه کاربر پذیرنده:

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

پس به طور کلی، برنامه ی نهایی ما، با این تکنولوژی، حتی بدون DirectX و سخت افزار مناسب هم، اجرا میشه، اما اون همه کاری که در قسمت واسط کاربری براش زحمت کشیدیم، به هدر می ره.

سوالات مشابه

+1 امتیاز
1 پاسخ 1.8هزار بازدید
+1 امتیاز
1 پاسخ 5.7هزار بازدید
+1 امتیاز
1 پاسخ 633 بازدید
0 امتیاز
1 پاسخ 1.4هزار بازدید
...