رفتن به مطلب
مرجع رسمی سی‌پلاس‌پلاس ایران
  • 0
mehrzero

مشکل فایل نهایی

سوال

سلام من مشکل گرفتم فایل نهایی Qtرو دارم

ورژن که استفاده میکنم qt-opensource-windows-x86-5.14.1

کمپایلر من mingwهستش و windows application هستش

مشکل من از این قراره که وقتی کدم رو دیباگ میکنم و میخوام فایل نهایی کدم رو بگیرم Qtفایل EXEای رو بهم میده که من وقتی این فایل نهایی رو اجرا میکنم خطای DLLمیده

DLLرو با استفاده ازسرچ درمحل نصب Qt پیدا میکنم و در پروژم کپی میکنم بعد از این که تمامDLLهارو انتقال میدم بازم خطا میده

the application was unable to start correctly 0xc00007b

لطفا کمکم کنیدUntitled.png.9a3641df2a8b51ec3056cc55fb900dd2.png

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

3 پاسخ به این سوال تا کنون داده شده است

پست های پیشنهاد شده

  • 0

قبلاً در این تاپیک توضیح داده شده.

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0

سلام من آموزشتون رو مطالعه کردم  ولی مشکلم رفع نشدمن تمام فایل های DLLرو با این روش در فایل نهاییم فراخوانی کردم ولی بازم ارور0xc00007b میداد

روش جدیدی پیدا کردم که برای هر پروژه و روی هرنسخه ویندوز این DLLها جواب میده سر زمان مناسب حتما با شما استاد گرامی و برنامه نویسان سایت به اشتراک میزارم 

موفق و پیروز باشید

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0

@کامبیز اسدزاده 

سلام به دوستان عزیز به خصوص استاد آقای کامبیز اسدزاده

من روشی رو پیدا کردم که میشه در تولید فایل نهایی (qt creator) خیلی کمک کنه

من حدودا یک ماهه درگیر فایل نهایی Qtبودم این روش خیلی سادس فقط نیاز دارید آموزش (نصب و راه اندازی برنامه‌های تحت Qt) را حتما مطالعه کنید اگر مشکلتون حل نشد حتما آموزش من رو مطالعه کنید 

شروع ایجاد یک پروژه ساده برای تست فایل نهایی Qt

من یک پروژه Qtرو ایجاد میکنم (new project+qt widgets application+mingw 64bit) در آخرfinishرا میزنم.

همان طور که متوجه شدید من یک پروژه به عنوان مثال ساختم که روشم را تست کنم.

حالا با حالت Release کمپایل میکنید .

حالا با روشی که آقای کامبیز اسدزاده در  آموزش (نصب و راه اندازی برنامه‌های تحت Qt) عنوان کردن فایل های DLLرو جمع آوری میکنیم.

نکته: بعضی مواقع همه فایل های DLLجمع آوری نمیشوند شما مجبور هستیم با استفاده از روش دستی تک به تک DLLهایی که در پوشه فایل EXEپروژه قرار نگرفته را پیدا کنید. 

روش اول:

خوب حالا تمام فایل های DLLجمع آوری شده را در پوشه در مسیر زیر کپی کنید

C:\Windows\System32 کپی کنید اگر پیغام جایگزین امد جایگزین کنید.

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

نکته: شما میتوانید برای فایل های DLLمورد نیاز نرم افزارتان یک installerبسازید و مسیرC:\Windows\System32vرا برای آن مشخص کنید تا نر افزارتان تمام و کمال خطایی نداشته باشن

روش دوم :

یک زمانی هست شما نمیخواین خودتون رو در گیر فایل DLLکنید و میخواهید هر نرم افزاری که مینویسید به سرعت بدون داشتن فایل DLLدر هر جایی از سیستم شما اجرا بشه از روش دوم استفاده میکنید.

بنابه کمپایلرتونmingw یا msvc2017 پوشه شما تغییر میکند 

چون من از کمپایلر mingw73_64 استفاده میکنم وارد پوشه mingwمیشوم  c:\QT_C\5.13.0\mingw73_64\bin

با استفاده ازروش زیر کل DLLهارو انتخاب و کپی میکنیم

در search bin عبارت زیر را تایپ میکنیم 

(*.dll)

همه DLLها را انتخاب و سپس کپی میکنیم درC:\Windows\System32 کپی کنید اگر پیغام جایگزین امد جایگزین کنید.

حالا شما هر بار که میخواهید با mingw کمپایل کنید نیازی به استخراج فایل DLL نداریدو هرموقع بخواهید نرم افزاری که نوشتید بدون DLLباز میشه.

آقای اسدزاده عزیز خیلی خیلی ممنونم از این کهاین سایت فوق العاده رو تاسیس کردین 

لطفا اگر من اشتباهی دارم راهنمایی کنید

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

به گفتگو ملحق شوید

شما همین الآن می‌توانید مطلبی را ارسال و بعداً ثبت‌نام کنید. اگر حساب کاربری دارید، و با حساب کاربری خود مطلب ارسال کنید.
نکته: مطلب شما قبل از انتشار نیاز به بازبینی توسط میانجی‌گر‌ها دارد.

مهمان
پاسخ به این سوال ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از ۷۵ اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به عنوان یک لینک به جای

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.


  • کاربران آنلاین در این صفحه   0 کاربر

    هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.

×
×
  • جدید...