Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Persian
  4. مشکل با حجم برنامه ... !
Forum Updated to NodeBB v4.3 + New Features

مشکل با حجم برنامه ... !

Scheduled Pinned Locked Moved Persian
7 Posts 5 Posters 3.8k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    Modern
    wrote on last edited by
    #1

    p{direction:rtl; text-align:right}. سلام بچه ها
    من وقتی برنامه ای با Qt مینویسم وقتی اجرا میکنم که هیچ(داخل محیط QtCreator) ولی وقتی به صورت آزاد میخام اجرا کنم Error میده (Error چنتا فایل dll) وقتی فایل ها رو اظافه میکنم برنامه اجرا میشه ولی خیلی حجمش بالا میره در صورتی که حجم برنامه فقط چند کیلوبایته
    مثلا من یه برنامه ساختم که 57 کیلوبایت بود ولی با اظافه شدن فایل های QtCore4.dll و QtGui4.dll حجم برنامه شد 12 مگابایت و خورده ای ...
    چیکار کنم اینهمه حجم بالا نره ... ؟

    1 Reply Last reply
    0
    • S Offline
      S Offline
      shs_night
      wrote on last edited by
      #2

      p{direction: rtl; text-align:right}. سلام
      برای اجرا در خارج از محیط Qt Creator میتونی مسیر کتابخونه ها رو در متغیر Path از Environment Variables ثبت کنی یا اینکه کیوت رو بصورت Static کامپایل کنی

      QtSDK 1.2 + MinGW + Desktop !

      1 Reply Last reply
      0
      • M Offline
        M Offline
        mohsen
        wrote on last edited by
        #3

        p{direction: rtl; text-align: right}. خوب اینها لایبرری های کیوت هستن و حتما باید موجود باشن. به هرحال کیوت امکانات زیادی در اختیار شما میگذاره. چه بخشی از اون رو استفاده کنید و چه تمام اونهارو، لایبرری هایی که استفاده کردین باید موجود باشه. در واقع دلیل استفاده شما از کیوت، همین لایبرری ها هستن وگرنه شما چیزی بغیر از ++c استفاده نمیکنید.
        تنها کاری که میشه کرد compress کردن اونها هست که فکر کنم حجم رو از نصف کمتر کنه.
        در عوض این رو در نظر داشته باشید که شما یک برنامه Portable تولید کردین. این یک مزیته که کیوت نسبت به framework های دیگه داره. برنامه شما نیاز به نصب نداره و همچنین نیاز به نصب واسط مثل .net framework نیست.

        1 Reply Last reply
        0
        • M Offline
          M Offline
          Modern
          wrote on last edited by
          #4

          p{direction:rtl; text-align:right}. بازم سلام
          ببینید محسن جان وقتی من از این فایل ها داخل برنامم استفاده نکردم چطور باید ازشون استفاده کنم .. ؟
          #include <QApplication>
          #include <QPushButton>
          #include <QHBoxLayout>
          #include <QVBoxLayout>
          اینها کل فایل هدر هایی هستند که من ازشون اتفاده کردم
          حالا طبیعتا فایل هایی که این هدر ها داخلشونن (صرفا این هدر ها) رو باید من به برنامه اظافه کنم (درسته یا نه)
          در برنامه نویسی MFC همچین چیزی نمیخاد در حالی که اونم مجموعه ای از کتاب خانه های مایکروسافت هست .. !
          حالا من فکر نمیکنم روش دگه ای نباشه ... ؟

          1 Reply Last reply
          0
          • M Offline
            M Offline
            mohsen
            wrote on last edited by
            #5

            p{direction:rtl; text-align:right}. کی گفته که MFC لایبرری نداره؟ تمام لایبرری های MFC داخل VC++ Redistribution Package هست که همراه با اون یا همراه با نصب .net framework نصب میشه. ولی چون MFC قدیمی هست معمولا روی ویندوز نصب شده از قبل.
            در مورد کیوت این رو بدونید که کیوت فقط یک سری لایبرری هست. اگر تجربه استفاده از پروژه های Cross Platform مثل GTK یا FLTK یا WXWidgets رو داشته باشید دلیل استفاده از این لایبرری ها رو متوجه میشید. اگر می خواهید یک برنامه ساده و کوچک تولید کنید که نیاز به امکانات زیاد ندارید و فقط می خواهید که روی ویندوز اجرا بشه خوب از همون MFC استفاده کنید!
            ولی اگر قصد استفاده از کیوت رو دارید برای حساسیت شما چند حالت وجود داره
            1- اینکه لایبرری های کیوت میتونن بصورت shared libraries هم مورد استفاده قرار بگیرن. یعنی اینکه میتونین یک distributable package درست بکنین و از کاربرتون بخواین که اون رو فقط 1 بار نصب کنه و از اون به بعد دیگه نیازی به بهمراه فرستادن لایبرری ها برای برنامه های بعدی نیست.
            2- لایبرری ها و برنامه ات رو با 7zip کم حجم کن. یک QtCore4.dll و QtGui4.dll با 7zip تبدیل شدن به 3.12 مگابایت بجای 10.6 و یک پکیج شامل
            QtCore4.dll
            QtGui4.dll
            QtNetwork4.dll
            QtSql4.dll
            QtWebkit4.dll
            تبدیل شدن به 6.55 مگابایت بجای 24.4 مگابایت.

            1 Reply Last reply
            0
            • B Offline
              B Offline
              bepehr
              wrote on last edited by
              #6

              سلام
              من چند وقتی بود پای کیوت کار میکردم تا اینکه یکی از پروژه هامو وقتی تموم کردم دیدم حجمش زیادی بالاس چون لایبری های کیوت و پایتون کنارش هستن بعد از فشرده سازی هم باز حجم فایل نصبم پایین تر از 12 مگا نیومد چون حجم برنامه 35 مگا بود
              تا اینکه العان دارم در مورد کیوت و سی پلاس میخوم و یه جایی خوندم که میشه هجم همین دی ال ال های اصلی رو هم کم کرد با ورداشتن چیزایی که استفاده نکردیم ازشون
              دوستان میتونین در این مورد توضیح بدین ؟

              1 Reply Last reply
              0
              • A Offline
                A Offline
                absfrm
                wrote on last edited by
                #7

                p{direction:rtl;text-align:right}. سلام
                بله دوست عزیز
                درست خوندید
                منتها باید خودتون بعد از ویرایش دوباره اونها رو کامپایل کنید.کار ساده ای نیست.ولی امکان پذیره

                If You Want You Can!

                1 Reply Last reply
                0

                • Login

                • Login or register to search.
                • First post
                  Last post
                0
                • Categories
                • Recent
                • Tags
                • Popular
                • Users
                • Groups
                • Search
                • Get Qt Extensions
                • Unsolved