簡體   English   中英

從批處理文件啟動 Qt 應用程序

[英]Launch Qt application from batch file

我在 Qt 和 Qt Creator 之外開發了一個應用程序,當我運行這個應用程序時,它可以工作。 但是當我使用批處理文件執行應用程序時,我收到此錯誤:

應用程序無法啟動,因為它無法找到或加載 Qt 平台插件“Windows

我已經包含了包括 platform/qwindows.dll 在內的所有 dll,但我不明白問題是什么。 知道有什么問題嗎?

之前,我以為我使用了一個沒有正確設置的外部庫,但是出於測試目的刪除了外部庫后,問題仍然存在。

批處理文件的內容是:

@echo off

set VMT=\\serverName\DEV
set BC_VERSION=v1.0

echo Test release of BeamConfigurator %BC_VERSION%

set BC_HOMEDIR=%VISMT%\BeamConfigurator\%BC_VERSION%
set BC_BINDIR=%ABC_HOMEDIR%\bin

echo %BC_BINDIR%

start /WAIT /B /LOW %BC_BINDIR%\BeamConfigurator.exe

看起來您的可執行文件正在嘗試訪問硬編碼(Qt Creator 所做的)庫路徑。 如果您已將運行可執行文件所需的所有dll文件復制到與可執行文件相同的目錄中,請嘗試此操作。

創建一個名為qt.conf的文件並將其放在與可執行文件相同的目錄中。 像這樣添加所需的東西。

[Paths]
Prefix = /some/path
Translations = i18n
Plugins = plugins

更多信息可以在這里找到

問題是我的一位同事在測試某些東西時在主函數中添加了以下行。

QCoreApplication::addLibraryPath("./");

刪除此行后,它開始使用批處理文件。 但是我仍然不明白為什么只有當我們從批處理文件啟動它時才會出現問題。 即使我已將批處理文件與可執行文件放在同一文件夾中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM