Прозьба асм кодерам, посоветовать...
Где же ошибка, у меня на winXP sp2 не хочет запускаться приложение откомпиленное, но у соседа и других друзей все рулит!
файл ресурсов таков
Код:
.386
.model flat, stdcall
option casemap:none
include windows.inc
include user32.inc
include kernel32.inc
include masm32.inc
include comctl32.inc
include gdi32.inc
include advapi32.inc
includelib user32.lib
includelib kernel32.lib
includelib masm32.lib
includelib gdi32.lib
includelib comctl32.lib
includelib advapi32.lib
includelib shlwapi.lib
includelib shell32.lib
includelib comdlg32.lib
.const
IDD_DIALOG1 equ 1
IDM_EXIT equ 101
IDM_BUTTON1 equ 102
IDC_EXIT equ 201
IDC_BUTTON1 equ 202
.data
szSuccess db "Hello Word",0
info db "info",0
.data?
Hkey dd ?
hInstance dd ?
.code
DlgProc PROC hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
.IF uMsg==WM_INITDIALOG
invoke LoadIcon, hInstance, 1
invoke SendMessage, hWnd, WM_SETICON, 1, eax
.ELSEIF uMsg==WM_CLOSE
invoke SendMessage,hWnd,WM_COMMAND,IDM_EXIT,0
.ELSEIF uMsg == WM_COMMAND
mov eax,wParam
.IF lParam==0
.IF ax==IDM_EXIT
invoke EndDialog, hWnd,NULL
.ELSEIF ax==IDM_BUTTON1
invoke MessageBoxA ,0,ADDR szSuccess,ADDR info, MB_ICONINFORMATION
.ENDIF
.ELSE
mov edx,wParam
shr edx,16
.if dx==BN_CLICKED
.IF ax==IDC_EXIT
invoke SendMessage,hWnd,WM_COMMAND,IDM_EXIT,0
.ELSEIF ax==IDC_BUTTON1
invoke SendMessage,hWnd,WM_COMMAND,IDM_BUTTON1,0
.ENDIF
.ENDIF
.ENDIF
.ENDIF
xor eax, eax
ret
DlgProc ENDP
start:
invoke GetModuleHandle, NULL
mov hInstance,eax
invoke DialogBoxParam, hInstance, IDD_DIALOG1 ,NULL, addr DlgProc, NULL
invoke ExitProcess,eax
end start
файл ресурсов таков
Код:
#define IDD_DIALOG1 1
#define IDM_EXIT 101
#define IDC_EXIT 201
#define IDC_BUTTON1 202
1 ICON "mainicon.ico"
1 24 "manifest.txt"
IDD_DIALOG1 DIALOG 43, 37, 237, 98
EXSTYLE WS_EX_DLGMODALFRAME | WS_EX_APPWINDOW
STYLE DS_MODALFRAME | DS_3DLOOK | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX
CAPTION "Asm Dialog form"
FONT 8, "MS Sans Serif"
{
CONTROL "Exit", IDC_EXIT, "BUTTON", BS_PUSHBUTTON | BS_CENTER | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 184, 4, 50, 14
CONTROL "Start", IDC_BUTTON1, "button", BS_PUSHBUTTON | BS_CENTER | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 184, 20, 50, 14, 0
}