C#中如何格式化一个硬盘的分区? 使用支持NTFS分区的软件,如果没有去下一个,还不行就用系统盘重装系统时格式化 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 晕,我要的是C#格式化NTFS分区的资料.... 试试用DefineDosDevice(API函数)先将一个卷标卸载下来(防止其他进程访问),然后使用CreateFile(API函数)来打开该盘,然后使用WriteFile(API函数)来直接写盘。不过你要自己建立分区表,那就要找NTFS分区表的相关信息了没做过,不清楚是否可行 隐藏的API:SHFormatDriveDWORD WINAPI SHFormatDrive(HWND hwnd,UINT drive,UINT fmtID,UINT options); 参数含义如下: hwnd:拥有对话框的窗口句柄,注意hwnd为NULL时,并不会导致这个对话框生成一个上层的应用程序,也就是说,这个参数总是非NULL,这个对话框只能作为一个窗口的子窗口,而不能作为一个单独的应用程序; drive:要格式化的驱动器号,以A: == 0为基准,依此类推; fmtID:必须设定为 SHFMT_ID_DEFAULT,即0xFFFF; options:可以有两个选择项:SHFMT_OPT_FULL 0x0001和SHFMT_OPT_SYSONLY 0x0002,如果这一项设置为零,系统就要使用快速格式化作为默认设置。 该函数的返回值要么为一个下列以SHFMT_开头的值,要么是一个成功格式化的磁盘标识。 //上次格式化出错,磁盘可能被格式化 #define SHFMT_ERROR 0xFFFFFFFFL //格式化被取消 #define SHFMT_CANCEL 0xFFFFFFFEL // 不能进行磁盘格式化 #define SHFMT_NOFORMAT 0xFFFFFFFDL SHFormatDrive只不过是调出Shell里格式化硬盘的对话框而已 最简单的办法:新启动一个进程,调用系统format命令。 调用shell命令:如:http://blog.csdn.net/zhzuo/archive/2004/03/21/22024.aspx 关于窗体间传值 C#转义字符 局域网中访问另一台电脑 高分求一算法实现 C#中引用类型的问题 c# 连接 mysql数据 更新问题 怎样才能将.net环境完全包在安装包中? String.Empty的小问题 请问从windows窗体中拖此人意思他crystalreportviewer组件时出错 希望各位搞C#的朋友留个QQ号,互相帮助. 2个窗体数据传递? 如何调整SQL Server连接时间??
SHFormatDriveDWORD WINAPI SHFormatDrive(HWND hwnd,UINT drive,UINT fmtID,UINT options);
hwnd:拥有对话框的窗口句柄,注意hwnd为NULL时,并不会导致这个对话框生成一个上层的应用程序,也就是说,这个参数总是非NULL,这个对话框只能作为一个窗口的子窗口,而不能作为一个单独的应用程序;
drive:要格式化的驱动器号,以A: == 0为基准,依此类推;
fmtID:必须设定为 SHFMT_ID_DEFAULT,即0xFFFF;
options:可以有两个选择项:SHFMT_OPT_FULL 0x0001和SHFMT_OPT_SYSONLY 0x0002,如果这一项设置为零,系统就要使用快速格式化作为默认设置。
该函数的返回值要么为一个下列以SHFMT_开头的值,要么是一个成功格式化的磁盘标识。
//上次格式化出错,磁盘可能被格式化
#define SHFMT_ERROR 0xFFFFFFFFL
//格式化被取消
#define SHFMT_CANCEL 0xFFFFFFFEL
// 不能进行磁盘格式化
#define SHFMT_NOFORMAT 0xFFFFFFFDL
如:http://blog.csdn.net/zhzuo/archive/2004/03/21/22024.aspx