标题:使用API格式化磁盘!请小心使用
取消只看楼主
非虫
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:99
专家分:171
注 册:2008-10-4
结帖率:100%
 问题点数:0 回复次数:0 
使用API格式化磁盘!请小心使用
我2001版的MSDN中没有这个API,
SHFormatDrive    PROTO    hwnd:HWND,drive:UINT,fmtID:UINT,options:UINT
;1、Hwnd:窗口所有者的句柄   
;2、Drive:所有格式化的对象:0指a驱;1指b驱;2指c盘...   
;3、Size:暂时无用     
;4、options:   
SHFMT_OPT_QUICKFORMAT  equ 0   ;快速格式化
SHFMT_OPT_FULL         equ 1   ;全面格式化
SHFMT_OPT_SYSONLY      equ 2   ;格式化时传送系统 sys a(b,c)

源码如下:

;程序只能在Windows XP SP2以上系统使用!!
.386
.model flat, stdcall  ;32 bit memory model
option casemap :none  ;case sensitive

include FormatUseAPI.inc
include    macros.asm
include    rsrc.inc


DlgProc            PROTO    :HWND,:UINT,:WPARAM,:LPARAM
SHFormatDrive    PROTO    hwnd:HWND,drive:UINT,fmtID:UINT,options:UINT
;1、Hwnd:窗口所有者的句柄   
;2、Drive:所有格式化的对象:0指a驱;1指b驱;2指c盘...   
;3、Size:暂时无用     
;4、options:   
SHFMT_OPT_QUICKFORMAT  equ 0   ;快速格式化
SHFMT_OPT_FULL         equ 1   ;全面格式化
SHFMT_OPT_SYSONLY      equ 2   ;格式化时传送系统 sys a(b,c)
        
.data


.data?
hInstance            dd ?


.code

;*******************    对话框回调函数   ***********************************************************
DlgProc proc hWnd:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM

    mov        eax,uMsg
    .if eax==WM_INITDIALOG
        
    .elseif eax==WM_COMMAND
        mov    eax,wParam
        movzx    eax,ax
        .if        eax == IDC_BTN1  ;小心使用!!
            invoke    SHFormatDrive,hWnd,2,0,SHFMT_OPT_QUICKFORMAT    ;快速格式化C盘
        .endif
        
    .elseif eax==WM_CLOSE
        invoke EndDialog,hWnd,0
        
    .else
        mov        eax,FALSE
        ret
    .endif
    mov        eax,TRUE
    ret

DlgProc endp

;*******************   程序从这里开始执行  ***********************************************************
start:

    invoke     GetModuleHandle,NULL
    mov        hInstance,eax

    invoke     InitCommonControls
    invoke     DialogBoxParam,hInstance,IDD_DIALOG1,NULL,addr DlgProc,NULL
    invoke     ExitProcess,0


end start


请大家小心使用!!否则因格式化磁盘造成的损失我不负任何责任!!

楼主转帖也麻烦!!我自己发了!

FormatUseAPI.rar (3.52 KB)
收到的鲜花
  • zklhp2009-08-05 21:58 送鲜花  50朵   附言:我很赞同
搜索更多相关主题的帖子: API 磁盘 格式化 
2009-08-05 16:18



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-281664-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.153979 second(s), 10 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved