使用支持NTFS分区的软件,如果没有去下一个,还不行就用系统盘重装系统时格式化

解决方案 »

  1.   

    晕,我要的是C#格式化NTFS分区的资料....
      

  2.   

    试试用DefineDosDevice(API函数)先将一个卷标卸载下来(防止其他进程访问),然后使用CreateFile(API函数)来打开该盘,然后使用WriteFile(API函数)来直接写盘。不过你要自己建立分区表,那就要找NTFS分区表的相关信息了没做过,不清楚是否可行
      

  3.   

    隐藏的API:
    SHFormatDriveDWORD WINAPI SHFormatDrive(HWND hwnd,UINT drive,UINT fmtID,UINT options);
      

  4.   

    参数含义如下: 
    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  
      

  5.   

    SHFormatDrive只不过是调出Shell里格式化硬盘的对话框而已
      

  6.   

    最简单的办法:新启动一个进程,调用系统format命令。
      

  7.   

    调用shell命令:
    如:http://blog.csdn.net/zhzuo/archive/2004/03/21/22024.aspx