2013-08-26 101 views
-1

我寫了控制檯Qt應用程序。我想從目錄複製文件,我的exe文件在哪裏。如何設置應用程序路徑?

m_Path = QCoreApplication::applicationDirPath() + "\\g.aux.xml"; 
QFile::copy(m_Path,PathNew); 

此代碼出色的作品,當我調試我的應用程序。但是當我將我的.exe文件複製到另一個目錄時,它不起作用。

請告訴我,如何解決它。

UPD: 我想我找到了答案 我需要使用的QDir :: currentPath()

Get current working directory in a Qt application

+1

「不起作用」是什麼意思。它是如何失敗的。請完整描述問題。請描述文件的精確佈局。 –

回答

0

你最有可能丟失的.dll文件。

僅複製.exe文件對於Qt應用程序來說是不夠的 - 您必須確保必要的動態庫與.exe位於同一目錄中。在你的情況下,從你的編譯器目錄中複製QtCore4.dllQt5Core.dll應該這樣做,但你會想在將來閱讀this page瞭解更多細節。

此外,在未來,請詳細描述您的問題。

+0

我部署這個應用程序(它的工作原理)。此應用程序創建世界文件。但它不會複製文件。 問題是「如何設置應用程序路徑?」 – novicegis

+0

過去的文件位於磁盤C上,目錄是C:\ bin \ ...而且我總是在工作之前複製這些文件。現在我不想自己複製這些文件。 – novicegis

+0

對不起,我認爲這是一個部署問題。在這種情況下,您可能需要檢查'applicationDirPath()'是否返回了正確的目錄,並且'PathNew'是否指向了它應該的位置。您可能必須將反斜槓轉換爲正斜槓,或者反過來。這是我所知道的一切。 –

相關問題