ورود

View Full Version : سوال: تهیه AutoRUN سی دی با Qt



hamid_200611
پنج شنبه 01 تیر 1391, 23:05 عصر
با سلام خدمت دوستان
همونطور که میدونید برای ساختن AutoRUN سی دی برنامه های آماده زیادی هست ولی به علت محدودیت این برنامه ها من تصمیم دارم AutoRUN رو خودم برنامه نویسی کنم. حالا من میخواستم بدونم اگه از QT برای تولید آن استفاده بشه به مشکل بر نمی خوریم.منظورم از مشکل یعنی مثلا اجرا شدن روی انواع نسخه ویندوز (64و32) یا چیزه دیگه ای که بنظر شما اساتید شاید مشکل بشه.

نکات : من هیچ اطلاعات پایه از QT ندارم و تا حالا دات نت کار میکردم
آیا اصلا کار من درست است ؟
کارهای که تو AutoRUN میخوام انجام بدم ساده است مثلا خوندن یه فایل متنی ، اجرا کردن یه برنامه ، تغییر رجیستری ، پخش یه آهنگ و بررسی سیستم عامل(مثلا نوع و 64 یا 32 بودن)

sd.CSharpProgrammer
جمعه 02 تیر 1391, 00:10 صبح
معمولاً برنامه های اتوران بصورت فقط یک فایل exe روی سی دی قرار میگیرن یعنی همه چیز تو اون فایل اجراییه. اگه بخوای با کیوت بنویسی باید چندتا dll هم کنار فایل اجراییت بگذاری که برنامه وابستشونه. البته میشه اون dllها رو به فایل اجرایی embed کرد ولی تا جایی که میدونم این امکان فقط تو نسخه تجاری (پولی) کیوت موجوده! ولی بنظر من شما برای اینکار از دلفی استفاده کنی بهتره. چون خروجی که بهت میده بصورت پیشفرض فقط یک فایل اجراییه و رو تمام نسخه های ویندوز (32 یا 64 بیتی) اجرا میشه.

موفق باشی...

حامد مصافی
جمعه 02 تیر 1391, 11:12 صبح
...این امکان فقط تو نسخه تجاری (پولی) کیوت موجوده! قبلاً هم عرض کردم، نسخه رایگان و تجاری به جز افزونه‌های شرکت digia فرقی با‌هم ندارند. شما می‌تونید در نسخه رایگان هم کیوت رو به صورت static کامپایل کنید.


@hamid_200611 (http://barnamenevis.org/member.php?69412-hamid_200611):
بهت اطمینان میدم به توجه به امکانات کیوت مانند استایل‌شیت یا qml و ... هیچ زبان و فریم‌ورکی به اندازه اون برای نوشتن اتوران مناسب نیست.

kitten
جمعه 02 تیر 1391, 20:57 عصر
سلام دوست عزیز من با آقای حامد مصافی موافق ترم.من یه اتوران با کیوت نوشتم و به نظرم خیلی خوب هم نوشته شد.فقط کافیه استاتیک کامپایل کنی

ayub_coder
جمعه 02 تیر 1391, 21:27 عصر
یعنی میشه کاری کرد که برنامه خروجی EXE نیاز به هیچ DLL نداشته باشه و فقط یک فایل EXE باشه؟ و با کپی کردن اون به یک کامپیوتر دیگه بدون نیاز به فایل اضافی اجرا کرد؟

alamate_aoal
شنبه 03 تیر 1391, 04:59 صبح
اگه کیوت و پروژه خودتون رو استاتیک کامپایل کنید بله

ayub_coder
شنبه 03 تیر 1391, 08:48 صبح
فایل های کیوت بعضی هاشون چند مگابایت هستن! بعد اندازه فایل اجرایی خیلی بزرگ نمیشه؟

weox__
شنبه 03 تیر 1391, 14:31 عصر
فایل های کیوت بعضی هاشون چند مگابایت هستن! بعد اندازه فایل اجرایی خیلی بزرگ نمیشه؟

این نظر شما از دیدگاهی درست هست و از دیدگاهی درست نیست .

اولش این رو بگم که با upx و packer های دیگه براحتی می تونید حجم فایل خروجی رو کاهش بدید.(اگر از msvc به جای mingw استفاده کنید . خود به خود حجم فایل خروجی تون مقداری کمتر خواهد بود )


شاید یه برنامه ی ساده چیزی در حد 4 5 مگ که با upx به 1 2 مگ می رسه .
از یه نظر کاملا درسته . این برنامه ها رو اگه با win32api بنویسید در نهایت شاید 500 کیلو بایت هم نشن . ولی مسئله اینجاست چند هفته باید وقت صرف کنید تا با win32api همچین برنامه بنویسید و چقدر برنامه نویسی با win32api طاقت فرسا و اعصاب خورد کن و زمان گیر هستش.

الان دنیای سرعت هست . تو دنیای امروز مطمئنا دیگه مگا بایت ها زیاد مطرح نیستند در این سطح (مگر اینکه حالا شما در حال نوشتن درایور هستین که در اون صورت کیوت بدرد شما نمی خوره )

و در طرف مقابل سکه، اگه شما همون برنامه رو با جاوا یا دات نت بنویسید درسته فایل خروجی شما مثل win32api شاید 500 کیلو بایت هم نشه . ولی شما در نظر بگیرید که چیزی حدود 50 60 مگابایت به ماشین مجازی نیاز دارید و "کد میانی" شما هست که 500 کیلو بایت هست نه کد اجرایی شما .(حالا در نظر نمی گیریم که با افت سرعت زیادی مواجه می شید)(هرچند برای توسعه نرم افزار تجاری همون دات نت و جاوا بهتر از Qt هستن )