Qt5,文件夹的符号链接

时间:2015-05-16 01:19:42

标签: c++ windows qt qprocess qfile

this question的问题,其中(可能)有一个过时的答案,因为我无法在Qt5中使用它。

我希望创建一个指向文件夹的符号链接,以获得与QDir类似的结果。鉴于QProcess没有等效函数,mmap(或外部库)似乎是出路,如果我可以使用鼻烟。如何在Qt5中管理它?

提前非常感谢。

2 个答案:

答案 0 :(得分:0)

Windows上有快捷方式和硬链接。我认为mklink是指硬链接。

适用于快捷方式:

#include <QCoreApplication>

#include <QFile>
#include <QDebug>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    QFile dir("D:\\source-dir");
    bool ok = dir.link("D:\\target-dir.lnk");

    if (ok)
    {
        qDebug() << "yeah!";
        return 0;
    }
    else {
        qDebug() << "Did not work :(";
        return 1;
    }
}

在这种情况下,您会在资源管理器中找到一个快捷方式,但您无法通过键入D:\source-dir\Bitmap.bmp

来访问文件D:\target-dir\Bitmap.bmp

答案 1 :(得分:0)

我发现在Qt中无法完成,所以我最终使用的是Win32 API。具体来说就是CreateSymbolicLink() function