PDA

مشاهده نسخه کامل : مشکل در اجرای فایل های exe شده matlab



amorou
29-12-12, 01:08
یه مشکل جدی.....کمک کمک
*من وقتی یه برنامه رو(که ورودی میگیره) با mcc تبدیل به exe میکنم بعد از اینکه اجرا شد و ورودی ها رو میدم و خروجی ها رومیگیرم بعد از دو ثانیه صفحه مورد نظر بسته میشه کسی میدونه دلیلش چیه؟؟؟؟

و1 سوال: میشه کاری کرد که اگه توو برنامه فارسی بنویسم, بعد از اینکه exe شد با mcc ,قارسی رو بخونه؟

amorou
07-01-13, 20:03
یه مشکل جدی.....کمک کمک
*من وقتی یه برنامه رو(که ورودی میگیره) با mcc تبدیل به exe میکنم بعد از اینکه اجرا شد و ورودی ها رو میدم و خروجی ها رومیگیرم بعد از دو ثانیه صفحه مورد نظر بسته میشه کسی میدونه دلیلش چیه؟؟؟؟

و1 سوال: میشه کاری کرد که اگه توو برنامه فارسی بنویسم, بعد از اینکه exe شد با mcc ,قارسی رو بخونه؟



یعنی یکی پیدا نمیشه جواب منو بده؟؟؟؟؟!!!!

ravegoat
08-02-13, 10:23
یه مشکل جدی.....کمک کمک
*من وقتی یه برنامه رو(که ورودی میگیره) با mcc تبدیل به exe میکنم بعد از اینکه اجرا شد و ورودی ها رو میدم و خروجی ها رومیگیرم بعد از دو ثانیه صفحه مورد نظر بسته میشه کسی میدونه دلیلش چیه؟؟؟؟

و1 سوال: میشه کاری کرد که اگه توو برنامه فارسی بنویسم, بعد از اینکه exe شد با mcc ,قارسی رو بخونه؟



دوست گرامي ضمن تبريك عضويت تون و عذر خواهي بابت تاخير...

در مورد سوال اول تون شما هيچ اشاره اي به توابع به كار رفته در برنامه تون تا دقيق تر راهنمايي تون كرد.

متوجه سوال دوم تون هم نميشم. لطفا" بيش تر توضيح بديد...

آرمين

amorou
02-03-13, 17:07
دوست گرامي ضمن تبريك عضويت تون و عذر خواهي بابت تاخير...

در مورد سوال اول تون شما هيچ اشاره اي به توابع به كار رفته در برنامه تون تا دقيق تر راهنمايي تون كرد.

متوجه سوال دوم تون هم نميشم. لطفا" بيش تر توضيح بديد...

آرمين

ممنون ازینکه جواب دادین....
در مورد سوال 1 : توابع خاصی نیستن.... بیشتر از دستور های if استفاده کرم..... مجبورم بابتش حتما یه نمودار هم بزارم که رسم کنه تا بسته نشه سری و اگه نموار روببندم خود برامه هم بسته میشه!!!
در مورد سوال 2: منظورم اینه که مثلا اگه توو برنامه بنویسم : disp(' مقدار بالا بیانگر اینست که.....') .... و در حالت کلی داخل دیسپلی فارسی بنویسم بعد از اینکه با mcc به فایل اجرایی تبدیل شد نوشته ی فارسی رو یه جورایی چرت و پرت نشون میده با یه سری حروف غیر قابل فهم.... ویندوزم هم 7 هست....

ravegoat
02-03-13, 20:26
ممنون ازینکه جواب دادین....
در مورد سوال 1 : توابع خاصی نیستن.... بیشتر از دستور های if استفاده کرم..... مجبورم بابتش حتما یه نمودار هم بزارم که رسم کنه تا بسته نشه سری و اگه نموار روببندم خود برامه هم بسته میشه!!!
در مورد سوال 2: منظورم اینه که مثلا اگه توو برنامه بنویسم : disp(' مقدار بالا بیانگر اینست که.....') .... و در حالت کلی داخل دیسپلی فارسی بنویسم بعد از اینکه با mcc به فایل اجرایی تبدیل شد نوشته ی فارسی رو یه جورایی چرت و پرت نشون میده با یه سری حروف غیر قابل فهم.... ویندوزم هم 7 هست....
خواهش می کنم...

1-متوجه شدم. اگر برنامه در محیط GUIDE متلب نوشته نشه، برنامه به شکل کنسولی کامپایل میشه. در این صورت اگر برنامه هیچ ورودی ای از کاربر نگیره، بعد اتمام کارش، خود به خود بسته میشه. برای رفع این مشکل می تونید آخر mfile اصلی تون دستور pause رو اضافه کنید. در این صورت وقتی کار برنامه به اتمام رسید، برنامه منتظر دستور کاربر می مونه تا بسته بشه. ولی وقتی از یک رابط گرافیکی مثل نمودار یا محیط GUIDE استفاده می کنید، این پنجره ی گرافیکی، جریان اصلی برنامه تون رو کنترل می کنی و وقتی هم کاربر اون رو ببنده، تمام اجزای برنامه هم بسته میشه.

2-تا اونجا بنده از نسخه های متلب اطلاع دارم، mfile ها اصلا" کارکتر های Unicode رو پوشش نمی دن و اگر چنین کارکتر هایی وارد فایل بشه، به شکل مبهم در خروجی به نمایش در میاد. حتی اگه mfile به شکل Unicode به جای ANSI ذحیره بشه بازم برنامه خطا میده و به نسخه ی سیستم عامل تون هم بستگی نداره. حالا فرضا" این مشکل این جا رفع بشه، باز گمان کنم تو نمایش ترمینالی حروف در هم می ریزه! درنتیجه فعلا" راه حلی برای این مسئله سراغ ندارم.

