【问题标题】: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

【问题讨论】:

  • “不起作用”是什么意思。怎么会失败。请完整描述问题。请描述文件的精确布局。

标签: c++ qt path


【解决方案1】:

您很可能缺少 .dll 文件。

仅复制 .exe 文件对于 Qt 应用程序是不够的 - 您必须确保必要的动态库与 .exe 位于同一目录中。在您的情况下,从您的编译器目录中复制 QtCore4.dllQt5Core.dll 应该可以,但您以后需要阅读 this page 以了解更多详细信息。

另外,在未来,请更详细地描述您的问题。

【讨论】:

  • 我部署了这个应用程序(它可以工作)。此应用程序创建世界文件。但它不会复制文件。问题是“如何设置应用程序路径?”
  • 过去文件位于磁盘 C 上。目录是 C:\bin\... 我总是在工作前复制这些文件。现在我不想自己复制这些文件。
  • 抱歉,我以为这是部署问题。在这种情况下,您可能需要检查applicationDirPath() 是否返回正确的目录,以及PathNew 是否指向它应该返回的位置。您可能必须将反斜杠转换为正斜杠,或者反过来。这就是我所知道的。
猜你喜欢
  • 2021-10-30
  • 2012-07-25
  • 2023-03-14
  • 1970-01-01
  • 1970-01-01
  • 2011-01-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多