MASM :: SE COPIER AVEC GESTION DES ERREURS

Signaler
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
-
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/15336-masm-se-copier-avec-gestion-des-erreurs

Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
28
LocalAlloc et GlobalAlloc ne sont presentes que pour assurer la compatibilite 16 bits.
Sur win32, HeapAlloc ou VirtualAlloc.
Messages postés
374
Date d'inscription
vendredi 20 octobre 2000
Statut
Modérateur
Dernière intervention
15 janvier 2021

Bon BlackWizard pour les filenames 2 soluces sous windows:

1 : db Max_Path dup(0) <== max_path=Taille max d'un chemin sous win qui peut etre bien supèrieur a 256chars....

2 : Tu fais un LocalAlloc ou GlobalAlloc (api) sur ton pointeur puis un LocalFree ou GlobalFree des que tu n'utilise plu ton pointer ...

L' Alloc est et de loin la meilleur solution....

Bon Coding...

ManChesTer.
Messages postés
1258
Date d'inscription
mercredi 21 mars 2001
Statut
Modérateur
Dernière intervention
21 juin 2009
2
thx...
on m'a deja dit plus haut dans les commentaire...
G pas corrigé la source encore..
Messages postés
53
Date d'inscription
vendredi 17 janvier 2003
Statut
Membre
Dernière intervention
12 novembre 2005

Y'a un truc qui devrai t'allerter grave mon gars
GetModuleFileNameA prend pour 2nd paramètre un buffer pour y stocker le nom de ton EXE. Toi tu lui fourni un DWORD (qui est aussi un buffer ..... mais de 4 octets)
Ce que je te conseille :: à la place de
filename dd 0
dirname dd 0
tu mets
filename db 260 dup (0)
dirname db 260 dup (0)

comme ça : adieu ton problème ...
Afficher les 15 commentaires