begin process at 2008 08 20 19:11:46
1 229 029 membres
388 nouveaux aujourd'hui
14 260 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Pb de compilation ressource [ Archives / Aide a la programmation Windows ] (AlexMAN)

Pb de compilation ressource le 14/07/2004 23:29:02

AlexMAN
Membre Club
BruNews, ca fait une heure ke je texte ton bat, ca me compile bien mon exe, il est fonctionnel mais ne m'affiche pas ma dialog box ! Voila le code de la ressource et du ficheir asm :

ASM :

.386
.model flat, stdcall
option casemap:none

include \masm32\include\windows.inc
include \MASM32\INCLUDE\user32.inc
include \MASM32\INCLUDE\kernel32.inc
include \MASM32\INCLUDE\masm32.inc ;pour dwtoa

includelib \MASM32\LIB\kernel32.lib
includelib \MASM32\LIB\masm32.lib
includelib \MASM32\LIB\user32.lib

DlgProc PROTO :DWORD, :DWORD, :DWORD, :DWORD

.data
DlgName db "calc", 0

.data?
hInstance HINSTANCE ?

.const
IDD_CALC equ 101
IDBT_9 equ 1003
IDBT_8 equ 1002
IDBT_7 equ 1001
IDBT_6 equ 1006
IDBT_5 equ 1005
IDBT_4 equ 1004
IDBT_3 equ 1009
IDBT_2 equ 1008
IDBT_1 equ 1007
IDBT_0 equ 1010
IDBT_MULT equ 1011
IDBT_DIV equ 1014
IDBT_MOINS equ 1012
IDBT_PLUS equ 1013
IDST_RESULT equ 1015


.code
start:
invoke GetModuleHandle, NULL
mov hInstance,eax
invoke MessageBox, NULL, NULL, addr DlgName, MB_OK
invoke DialogBoxParam, hInstance, ADDR DlgName,NULL, addr DlgProc, NULL
invoke ExitProcess,eax

DlgProc proc hwnd:HWND, message:UINT, wParam:WPARAM, lParam:LPARAM
.IF message == WM_INITDIALOG
invoke MessageBox, NULL, addr DlgName, NULL, MB_OK
ret
.ENDIF
DlgProc endp

end start


RESSOURCE :

#include "\masm32\include\resource.h"

#define IDD_CALC 101
#define IDBT_7 1001
#define IDBT_8 1002
#define IDBT_9 1003
#define IDBT_4 1004
#define IDBT_5 1005
#define IDBT_6 1006
#define IDBT_1 1007
#define IDBT_2 1008
#define IDBT_3 1009
#define IDBT_0 1010
#define IDBT_MULT 1011
#define IDBT_MOINS 1012
#define IDBT_PLUS 1013
#define IDBT_DIV 1014
#define IDST_RESULT 1015


IDD_CALC DIALOGEX 0, 0, 171, 149
STYLE DS_SYSMODAL | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND |
DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION
EXSTYLE WS_EX_APPWINDOW
CAPTION "Calculatrice"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
PUSHBUTTON "7",IDBT_7,35,41,26,23
PUSHBUTTON "8",IDBT_8,61,41,26,23
PUSHBUTTON "9",IDBT_9,87,41,26,23
PUSHBUTTON "4",IDBT_4,35,64,26,23
PUSHBUTTON "5",IDBT_5,61,64,26,23
PUSHBUTTON "6",IDBT_6,87,64,26,23
PUSHBUTTON "1",IDBT_1,35,87,26,23
PUSHBUTTON "2",IDBT_2,61,87,26,23
PUSHBUTTON "3",IDBT_3,87,87,26,23
PUSHBUTTON "0",IDBT_0,61,111,26,23
PUSHBUTTON "*",IDBT_MULT,128,87,26,23,0,WS_EX_CLIENTEDGE
PUSHBUTTON "-",IDBT_MOINS,128,64,26,23,0,WS_EX_CLIENTEDGE
PUSHBUTTON "+",IDBT_PLUS,128,41,26,23,0,WS_EX_CLIENTEDGE
PUSHBUTTON "/",IDBT_DIV,128,110,26,23,0,WS_EX_CLIENTEDGE
LTEXT "",IDST_RESULT,30,15,122,11,WS_BORDER
END

Voila, merci d'avance !

++

Alhexman

Re : Pb de compilation ressource le 15/07/2004 02:31:38

aardman
Membre Club
Réponse acceptée !
Salut,
Le nom de la dialog box (DlgName) est "calc" alors que dans le fichier resource c'est IDD_CALC. Il faudrait changer la ligne:
calc DIALOGEX 0, 0, 171, 149

Ensuite, ta DlgProc doit retourner 0 sauf pour WM_INITDIALOG (dans ce cas, il faut retourner 1):

DlgProc proc hwnd:HWND, message:UINT, wParam:WPARAM, lParam:LPARAM
.IF message == WM_INITDIALOG
invoke MessageBox, NULL, addr DlgName, NULL, MB_OK
mov eax, 1
jmp finDlgProc
.ENDIF
mov eax, 0
finDlgProc:
ret
DlgProc endp

Re : Pb de compilation ressource le 15/07/2004 02:41:12

AlexMAN
Membre Club
Merci aardman, gt tt de mm arrivé a trouver (au bout de 2heures...)

++

Bonne nuit (allez au dodo !)

ALhexman

Re : Pb de compilation ressource le 15/07/2004 21:44:20

vecchio56
(Admin CS)
Ces invoke, .IF et autre .ENDIF dénaturent totalement l'asm, ont dirait presque du C...

Re : Pb de compilation ressource le 11/08/2004 12:40:53

TRAX44
Avec le même titre, comment compiler avec des ressoruces sous nasm ?

P.S. Sa n'a pas de rapport avec le sujet mais je suis totalement en accord avec vecchio56 ; et c bien pour cela que je travail sous NASM

Merci
TRAX


Classé sous : include, define, equ, pushbutton, idbt

Participer à cet échange

Livres en rapport

Pub



Appels d'offres

Recherche developpeur ...
Budget : 700€
extraction dinformatio...
Budget : 300€
campagne Adwords
Budget : 5 000€

CalendriCode

Août 2008
LMMJVSD
    123
45678910
11121314151617
18192021222324
25262728293031

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Boutique

Boutique de goodies CodeS-SourceS