下贴是来自万千新闻组,只可惜这个国内最好的新闻组目前处于关闭状态,不知何时才能重新开通:(
发件人: 昨天摔了一跤 <[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 请订阅"本网公告"组,有重要通知。

|