PDA

View Full Version : سوال: تاثیر ویندوز ۳۲ بیتی و ۶۴ در برنامه سی شارپ



sm_1366
دوشنبه 03 آذر 1399, 17:47 عصر
سلام خسته نباشید به همگی
خواستم ببینم امکان داره پروژه ای که روی ویندوز ۶۴ بیتی نصب شده و نوشته شده
روی ویندوز ۳۲ بیتی جواب نده؟
همچین چیزی امکانش هست؟

the king
سه شنبه 04 آذر 1399, 05:33 صبح
سلام خسته نباشید به همگی
خواستم ببینم امکان داره پروژه ای که روی ویندوز ۶۴ بیتی نصب شده و نوشته شده
روی ویندوز ۳۲ بیتی جواب نده؟
همچین چیزی امکانش هست؟
بله. بصورت پیشفرض پروژه ها با تنظیم Platform target ئه Any CPU خروجی Build می کنند که هم روی پردازنده 32 بیتی و هم 64 بیتی اجرا میشه.
یعنی برنامه بصورت خودکار روی ویندوز 64 بیتی 64 بیتی اجرا میشه و روی ویندوز 32 بیتی 32 بیتی اجرا میشه.
حالا اگر این برنامه به حافظه زیادی نیاز داشته باشه که در سیستم 32 بیتی موجود نباشه، یا در کد فرض شده باشه که آدرس های حافظه 64 بیتی است، روی سیستم 64 بیتی مشکلی پیدا نمی کنه ولی روی سیستم 32 بیتی با مشکل مواجه میشه.

در ضمن برنامه نویس ممکنه در پروژه به موردی ارجاع داده باشه که فقط روی سیستم عامل 64 بیتی هست، مثلا مسیر پوشه SysWOW64 یا Program Files (x86)

همچنین به تمایل برنامه نویس یا بخاطر استفاده از کتابخانه و کمپوننت ای که صرفا برای پردازنده 64 بیتی طراحی شده، تنظیم Platform target ممکنه روی x64 قرار بگیره.
خروجی همچین پروژه ای صرفا روی پردازنده 64 بیتی قابل اجرا است.
152504

sm_1366
جمعه 07 آذر 1399, 02:06 صبح
بله. بصورت پیشفرض پروژه ها با تنظیم Platform target ئه Any CPU خروجی Build می کنند که هم روی پردازنده 32 بیتی و هم 64 بیتی اجرا میشه.
یعنی برنامه بصورت خودکار روی ویندوز 64 بیتی 64 بیتی اجرا میشه و روی ویندوز 32 بیتی 32 بیتی اجرا میشه.
حالا اگر این برنامه به حافظه زیادی نیاز داشته باشه که در سیستم 32 بیتی موجود نباشه، یا در کد فرض شده باشه که آدرس های حافظه 64 بیتی است، روی سیستم 64 بیتی مشکلی پیدا نمی کنه ولی روی سیستم 32 بیتی با مشکل مواجه میشه.

در ضمن برنامه نویس ممکنه در پروژه به موردی ارجاع داده باشه که فقط روی سیستم عامل 64 بیتی هست، مثلا مسیر پوشه SysWOW64 یا Program Files (x86)

همچنین به تمایل برنامه نویس یا بخاطر استفاده از کتابخانه و کمپوننت ای که صرفا برای پردازنده 64 بیتی طراحی شده، تنظیم Platform target ممکنه روی x64 قرار بگیره.
خروجی همچین پروژه ای صرفا روی پردازنده 64 بیتی قابل اجرا است.
152504

بسیار بسیار ممنونم از توضیحات کامل شما ...
امیدوارم دلیل باز نشدن فایل برنامه ی من همین باشه باید ویندوز رو تغییر بدم و امیدوارم باز بشه ...
خیلی ممنونم از شما