如何设置应用路径?
Posted
技术标签:
【中文标题】如何设置应用路径?【英文标题】:How to set application path? 【发布时间】:2013-08-26 13:22:27 【问题描述】:我编写了控制台 Qt 应用程序。我想从目录中复制文件,我的 exe 文件在哪里。
m_Path = QCoreApplication::applicationDirPath() + "\\g.aux.xml";
QFile::copy(m_Path,PathNew);
当我调试我的应用程序时,这段代码非常有效。但是当我将 .exe 文件复制到另一个目录时,它不起作用。
请告诉我,如何解决它。
更新: 我想我找到了答案 我需要使用 QDir::currentPath()
Get current working directory in a Qt application
【问题讨论】:
“不起作用”是什么意思。怎么会失败。请完整描述问题。请描述文件的精确布局。 【参考方案1】:您很可能缺少 .dll 文件。
仅复制 .exe 文件对于 Qt 应用程序是不够的 - 您必须确保必要的动态库与 .exe 位于同一目录中。在您的情况下,从您的编译器目录中复制 QtCore4.dll
或 Qt5Core.dll
应该可以,但您以后需要阅读 this page 以了解更多详细信息。
另外,在未来,请更详细地描述您的问题。
【讨论】:
我部署了这个应用程序(它可以工作)。此应用程序创建世界文件。但它不会复制文件。问题是“如何设置应用程序路径?” 过去文件位于磁盘 C 上。目录是 C:\bin\... 我总是在工作前复制这些文件。现在我不想自己复制这些文件。 抱歉,我以为这是部署问题。在这种情况下,您可能需要检查applicationDirPath()
是否返回正确的目录,以及PathNew
是否指向它应该返回的位置。您可能必须将反斜杠转换为正斜杠,或者反过来。这就是我所知道的。以上是关于如何设置应用路径?的主要内容,如果未能解决你的问题,请参考以下文章
如何设置 heroku postgresql 应用程序的路径?
如何在 Jhipster (spring boot + angular) 应用程序上设置上下文路径
如何设置由 Visual Studio 2010 应用程序创建的文本文件的路径?
Angular2如何独立于html基本url设置应用程序根路径