est ce qu'une fonction de l'API windows (WinExec, CopyFile,...) exécutée dans un bloc try/except permet de recupérer le message d'erreur E.message si l'opération se passe mal ?
est ce qu'une fonction de l'API windows (WinExec, CopyFile,...) exécutée dans un bloc try/except permet de recupérer le message d'erreur E.message si l'opération se passe mal ?
je sais pas mais il me semble que toutes les fonction de l'API windows retourne une valeur 0 ou 1 ou un boolean pour indiquer si elle se sont bien dértoulé ou pas, et il y a tjr une variable d'erreur (GetLastError) qui permet de retrouver la dernière erreur system
oui GetLastError renvoie le code erreur mais je préférerai avoir un message texte : c'est plus parlant
_________________
[Doublon supprimé par Lil_jam63]
tiré de l'aide SDKEnvoyé par jakouz
vas y voir FormatMessage dans le SDKTo obtain an error string for operating system error codes, use the FormatMessage function. For a complete list of error codes, see the WINNT.H header file in the Win32 SDK.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 function MAKELANGID(dwLang : WORD; dwSubLang : WORD) : DWORD; begin Result := (dwSubLang shl 10) or dwLang; end; //----------------------------------------------------------------------------// procedure TaProcedure; var lpMsgBuf : Pointer; begin WinExec('existe_pas', 0); // erreur FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER or FORMAT_MESSAGE_FROM_SYSTEM, nil, GetLastError(), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), LPTSTR(@lpMsgBuf), 0, nil); MessageBox(0, lpMsgBuf, 'GetLastError', MB_OK or MB_ICONINFORMATION); LocalFree(Cardinal(lpMsgBuf)); end;
super ! j'ai trouvé une fonction dans l'API Delphi qui fait le boulot :
SysErrorMessage
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager