在MessageBox – 从DLL用户图标

OutFile "MessageBox_Ico_test.exe"

!define MSGBOXPARAMS '(i, i, i, t, t, i, t, i, i, i) i'
!define ID_ICO 36  ;  在DLL中的ID的图标    是1以上的整数

Function .onInit
InitPluginsDir
File /oname=$PLUGINSDIR\Fileicons32.dll "Fileicons32.dll"
FunctionEnd

Section
System::Call 'Kernel32::LoadLibrary(t "$PLUGINSDIR\Fileicons32.dll") i .r1'
IntCmp $1 0 Err Err 0
System::Call '*${MSGBOXPARAMS}(40, $HWNDPARENT, r1, "消息文本", "  称号", 0x80|0x0, i ${ID_ICO}, 0, 0, 0) .r3'
System::Call 'User32::MessageBoxIndirect(i r3) v r4'
System::Call 'Kernel32::FreeLibrary(i r1) v r4'
System::Free $3
Err:
SectionEnd

; 对于按钮的代码

; 0x0 - 行 
; 0x1 - 行, 取消  
; 0x2 - 中止,重试,忽略   
; 0x3 - 是,否,取消  
; 0x4 - 是,否  
; 0x5 - 重复,取消  
; 0x6 - 取消,重试,继续   
; 0x4000 - 行,  救命
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容