موفق باشید
آرمین

amorou
02-03-13, 21:27
ممنونم..... مشکل اول حل شد........ در مورد دومی اگه توو خود محیط matlab برنامه run کنم که نوشته های فارسی رو خوب نشون میده و مشکلی نداره ولی منتهی تو فایل exe شده هست که این مشکل وجود داره.... به نظرتون راهی هست که این کد ها رو به کد های زبان برنامه نویسی دیگه ای تبدیل کرد و نهایتا از اون زبان برنامه نویسی خروجی exe گرفت , به طوریکه نوشته های فارسی رو نشون بده؟؟!

ravegoat
03-03-13, 06:00
ممنونم..... مشکل اول حل شد........ در مورد دومی اگه توو خود محیط matlab برنامه run کنم که نوشته های فارسی رو خوب نشون میده و مشکلی نداره ولی منتهی تو فایل exe شده هست که این مشکل وجود داره.... به نظرتون راهی هست که این کد ها رو به کد های زبان برنامه نویسی دیگه ای تبدیل کرد و نهایتا از اون زبان برنامه نویسی خروجی exe گرفت , به طوریکه نوشته های فارسی رو نشون بده؟؟!
خواهش می کنم...خدا رو شکر...

بله توسط نرم افزار Simulink Coder می تونید کد های متلب رو تحت C تولید کنید ولی خودم هیچ کامپایلری رو سراغ ندارم که بتونه به طور پیش فرض کد C شما رو تبدیل به برنامه ای اجرایی ای بکنه که بتونه کارکتر های فارسی رو در محیط کسنول نمایش بده! اون زمان که DOS هم وجود داشت شما نمی تونستید یه برنامه ی فارسی رو تحت این سیستم عامل اجرا کنید برای همین یه توابعی در اومد که به توابع شرکت نفت معروف بود که به شکلی سبب می شد کارکتر های فارسی در محیط کنسول به شکل صحیح نمایش داده بشن ولی متاسفانه هیچ اطلاعی از نحوه ی کار این توابع ندارم.
در حال حاضر هم اگر شما یک Console Application رو فرضا" به طور مستقیم با Visual Studio بنویسید که شامل کارکتر های فارسی باشه و تحت Windows 7 هم اجرا کنید باز هم کارکتر های فارسی به شکل نامفهوم نمایش داده میشن. در نتیجه گمان نکنم تبدیل کد ها به یه زبان دیگه هم مشکل شما رو حل کنه. به عنوان تنها راه حلی که فعلا" به ذهنم می رسه، شما بسته ی ICU (Only the registered members can see the link) رو نصب کنید و شاید بعد با دستور native2unicode بتونید بایت کارکتر ها رو به عنوان ورودی بدید و در نهایت در خروجی این فرمان عبارت فارسی رو دریافت کنید که مستقیما" با disp به نمایش دربیاد ولی شخصا" تا حالا چنین کاری رو نکردم تا نحوه ی اجرا شو بخوام دقیق شرح بدم.

موفق باشید
آرمین

amorou
03-03-13, 22:59
به هر شکل ممنون از راهنمایی ........ خوب الان که بحث روی exe كرىن فايل متلب هست يه مشکل دیگه ای که توو این ضمینه دارم اینه که اگه از دستور deploytool برای اینکار استفاده کنم و فایل اجرایی ساخته شد( یا حتی پکیج کنم) ,, بعد که میخوام اجرا کنم باز نمیشه بدون هیچ خطایی!!! و فقط اگه نمودار باشه نمودار رونشون میده ولی به هیج وجه هیچ نوشته ای رو نشون نمیده و اصلا پنجره ای باز نمیشه بابت نشون دادن !!!شما میدونیدعلتش چیه؟؟؟....... واینکه از لحاظ اجرایی فرقی داره با فایلی که از طریق mcc تولید میشه؟؟؟( منظورم شکل گرافیکی محیط فایل اجراییه)؟

ravegoat
06-03-13, 07:35
به هر شکل ممنون از راهنمایی ........ خوب الان که بحث روی exe كرىن فايل متلب هست يه مشکل دیگه ای که توو این ضمینه دارم اینه که اگه از دستور deploytool برای اینکار استفاده کنم و فایل اجرایی ساخته شد( یا حتی پکیج کنم) ,, بعد که میخوام اجرا کنم باز نمیشه بدون هیچ خطایی!!! و فقط اگه نمودار باشه نمودار رونشون میده ولی به هیج وجه هیچ نوشته ای رو نشون نمیده و اصلا پنجره ای باز نمیشه بابت نشون دادن !!!شما میدونیدعلتش چیه؟؟؟....... واینکه از لحاظ اجرایی فرقی داره با فایلی که از طریق mcc تولید میشه؟؟؟( منظورم شکل گرافیکی محیط فایل اجراییه)؟
خواهش می کنم...
اگر در MFile هاتون دستور pause رو در انتها اضافه کردید و همچنان چنین مشکلی دارید متاسفانه دقیقا" نمی دونم علتش چیه!
در مورد تفاوت کامپایل با MCC و DeployTool هم یه تحقیقی کردم، متوجه شدم فرآیند کامپایل در این ابزار متفاوته ولی دقیقا" نمی دونم آیا DeployTool از MCC برای کامپایل کمک می گیره یا خیر!

موفق باشید
آرمین