Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Running a QML .exe file on Windows
QtWS25 Last Chance

Running a QML .exe file on Windows

Scheduled Pinned Locked Moved Solved General and Desktop
31 Posts 9 Posters 8.3k Views
  • 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.
  • Crawl.WC Offline
    Crawl.WC Offline
    Crawl.W
    wrote on last edited by
    #11

    Have you solved this problem?I encountered the same problem,my enviroment is msvc2017_64 + win10.

    jsulmJ 1 Reply Last reply
    0
    • Crawl.WC Crawl.W

      Have you solved this problem?I encountered the same problem,my enviroment is msvc2017_64 + win10.

      jsulmJ Offline
      jsulmJ Offline
      jsulm
      Lifetime Qt Champion
      wrote on last edited by
      #12

      @Crawl.W Did you use windeployqt tool?

      https://forum.qt.io/topic/113070/qt-code-of-conduct

      Crawl.WC 1 Reply Last reply
      1
      • jsulmJ jsulm

        @Crawl.W Did you use windeployqt tool?

        Crawl.WC Offline
        Crawl.WC Offline
        Crawl.W
        wrote on last edited by Crawl.W
        #13

        @jsulm Yes,windeployqt can not deploy a executable application,I double click the exe but nothing ever happens.I answer the question on stackoverflow.com where user name is Crawl.W as here.I copy qml floder to runtime directory,and then run the exe, then fell all other unoccupied files heartily.But seemly cannot delete some unoccupied thing in qml\QtQuick, if I delete it double click the exe will have nothing happened.

        K 1 Reply Last reply
        0
        • Crawl.WC Crawl.W

          @jsulm Yes,windeployqt can not deploy a executable application,I double click the exe but nothing ever happens.I answer the question on stackoverflow.com where user name is Crawl.W as here.I copy qml floder to runtime directory,and then run the exe, then fell all other unoccupied files heartily.But seemly cannot delete some unoccupied thing in qml\QtQuick, if I delete it double click the exe will have nothing happened.

          K Offline
          K Offline
          kenchan
          wrote on last edited by
          #14

          @Crawl.W
          You must pass it the correct arguments not just double click the exe.
          did you look at he docs here

          1 Reply Last reply
          1
          • Crawl.WC Offline
            Crawl.WC Offline
            Crawl.W
            wrote on last edited by
            #15

            @kenchan My program haven't arguments need to pass. I will read your post linkage carefully and refine some answers here.

            KillerSmathK 1 Reply Last reply
            0
            • Crawl.WC Crawl.W

              @kenchan My program haven't arguments need to pass. I will read your post linkage carefully and refine some answers here.

              KillerSmathK Offline
              KillerSmathK Offline
              KillerSmath
              wrote on last edited by
              #16

              @Crawl.W
              Kenchan has mentioded the deploy tool arguments.

              Windeployqt does'nt know if you are deploying an qml application, so you need to pass --qmldir [your qml root path folder] argument

              Note: if your qml root path folder has space characters, you should use double quotes between your path or it will interpret as Different Commands.

              @Computer Science Student - Brazil
              Web Developer and Researcher
              “Sometimes it’s the people no one imagines anything of who do the things that no one can imagine.” - Alan Turing

              Crawl.WC 1 Reply Last reply
              2
              • KillerSmathK KillerSmath

                @Crawl.W
                Kenchan has mentioded the deploy tool arguments.

                Windeployqt does'nt know if you are deploying an qml application, so you need to pass --qmldir [your qml root path folder] argument

                Note: if your qml root path folder has space characters, you should use double quotes between your path or it will interpret as Different Commands.

                Crawl.WC Offline
                Crawl.WC Offline
                Crawl.W
                wrote on last edited by Crawl.W
                #17

                @KillerSmath @kenchan I found my posting linkage of stackoverflow is invalid, I update it just now, Here(https://stackoverflow.com/questions/44762836/deploying-qt-c-qml-application-on-windows/55850012#55850012). My problem seems to need some non-dynamic library(DLL), and runtime is unoccupied. Kind of weird. I had already run my program and then I wanna know that's about what.

                KillerSmathK 1 Reply Last reply
                0
                • Crawl.WC Crawl.W

                  @KillerSmath @kenchan I found my posting linkage of stackoverflow is invalid, I update it just now, Here(https://stackoverflow.com/questions/44762836/deploying-qt-c-qml-application-on-windows/55850012#55850012). My problem seems to need some non-dynamic library(DLL), and runtime is unoccupied. Kind of weird. I had already run my program and then I wanna know that's about what.

                  KillerSmathK Offline
                  KillerSmathK Offline
                  KillerSmath
                  wrote on last edited by KillerSmath
                  #18

                  @Crawl.W
                  If your apllication is running on test environment, so the windeployqt should able to identify and copy the dependent dlls.
                  Keep in mind, you also can use --force parameter to copy the dependencies even though they already exist on deploy folder.

                  @Computer Science Student - Brazil
                  Web Developer and Researcher
                  “Sometimes it’s the people no one imagines anything of who do the things that no one can imagine.” - Alan Turing

                  Crawl.WC 1 Reply Last reply
                  0
                  • KillerSmathK KillerSmath

                    @Crawl.W
                    If your apllication is running on test environment, so the windeployqt should able to identify and copy the dependent dlls.
                    Keep in mind, you also can use --force parameter to copy the dependencies even though they already exist on deploy folder.

                    Crawl.WC Offline
                    Crawl.WC Offline
                    Crawl.W
                    wrote on last edited by
                    #19

                    @KillerSmath I have tried --qmldir [your qml root path folder], deployed program is still not work.

                    KillerSmathK 1 Reply Last reply
                    0
                    • Crawl.WC Crawl.W

                      @KillerSmath I have tried --qmldir [your qml root path folder], deployed program is still not work.

                      KillerSmathK Offline
                      KillerSmathK Offline
                      KillerSmath
                      wrote on last edited by
                      #20

                      @Crawl.W
                      Can you show a detailed command example ?

                      @Computer Science Student - Brazil
                      Web Developer and Researcher
                      “Sometimes it’s the people no one imagines anything of who do the things that no one can imagine.” - Alan Turing

                      Crawl.WC 1 Reply Last reply
                      0
                      • KillerSmathK KillerSmath

                        @Crawl.W
                        Can you show a detailed command example ?

                        Crawl.WC Offline
                        Crawl.WC Offline
                        Crawl.W
                        wrote on last edited by Crawl.W
                        #21

                        @KillerSmath windeployqt --qmldir D:\Qt\Qt5.12.0\5.12.0\msvc2017_64\qml ImWorkStation.exe What I can confirm now is my program need to depend on some unoccupied non-dll at runtime, which exits in qmldir.

                        1 Reply Last reply
                        0
                        • KillerSmathK Offline
                          KillerSmathK Offline
                          KillerSmath
                          wrote on last edited by KillerSmath
                          #22

                          @Crawl.W
                          When i said [your qml root path folder], it means your project folder path where are your qml files.

                          Example:
                          D:\MyProject\qml
                          D:\MyProject

                          Note: Use --force parameter if you already have old deploy files.

                          @Computer Science Student - Brazil
                          Web Developer and Researcher
                          “Sometimes it’s the people no one imagines anything of who do the things that no one can imagine.” - Alan Turing

                          Crawl.WC 1 Reply Last reply
                          3
                          • KillerSmathK KillerSmath

                            @Crawl.W
                            When i said [your qml root path folder], it means your project folder path where are your qml files.

                            Example:
                            D:\MyProject\qml
                            D:\MyProject

                            Note: Use --force parameter if you already have old deploy files.

                            Crawl.WC Offline
                            Crawl.WC Offline
                            Crawl.W
                            wrote on last edited by Crawl.W
                            #23

                            @KillerSmath Good, I changed to where my project's qml file is located, it works. You rocks!
                            I might have three more questions:

                            • if my project's qml file locate two folder, how I should pass directory?
                            • just because the qml file needs to do this?
                            • Always confused. What are the non-occupied dependencies at runtime but is must when startup? I am targeting two folders: QtQuick\Controls and QtQuick\Extras
                            KillerSmathK 1 Reply Last reply
                            0
                            • Crawl.WC Crawl.W

                              @KillerSmath Good, I changed to where my project's qml file is located, it works. You rocks!
                              I might have three more questions:

                              • if my project's qml file locate two folder, how I should pass directory?
                              • just because the qml file needs to do this?
                              • Always confused. What are the non-occupied dependencies at runtime but is must when startup? I am targeting two folders: QtQuick\Controls and QtQuick\Extras
                              KillerSmathK Offline
                              KillerSmathK Offline
                              KillerSmath
                              wrote on last edited by
                              #24

                              @Crawl.W
                              1- if my project's qml file locate two folder, how I should pass directory?

                              If your project is organized as below then pass the project path because the qmlimportscanner will find all files inside the root folder.

                              • Project
                                • qml_1
                                  • file_1.qml
                                • qml_2
                                  • file_2.qml

                              2 - just because the qml file needs to do this?
                              https://doc.qt.io/QtQuickCompiler/#overview

                              As .qml files are loaded at run-time, it is necessary to deploy them together with the released application.

                              3 - Always confused. What are the non-occupied dependencies at runtime but is must when startup? I am targeting two folders: QtQuick\Controls and QtQuick\Extras

                              Depend on which qml files are loaded.

                              @Computer Science Student - Brazil
                              Web Developer and Researcher
                              “Sometimes it’s the people no one imagines anything of who do the things that no one can imagine.” - Alan Turing

                              Crawl.WC 1 Reply Last reply
                              1
                              • KillerSmathK KillerSmath

                                @Crawl.W
                                1- if my project's qml file locate two folder, how I should pass directory?

                                If your project is organized as below then pass the project path because the qmlimportscanner will find all files inside the root folder.

                                • Project
                                  • qml_1
                                    • file_1.qml
                                  • qml_2
                                    • file_2.qml

                                2 - just because the qml file needs to do this?
                                https://doc.qt.io/QtQuickCompiler/#overview

                                As .qml files are loaded at run-time, it is necessary to deploy them together with the released application.

                                3 - Always confused. What are the non-occupied dependencies at runtime but is must when startup? I am targeting two folders: QtQuick\Controls and QtQuick\Extras

                                Depend on which qml files are loaded.

                                Crawl.WC Offline
                                Crawl.WC Offline
                                Crawl.W
                                wrote on last edited by Crawl.W
                                #25

                                I think this is the final answer to this question.Thanks to @KillerSmath 's for your patience. Thanks also to kenchan.
                                By the way, last question(with a sly grin),what windeployqt provides is not all necessary, how deploy by the best concise?

                                ODБOïO 1 Reply Last reply
                                0
                                • Crawl.WC Crawl.W

                                  I think this is the final answer to this question.Thanks to @KillerSmath 's for your patience. Thanks also to kenchan.
                                  By the way, last question(with a sly grin),what windeployqt provides is not all necessary, how deploy by the best concise?

                                  ODБOïO Offline
                                  ODБOïO Offline
                                  ODБOï
                                  wrote on last edited by ODБOï
                                  #26

                                  hi
                                  @Crawl.W said in Running a QML .exe file on Windows:

                                  all necessary

                                  1 start your app
                                  2 select all the dlls
                                  3 delete them
                                  Only unused dlls will be deleted

                                  Crawl.WC 1 Reply Last reply
                                  0
                                  • ODБOïO ODБOï

                                    hi
                                    @Crawl.W said in Running a QML .exe file on Windows:

                                    all necessary

                                    1 start your app
                                    2 select all the dlls
                                    3 delete them
                                    Only unused dlls will be deleted

                                    Crawl.WC Offline
                                    Crawl.WC Offline
                                    Crawl.W
                                    wrote on last edited by
                                    #27

                                    @LeLev Yeah,that's my solution, but it will delete qml file when load at JIT. I wanna know a one-step solution.

                                    jsulmJ 1 Reply Last reply
                                    0
                                    • Crawl.WC Crawl.W

                                      @LeLev Yeah,that's my solution, but it will delete qml file when load at JIT. I wanna know a one-step solution.

                                      jsulmJ Offline
                                      jsulmJ Offline
                                      jsulm
                                      Lifetime Qt Champion
                                      wrote on last edited by
                                      #28

                                      @Crawl.W "2 select all the dlls" - only select and delete DLLs, not anything else

                                      https://forum.qt.io/topic/113070/qt-code-of-conduct

                                      Crawl.WC 1 Reply Last reply
                                      0
                                      • Crawl.WC Offline
                                        Crawl.WC Offline
                                        Crawl.W
                                        wrote on last edited by
                                        #29

                                        Note: I we use VirtualKeyboard will need copy QtQuick\VirtualKeyboard folder to program directory. When use windeployqt to deploy program, qmlimportscanner seems not to accomplish the job. (ENV: qt 5.12 + msvc2017)

                                        1 Reply Last reply
                                        0
                                        • jsulmJ jsulm

                                          @Crawl.W "2 select all the dlls" - only select and delete DLLs, not anything else

                                          Crawl.WC Offline
                                          Crawl.WC Offline
                                          Crawl.W
                                          wrote on last edited by Crawl.W
                                          #30

                                          @jsulm This's an uncomfortable operation and that some dll is load at JIT, which need I try all possibilities when deploy.

                                          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