format PE GUI 4.0
include 'win32axp.inc'
start:
push ICC_DATE_CLASSES ; dwICC
push sizeof.INITCOMMONCONTROLSEX ; dwSize
invoke InitCommonControlsEx,esp
add esp, 8
invoke GetModuleHandle,0
invoke DialogBoxParam,eax,bugProofDialog.id,HWND_DESKTOP,DialogProc,0
invoke ExitProcess,0
proc DialogProc hWndDlg, msg, wParam, lParam
cmp [msg],WM_CLOSE
je .WM_CLOSE
xor eax, eax
ret
.WM_CLOSE:
invoke EndDialog, [hWndDlg], 0
mov eax,1
ret
endp
align 4
data resource
macro UID id*
{
if ~defined UID | ~UID
UID = 0
end if
UID = UID+1
id = UID
}
directory RT_DIALOG,dialogs
resource dialogs,\
bugProofDialog.id,LANG_ENGLISH+SUBLANG_DEFAULT,calcDialog
UID bugProofDialog.id
dialog calcDialog,'Bug proof',0,0,580,100,WS_CAPTION+WS_POPUP+WS_SYSMENU+DS_MODALFRAME+DS_CENTER
; ***OLD
MCS_NOTODAY = 8
dialogitem MONTHCAL_CLASS,'',-1,0,0,180,100,WS_VISIBLE+WS_BORDER+MCS_NOTODAY
; ***NEW
MCS_NOTODAYCIRCLE = 8
MCS_NOTODAY = 16
dialogitem MONTHCAL_CLASS,'',-1,200,0,180,100,WS_VISIBLE+WS_BORDER+MCS_NOTODAY
dialogitem MONTHCAL_CLASS,'',-1,400,0,180,100,WS_VISIBLE+WS_BORDER+MCS_NOTODAY+MCS_NOTODAYCIRCLE
enddialog
end data
.end start
In the left most control I'm using all the constants related to NOTODAY provided by fasm standard package. Look how using MCS_NOTODAY it's not enough to hide everything related to today.