格式化磁盘

类别:VC语言 点击:0 评论:0 推荐:

下贴是来自万千新闻组,只可惜这个国内最好的新闻组目前处于关闭状态,不知何时才能重新开通:(

发件人: 昨天摔了一跤 <[email protected]>
主题: Re: 这个问题大家都不会吗?怎么没有人回答.
日期: 2001年4月28日 6:02

算你运气好,这次你是死不了啦,下面有一个未公开的函数:

#pragma comment(lib, "shell32.lib")

// dwOptions 参数
#define SHFMT_OPT_FULL     0x0001     // 完全格式化,不加它表示快速格式化
#define SHFMT_OPT_SYSONLY  0x0002     // 只传递系统,相当于format /s
// dwFormatID 参数
#define SHFMT_ID_DEFAULT   0xFFFF     // 不知道什么意思

// 返回值
#define SHFMT_NOFORMAT     0xFFFFFFFD // 不能格式化驱动器
#define SHFMT_CANCEL       0xFFFFFFFE // 用户取消了操作
#define SHFMT_ERROR        0xFFFFFFFF // 其它错误

DWORD WINAPI SHFormatDrive(HWND hParentWnd,
                           DWORD dwDriveNo,
                           DWORD dwFormatID,
                           DWORD dwOptions);

hParentWnd为父窗口句柄
dwDriveNo是要格式化的驱动器号,0为A:,1为B:,依次类推
dwFormatID我也不知道是干什么的,必须设为SHFMT_ID_DEFAULT
dwOptions可以取SHFMT_OPT_系列的值,在NT/2K下不能加SHFMT_OPT_SYSONLY

该函数的返回值见上面的说明。

该函数在9x/Nt/2K下测试过,可以正常运行,但是在Nt/2K下要注意权限。

--
昨天摔了一跤
希望今天不会在同一个地方再摔一跤。

"wangpeng" <[email protected]> wrote in message
news:[email protected]...
> 看来这次是死定了,客户要求
> 在98,me,win2000下都可以用.
> [email protected]

 


--
===================================
4-21 请订阅"本网公告"组,有重要通知。
 

本文地址:http://com.8s8s.com/it/it3237.htm