vs2008中用QT调用createfile打开分区失败的原因

iotioa 2010-05-31 10:12:43
vs2008中用QT调用createfile打开分区失败的原因
我在vs2008中编译一个测试代码,打开一个分区,没有问题!

测试通过后,我在vs2008里建立了一个QT工程,然后把测试代码嵌入里面,希望可以在图形界面中选择需要打开的分区,编译通过,但死活都是打开分区失败!

打开分区的代码如下:
_TCHAR volumePath[7];
_sntprintf(volumePath, 6, _T("\\\\.\\%c:"), volume);
volumePath[6] = _T('\0');
hVolume = CreateFile((LPCTSTR )volumePath, GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE,
NULL, OPEN_EXISTING, FILE_ATTRIBUTE_READONLY, NULL);


查找返回的错误代码显示的错误是:
刚开始的错误码是2:意思是找不到打开的文件
换了好几个分区来打开时变成了这个错误:@err,hr 0x0000007b 文件名、目录名或卷标语法不正确。 unsigned long
volumePath的值显示是:\\.\\C:
_TCHAR的大小是1
不知道qt对这种反斜杠的文件名:\\.\\C: 有没有敏感,以致打不开分区。

望知道错误的大侠指点

qt4.6.2 vs2008版
...全文
209 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

6,873

社区成员

发帖
与我相关
我的任务
社区描述
Windows 2016/2012/2008/2003/2000/NT
社区管理员
  • Windows Server社区
  • qishine
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