Createfile打开磁盘的格式要求
Posted piaoxuewaiwai
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Createfile打开磁盘的格式要求相关的知识,希望对你有一定的参考价值。
转载:https://blog.csdn.net/dongpanshan/article/details/7860790
createfile可以打开文件、通道、邮槽、通信资源、磁盘驱动器(仅适用于 windowsNT )、控制台、文件夹(仅用于打开) //来自https://www.cnblogs.com/findumars/p/5636108.html
我就说咯,明明我使用FILE_READ_ATTRIBUTES模式已经成功打开了磁盘的,今天居然打不开,原来是格式错误了。
HANDLE CreateFile( LPCTSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile );
Parameters
- lpFileName
- [in] Pointer to a null-terminated string that specifies the name of the object, such as file, COM port, disk device, or console, to create or open.
If *lpFileName is a path, there is a default string size limit of MAX_PATH characters. This limit is related to how the CreateFile function parses paths.
When lpFileName points to a COM port to open, you must include a colon after the name. For example, specify COM1: to open that port. When using IrCOMM, specify COM3:.
在msdn查找CreateFile打开磁盘时对lpFileName的说明不太清楚,特此说明一下,CreateFile打开磁盘时,lpFileName的格式必须为"\\\\\\\\.\\\\C:"(打开C盘),"\\\\\\\\.\\\\D:"(打开D盘)
程序如下:访问C盘
hFile = CreateFile("\\\\\\\\.\\\\C:", GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL);
以上是关于Createfile打开磁盘的格式要求的主要内容,如果未能解决你的问题,请参考以下文章
CreateFile:直接对原始磁盘进行写入操作“访问被拒绝” - Vista,Win7