2017-07-15 24 views
0

Mac OS X El Capitan 10.11.6QStorageInfo说磁盘已准备好使用,但它不是

我有一个外部驱动器。在我的应用程序中,我监视它是否连接到PC。 我使用QStorageInfo来为它提供驱动器的根路径。

在该驱动器上,我有一个文件,其路径已知。我需要在驱动器连接后检查文件是否存在。

的问题是,一旦我连接驱动器,QStorageInfo开始两个isValidisReady,但QFile::exists回报false回到true而该文件是确实存在的驱动器上。它不断返回false几秒钟。在那之后它开始返回true

这是Qt/MAC中的错误还是我错过了一些东西?

Qt 5.9.1。

P.S.它在Windows 10上正常工作。

加法#1。代码示例。

QStorageInfo s(storageRootPath); 
if (s.isValid() && s.isReady()) 
{ 
    auto exists = QFile::exists(pathToFile); // getting false here for a few seconds 
} 
+0

分享您的代码。 – Azeem

回答

0

在Apple CoreFoundation API中看起来像bug