Bonjour, un autre sujet a été ouvert sur le même thème ici (un peut plus bas dans ce forum) mais comme il est "Résolu" 'j'ai préféré en ouvrir un second.
J'ai toujours le même problème, mon application plante au moment où j'essaie de définir les répertoires de sauvegarde et de récupération des dossiers que j'aimerais copier.
J'ai corrigé mon code et maintenant j'utilise des TCHAR et les fonctions qui vont avec.
Le programme plante éxactement à la première ligne de la fonction definirAdresseOrigine. J'ai recopié celle de Médinoc. J'ai bien fait l'allocation dynamique où il me conseille de la faire et je libère la mémoire.
J'ai seulement changé sctprintf par stprintf je ne trouvais pas la première fonction et j'ai pensé que c'était une faute de frappe...Mais avec une addition de strlen ça plante quand même.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 LPTSTR definirAdresseOrigine(LPCTSTR dossier, LPCTSTR user) { LPTSTR adresseFrom = NULL; /* Calculer la longueur de chaîne à allouer, caractère nul supplémentaire compris. */ size_t cchLength = _stprintf(_T("C:\\DOCUME~1\\%s\\%s\\*%c"), user, dossier, _T('\0'));
Comme j'utilise Codeblocks j'ai débugger mon code. Et a cette ligne j'option une erreur et voici le log
Ensuite le programme s'arrête.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 #0 77C0EFF9 wscanf() (C:\WINDOWS\system32\msvcrt.dll:??) #1 77C0F296 wscanf() (C:\WINDOWS\system32\msvcrt.dll:??) #2 0022FC10 ??() (??:??) #3 00405266 ??() (??:??) #4 00000000 ??() (??:??)
Une autre info, comme je l'avais dit dans mon premier sujet, je remplis la structure SHFILEOPSTRUCTURE :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 typedef struct _SHFILEOPSTRUCT { HWND hwnd; UINT wFunc; LPCTSTR pFrom; LPCTSTR pTo; FILEOP_FLAGS fFlags; BOOL fAnyOperationsAborted; LPVOID hNameMappings; LPCTSTR lpszProgressTitle; } SHFILEOPSTRUCT, *LPSHFILEOPSTRUCT;
Voici la doc de la Structure
Si qq'un pouvait m'aider à trouver ce qui ne va pas ça serait sympa, j'ai l'impression de tourner en rond. Merci !
Partager