تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 2 12 آخرآخر
نمايش نتايج 1 به 10 از 12

نام تاپيک: کمکککک--نحوه نوشتن فارسی در برنامه های win32

  1. #1
    داره خودمونی میشه rf.ariyapoor's Avatar
    تاريخ عضويت
    Mar 2008
    محل سكونت
    تهران
    پست ها
    103

    14 کمکککک--نحوه نوشتن فارسی در برنامه هایconsole application

    دوستان یه خواهشی داشتم
    میشه یکی به من توضیح بده که اگه بخوام تو برنامه های console application فارسی بنویسم باید چه کار کنم
    تو خود کد که میذارم بعد که اجرا می کنم یه سری کاراکتر میاره
    یه توضیحی بدید که باید چی کار کنم
    ممنون
    Last edited by rf.ariyapoor; 14-04-2008 at 10:53.

  2. #2
    داره خودمونی میشه rf.ariyapoor's Avatar
    تاريخ عضويت
    Mar 2008
    محل سكونت
    تهران
    پست ها
    103

    پيش فرض

    آقا هیچکس نیست اینجا جواب مارو بده

  3. #3
    حـــــرفـه ای
    تاريخ عضويت
    Aug 2006
    پست ها
    793

    پيش فرض

    سلام.
    دو API برای این کار وجود داره که باید از اونها استفاده کنین.

    SetConsoleCP
    SetConsoleOutputCP

    که برای تغییر CodePage برنامه تون به کار میره.
    مثلا از CodePage = 1256 استفاده کنین. (Arabic)

  4. #4
    داره خودمونی میشه rf.ariyapoor's Avatar
    تاريخ عضويت
    Mar 2008
    محل سكونت
    تهران
    پست ها
    103

    پيش فرض

    دوست عزیز میشه یه کم بیشتر توضیح بدی چون من اصلا با Api ها کار نکردم
    اگه میشه یه بر نامه ساده که یه جمله فارسی رو چاپ کنه برام مثال میزنی
    ممنون

  5. #5
    داره خودمونی میشه cpplover's Avatar
    تاريخ عضويت
    Dec 2007
    محل سكونت
    esfarayen
    پست ها
    127

    پيش فرض

    خوب دوست من همونطوری که گفته شد شما باید از این توابع استفاده کنید که از توابع SDK هستند.
    تابع اول رو با بررسی که در msdn انجام دادم برای شما توضیح میدم :
    درحقیقت صفحه کد ورودی بکار رفته با کنسول را با فراخوانی پروسه ست میکند. SetConsoleCPتابع
    یک برنامه کنسول بکار میبرد صفحه کد ورودی اش را تا ورودی کیبرد را به مقدار کاراکتر مطابق ترجمه کند.
    تابع یک آرگومان داره و به این صورت به کار میره :

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

    اما wCodePageID در حقیقت شناسه ای از کدی است که باید ست شود .
    هدر های مورد نیاز شما Wincon.hو Windows.h. هستند.
    اگر تابع با موفقیت انجام شود مقداری غیر صفر بر میگرداند.
    واقعیتش اینه که من زیاد کنسول کار نکردم و اینا رو هم از msdn ترجمه کردم امیدوارم مفید واقع بشه.

  6. #6
    داره خودمونی میشه rf.ariyapoor's Avatar
    تاريخ عضويت
    Mar 2008
    محل سكونت
    تهران
    پست ها
    103

    پيش فرض

    مرسی
    مثلا واسه کد زیر
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    من باید چه تغییراتی بدم تا خروجی برنامم درست باشه
    cpplover من وقتی windows.h و wincon.h رو include میکنم و تو main از تابع SetConsoleCP() استفاده میکنم موقع کامپایل حدود 82 تا error میده که وقتی error ها رو میبینم میره تو خود کد های header فایل های windows.h و wincon.h ارور میگیره
    البته ورودی setconsoleCP() رو هم 1256 مذارم که someone تو چند پست قبل گفته بود که کد پیج arabic هست
    ممنون میشم بازم راهنماییم کنید

  7. #7
    داره خودمونی میشه cpplover's Avatar
    تاريخ عضويت
    Dec 2007
    محل سكونت
    esfarayen
    پست ها
    127

    پيش فرض

    دو نکته رو بگم

    اگه از ویژوال 2005 استفاده کنی و پروژه کنسول درست کنی هدر هایی رو که گفتم رو میشناسه چون در ویژوال 6 بعضی از هدر ها قدیمی هستند.

    به این آدرس رجیستری برو :

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\Nls\CodePage

    احتمالا مقادیری که در این تابع باید قرار بدی اعدادی هستند که مقدار این زیر کلیدها رو تعیین میکنه . . .
    چند تا رو تست کن.

  8. #8
    داره خودمونی میشه rf.ariyapoor's Avatar
    تاريخ عضويت
    Mar 2008
    محل سكونت
    تهران
    پست ها
    103

    پيش فرض

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    من برنامه رو تو محیط visual stadio 2005 اجرا می کنم
    به مسیری که گفتی هم رفتم و یه سری از اون ها رو واسه setconsolecp() فرستادم اما بازم موقع کامپایل 82 خطا میگیره که وقتی خطا ها رو بررسی میکنم میره تو هدر فایل wincon و از اونجا مشکل میگیره
    بازم ممنون میشم راهنماییم کنید

  9. #9
    اگه نباشه جاش خالی می مونه cd3's Avatar
    تاريخ عضويت
    Jan 2007
    پست ها
    267

    پيش فرض

    سلام. به نظر من فايل wincon.h وجود نداره .

  10. #10
    داره خودمونی میشه cpplover's Avatar
    تاريخ عضويت
    Dec 2007
    محل سكونت
    esfarayen
    پست ها
    127

    پيش فرض

    به نظر من فايل wincon.h وجود نداره
    من که این هدر رو در برنامه میارم مشکلی ایجاد نمیشه و 82 error هم نداره اما در ویژوال 6 دقیقا 82 error بوجود می اومد.
    در هر حال در وبلاگ [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] مطلبی تحت عنوان طراحی برنامه های فارسی در ++C وجود داره به این آدرس حتما رجوع کنید .امیدوارم نتیجه بگیرید.
    موفق باشید.

صفحه 1 از 2 12 آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •