我正在开发一个需要显示 SD 卡文件系统格式的应用程序。由于找不到任何 Qt API,我选择了一个 Windows API GetVolumeInformation 并按如下方式执行:
TCHAR volumeName[MAX_PATH + 1] = { 0 };
TCHAR fileSystemName[MAX_PATH + 1] = { 0 };
DWORD serialNumber = 0;
DWORD maxComponentLen = 0;
DWORD fileSystemFlags = 0;
LPCWSTR path = deviceData->m_strPath;
if (GetVolumeInformation(
path,
volumeName,
ARRAYSIZE(volumeName),
&serialNumber,
&maxComponentLen,
&fileSystemFlags,
fileSystemName,
ARRAYSIZE(fileSystemName)))
{
qDebug()<<fileSystemName[0];
qDebug()<<fileSystemName[1];
qDebug()<<fileSystemName[2];
qDebug()<<fileSystemName[3];
qDebug()<<fileSystemName[4];
}
path 表示 SD 卡路径,当我运行应用程序时,它会抛出以下错误: “无法从‘QString’转换为‘LPCWSTR’”。我哪里弄错了???请帮忙!!
最佳答案
你可以试试:
LPCWSTR path = deviceData->m_strPath.utf16();
关于c++ - 无法在 Qt 中从 ‘QString’ 转换为 ‘LPCWSTR’,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15360984/