begin process at 2010 03 18 18:22:33
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Assembleur

 > 

Archives

 > 

Aide a la programmation Windows

 > 

Pb de compilation ressource


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Pb de compilation ressource

mercredi 14 juillet 2004 à 23:29:02 | Pb de compilation ressource

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
jeudi 15 juillet 2004 à 02:31:38 | Re : Pb de compilation ressource

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
jeudi 15 juillet 2004 à 02:41:12 | Re : Pb de compilation ressource

AlexMAN

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

++

Bonne nuit (allez au dodo !)

ALhexman
jeudi 15 juillet 2004 à 21:44:20 | Re : Pb de compilation ressource

vecchio56

Administrateur CodeS-SourceS
Ces invoke, .IF et autre .ENDIF dénaturent totalement l'asm, ont dirait presque du C...
mercredi 11 août 2004 à 12:40:53 | Re : Pb de compilation ressource

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


Cette discussion est classée dans : include, define, equ, pushbutton, idbt


Répondre à ce message

Sujets en rapport avec ce message

probleme avec TASM [ par nernit ] lorsque je compile mo code : .NOLIST #define end.end #define END.end #define equ.equ #define EQU.equ #include "ti83asm.inc" #include "tokens.inc" .LIS Flags dans le registre INTCON [ par tahiti_bob ] Bonjour,J'ai  trouvé sur cette page une excellente routine de communication RS232 entre un PIC et un PC.http://www.electronic-engineering.ch [API] Fermer une fenêtre de navigateur ouverte avec une URL. [ par kinkey_wizard ] Bonjour tout le monde, Je vous explique mon problème : je voudais ouvrir une page web (par exemple "http://www.google.fr") dans le navigateur par déf 2 petits problemes [ par anonyme_man_in_this_world ] salut !! ça sera simpa si on m'aide a corriger ce petit code compile sous Visual C++ ******************************************************** %define [ par anonyme_man_in_this_world ] salut !! le compilateur de Visual C++ genere une erreur lorsque j'essaie d'utiliser la directive %define . ça sera simpa si on m'aide à resoud Prob de programme MAX232 [ par xmaz57000 ] Bonjour,Je fais appel à votre aide car j'ai un problème avec du code en assembleur et à vrai dire, je n'y connais quasiment rien :/Le problème est qu' Messagebox (niveau débutant) [ par Ulala2 ] Bonjour,je suis en train de créer une dll que je vais invoquer en vb6.Tout marche très bien, sauf pour la fonction messagebox dont n'arrive pas à récu Plantage incomprehensible [ par Luong ] Bonjour tout le monde,Voila un petit bout de code qui genere un beau plantage sur mon ordi (memory could not be written) sans que je comprenne vraimen afficher plusieur mot [ par hackeur13 ] bonjour a tous et a toute,je suis entrin d'essayer de programmer en asm avec MASM etj'aimerais savoir comment faire affichier a chaque fois que je cli ça marche pas, aide ... [ par iscalibar ] Bonjour, j'ai un petit probleme, j'ai ecris un program pour le compilateur masm32 qui ne fai que afficher une fenetre, mai malheureusement ça marche p


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales