Accueil > Forum > > > > Avis des PROS!
Avis des PROS!
samedi 10 mai 2003 à 01:41:06 |
Avis des PROS!

UnExPeCtEdSpy
|
Bonjour, je suis plus familier du vb que du c++ alors j'vous d'mande de l'aide : J'utilise une Dll en c+ avec un prog en Vb qui manipule des fichiers. Quand j'execute une fonction de ma dll qui agit sur un fichier, par la suite il m'est impossible de suprimer le fichier en question (même aprés arret de vb6 il faut que je ferme vb6 pour pouvoir a nouveau supprimer le fichie, surement parce que la dll est encore en memoire) Voici briévement les fonctions que je suspecte dans la dll 1) j'effectue un : [...] hFile = CreateFile( filename, // filename GENERIC_READ, // access level FILE_SHARE_READ, // share mode NULL, // security attirubtes not needed OPEN_EXISTING, // don't create a new file FILE_FLAG_BACKUP_SEMANTICS, NULL ); // no template file [...] 2) BackupRead( hFile, // file handle Buf, // buffer to write the data sizeof( Buf ), // size of the buffer &read, // return value for bytes read FALSE, // used to clear the data TRUE, // back up the security descriptor &context )) [...] 3) et tout a la fin if( !BackupRead( hFile, // file handle NULL, // buffer to write the data 0, // size of the buffer &read, // return value for bytes read TRUE, // used to clear the data FALSE, // back up the security descriptor &context )) CloseHandle( hFile ); Est ce que mon probleme serait inhérent a cette parite? ou bien parce que dans une autre partie de ma dll je change les privilege du procees?? Help please, j'ai vraiment besoin de pouvoir suprimer les fichiers meme en leur ayant appliqué le traitement par la Dll UnExPeCTeDSpy ,.~*`'^~.(^.  .^),.~^'`*~.
|
|
samedi 10 mai 2003 à 01:44:32 |
Re : Avis des PROS!

UnExPeCtEdSpy
|
Apparement ça marche si je fait un CloseHandle( hFile ); inconditionel a la fin du fichier. Est ce que je peus suprimer carrement le test 3) ou est ce qu'il est mal fait... a vrai dire je sais pas a koi il sert . merci ,.~*`'^~.(^.  .^),.~^'`*~. ------------------------------- Réponse au message : ------------------------------- > Bonjour, > > je suis plus familier du vb que du c++ alors j'vous d'mande de l'aide : > > J'utilise une Dll en c+ avec un prog en Vb qui manipule des fichiers. > > Quand j'execute une fonction de ma dll qui agit sur un fichier, par la suite il m'est impossible de suprimer le fichier en question (même aprés arret de vb6 il faut que je ferme vb6 pour pouvoir a nouveau supprimer le fichie, surement parce que la dll est encore en memoire) > > Voici briévement les fonctions que je suspecte dans la dll > > 1) j'effectue un : > [...] > hFile = CreateFile( filename, // filename > GENERIC_READ, // access level > FILE_SHARE_READ, // share mode > NULL, // security attirubtes not needed > OPEN_EXISTING, // don't create a new file > FILE_FLAG_BACKUP_SEMANTICS, > NULL ); // no template file > [...] > 2) > BackupRead( hFile, // file handle > Buf, // buffer to write the data > sizeof( Buf ), // size of the buffer > &read, // return value for bytes read > FALSE, // used to clear the data > TRUE, // back up the security descriptor > &context )) > [...] > 3) et tout a la fin > > if( !BackupRead( hFile, // file handle > NULL, // buffer to write the data > 0, // size of the buffer > &read, // return value for bytes read > TRUE, // used to clear the data > FALSE, // back up the security descriptor > &context )) > > CloseHandle( hFile ); > > Est ce que mon probleme serait inhérent a cette parite? ou bien parce que dans une autre partie de ma dll je change les privilege du procees?? > > Help please, j'ai vraiment besoin de pouvoir suprimer les fichiers meme en leur ayant appliqué le traitement par la Dll > > UnExPeCTeDSpy > > > > ,.~*`'^~.(^.  .^),.~^'`*~.
|
|
samedi 10 mai 2003 à 08:16:08 |
Re : Avis des PROS!

BruNews
|
CloseHandle( hFile ); DOIT etre inconditionnel, sors le du test. Celui a effectuer est au debut sur CreateFile(), sortie directe si retourne -1. BruNews, ciao... ------------------------------- Réponse au message : ------------------------------- > Apparement ça marche si je fait un CloseHandle( hFile ); inconditionel a la fin du fichier. Est ce que je peus suprimer carrement le test 3) ou est ce qu'il est mal fait... a vrai dire je sais pas a koi il sert . > > merci > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > ------------------------------- > Réponse au message : > ------------------------------- > > > Bonjour, > > > > je suis plus familier du vb que du c++ alors j'vous d'mande de l'aide : > > > > J'utilise une Dll en c+ avec un prog en Vb qui manipule des fichiers. > > > > Quand j'execute une fonction de ma dll qui agit sur un fichier, par la suite il m'est impossible de suprimer le fichier en question (même aprés arret de vb6 il faut que je ferme vb6 pour pouvoir a nouveau supprimer le fichie, surement parce que la dll est encore en memoire) > > > > Voici briévement les fonctions que je suspecte dans la dll > > > > 1) j'effectue un : > > [...] > > hFile = CreateFile( filename, // filename > > GENERIC_READ, // access level > > FILE_SHARE_READ, // share mode > > NULL, // security attirubtes not needed > > OPEN_EXISTING, // don't create a new file > > FILE_FLAG_BACKUP_SEMANTICS, > > NULL ); // no template file > > [...] > > 2) > > BackupRead( hFile, // file handle > > Buf, // buffer to write the data > > sizeof( Buf ), // size of the buffer > > &read, // return value for bytes read > > FALSE, // used to clear the data > > TRUE, // back up the security descriptor > > &context )) > > [...] > > 3) et tout a la fin > > > > if( !BackupRead( hFile, // file handle > > NULL, // buffer to write the data > > 0, // size of the buffer > > &read, // return value for bytes read > > TRUE, // used to clear the data > > FALSE, // back up the security descriptor > > &context )) > > > > CloseHandle( hFile ); > > > > Est ce que mon probleme serait inhérent a cette parite? ou bien parce que dans une autre partie de ma dll je change les privilege du procees?? > > > > Help please, j'ai vraiment besoin de pouvoir suprimer les fichiers meme en leur ayant appliqué le traitement par la Dll > > > > UnExPeCTeDSpy > > > > > > > > ,.~*`'^~.(^.  .^),.~^'`*~. >
|
|
samedi 10 mai 2003 à 12:45:18 |
Re : Avis des PROS!

UnExPeCtEdSpy
|
Salut BruNews Merci, et on en arrive directe a ma seconde question (eh oui tu n'a pas d'bol lol) j'ai transformé la fonction qui contenais ce code en procedure (void mafuntion etc) et donc avant pour sortir direct aprés le test de CreateFile() il y avait un 'return (-1)' mais maintenant que c'est une fonction comment faire une sortie directe? Sachant que si je mets un 'exit' pour ça il sort directe mais il tues aussi mon prog vb? Merci :) ,.~*`'^~.(^.  .^),.~^'`*~. ------------------------------- Réponse au message : ------------------------------- > CloseHandle( hFile ); DOIT etre inconditionnel, sors le du test. Celui a effectuer est au debut sur CreateFile(), sortie directe si retourne -1. > BruNews, ciao... > > > ------------------------------- > Réponse au message : > ------------------------------- > > > Apparement ça marche si je fait un CloseHandle( hFile ); inconditionel a la fin du fichier. Est ce que je peus suprimer carrement le test 3) ou est ce qu'il est mal fait... a vrai dire je sais pas a koi il sert . > > > > merci > > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > > Bonjour, > > > > > > je suis plus familier du vb que du c++ alors j'vous d'mande de l'aide : > > > > > > J'utilise une Dll en c+ avec un prog en Vb qui manipule des fichiers. > > > > > > Quand j'execute une fonction de ma dll qui agit sur un fichier, par la suite il m'est impossible de suprimer le fichier en question (même aprés arret de vb6 il faut que je ferme vb6 pour pouvoir a nouveau supprimer le fichie, surement parce que la dll est encore en memoire) > > > > > > Voici briévement les fonctions que je suspecte dans la dll > > > > > > 1) j'effectue un : > > > [...] > > > hFile = CreateFile( filename, // filename > > > GENERIC_READ, // access level > > > FILE_SHARE_READ, // share mode > > > NULL, // security attirubtes not needed > > > OPEN_EXISTING, // don't create a new file > > > FILE_FLAG_BACKUP_SEMANTICS, > > > NULL ); // no template file > > > [...] > > > 2) > > > BackupRead( hFile, // file handle > > > Buf, // buffer to write the data > > > sizeof( Buf ), // size of the buffer > > > &read, // return value for bytes read > > > FALSE, // used to clear the data > > > TRUE, // back up the security descriptor > > > &context )) > > > [...] > > > 3) et tout a la fin > > > > > > if( !BackupRead( hFile, // file handle > > > NULL, // buffer to write the data > > > 0, // size of the buffer > > > &read, // return value for bytes read > > > TRUE, // used to clear the data > > > FALSE, // back up the security descriptor > > > &context )) > > > > > > CloseHandle( hFile ); > > > > > > Est ce que mon probleme serait inhérent a cette parite? ou bien parce que dans une autre partie de ma dll je change les privilege du procees?? > > > > > > Help please, j'ai vraiment besoin de pouvoir suprimer les fichiers meme en leur ayant appliqué le traitement par la Dll > > > > > > UnExPeCTeDSpy > > > > > > > > > > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > >
|
|
samedi 10 mai 2003 à 13:15:10 |
Re : Avis des PROS!

BruNews
|
idem: return -1; dans ta fonction si -1 te convient comme indicateur d'erreur. Entendu qu'on ne sort jamais par exit, de toutes les manieres il est a bannir dans un prog Win32. BruNews, ciao... ------------------------------- Réponse au message : ------------------------------- > Salut BruNews > > Merci, et on en arrive directe a ma seconde question (eh oui tu n'a pas d'bol lol) j'ai transformé la fonction qui contenais ce code en procedure (void mafuntion etc) et donc avant pour sortir direct aprés le test de CreateFile() il y avait un 'return (-1)' mais maintenant que c'est une fonction comment faire une sortie directe? Sachant que si je mets un 'exit' pour ça il sort directe mais il tues aussi mon prog vb? > > Merci :) > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > ------------------------------- > Réponse au message : > ------------------------------- > > > CloseHandle( hFile ); DOIT etre inconditionnel, sors le du test. Celui a effectuer est au debut sur CreateFile(), sortie directe si retourne -1. > > BruNews, ciao... > > > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > > Apparement ça marche si je fait un CloseHandle( hFile ); inconditionel a la fin du fichier. Est ce que je peus suprimer carrement le test 3) ou est ce qu'il est mal fait... a vrai dire je sais pas a koi il sert . > > > > > > merci > > > > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > > > > > > > ------------------------------- > > > Réponse au message : > > > ------------------------------- > > > > > > > Bonjour, > > > > > > > > je suis plus familier du vb que du c++ alors j'vous d'mande de l'aide : > > > > > > > > J'utilise une Dll en c+ avec un prog en Vb qui manipule des fichiers. > > > > > > > > Quand j'execute une fonction de ma dll qui agit sur un fichier, par la suite il m'est impossible de suprimer le fichier en question (même aprés arret de vb6 il faut que je ferme vb6 pour pouvoir a nouveau supprimer le fichie, surement parce que la dll est encore en memoire) > > > > > > > > Voici briévement les fonctions que je suspecte dans la dll > > > > > > > > 1) j'effectue un : > > > > [...] > > > > hFile = CreateFile( filename, // filename > > > > GENERIC_READ, // access level > > > > FILE_SHARE_READ, // share mode > > > > NULL, // security attirubtes not needed > > > > OPEN_EXISTING, // don't create a new file > > > > FILE_FLAG_BACKUP_SEMANTICS, > > > > NULL ); // no template file > > > > [...] > > > > 2) > > > > BackupRead( hFile, // file handle > > > > Buf, // buffer to write the data > > > > sizeof( Buf ), // size of the buffer > > > > &read, // return value for bytes read > > > > FALSE, // used to clear the data > > > > TRUE, // back up the security descriptor > > > > &context )) > > > > [...] > > > > 3) et tout a la fin > > > > > > > > if( !BackupRead( hFile, // file handle > > > > NULL, // buffer to write the data > > > > 0, // size of the buffer > > > > &read, // return value for bytes read > > > > TRUE, // used to clear the data > > > > FALSE, // back up the security descriptor > > > > &context )) > > > > > > > > CloseHandle( hFile ); > > > > > > > > Est ce que mon probleme serait inhérent a cette parite? ou bien parce que dans une autre partie de ma dll je change les privilege du procees?? > > > > > > > > Help please, j'ai vraiment besoin de pouvoir suprimer les fichiers meme en leur ayant appliqué le traitement par la Dll > > > > > > > > UnExPeCTeDSpy > > > > > > > > > > > > > > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > > > >
|
|
samedi 10 mai 2003 à 13:34:11 |
Re : Avis des PROS!

UnExPeCtEdSpy
|
Oups désolé il y a une faute de frappe dans mon text : "Merci, et on en arrive directe a ma seconde question (eh oui tu n'a pas d'bol lol) j'ai transformé la fonction qui contenais ce code en procedure (void mafuntion etc) et donc avant pour sortir direct aprés le test de CreateFile() il y avait un 'return (-1)' mais maintenant que c'est une procedure comment faire une sortie directe? Sachant que si je mets un 'exit' pour ça il sort directe mais il tues aussi mon prog vb?" En fait c'est d'une procedure qui ne renvoie rien que je ne sais pas sortir en cours d'execution, quand je met un return(-1); il me dit 'void function returning a value'? voila désolé ,.~*`'^~.(^.  .^),.~^'`*~. ------------------------------- Réponse au message : ------------------------------- > idem: > return -1; > dans ta fonction si -1 te convient comme indicateur d'erreur. Entendu qu'on ne sort jamais par exit, de toutes les manieres il est a bannir dans un prog Win32. > BruNews, ciao... > > > ------------------------------- > Réponse au message : > ------------------------------- > > > Salut BruNews > > > > Merci, et on en arrive directe a ma seconde question (eh oui tu n'a pas d'bol lol) j'ai transformé la fonction qui contenais ce code en procedure (void mafuntion etc) et donc avant pour sortir direct aprés le test de CreateFile() il y avait un 'return (-1)' mais maintenant que c'est une fonction comment faire une sortie directe? Sachant que si je mets un 'exit' pour ça il sort directe mais il tues aussi mon prog vb? > > > > Merci :) > > > > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > > CloseHandle( hFile ); DOIT etre inconditionnel, sors le du test. Celui a effectuer est au debut sur CreateFile(), sortie directe si retourne -1. > > > BruNews, ciao... > > > > > > > > > ------------------------------- > > > Réponse au message : > > > ------------------------------- > > > > > > > Apparement ça marche si je fait un CloseHandle( hFile ); inconditionel a la fin du fichier. Est ce que je peus suprimer carrement le test 3) ou est ce qu'il est mal fait... a vrai dire je sais pas a koi il sert . > > > > > > > > merci > > > > > > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > > > > > > > > > > ------------------------------- > > > > Réponse au message : > > > > ------------------------------- > > > > > > > > > Bonjour, > > > > > > > > > > je suis plus familier du vb que du c++ alors j'vous d'mande de l'aide : > > > > > > > > > > J'utilise une Dll en c+ avec un prog en Vb qui manipule des fichiers. > > > > > > > > > > Quand j'execute une fonction de ma dll qui agit sur un fichier, par la suite il m'est impossible de suprimer le fichier en question (même aprés arret de vb6 il faut que je ferme vb6 pour pouvoir a nouveau supprimer le fichie, surement parce que la dll est encore en memoire) > > > > > > > > > > Voici briévement les fonctions que je suspecte dans la dll > > > > > > > > > > 1) j'effectue un : > > > > > [...] > > > > > hFile = CreateFile( filename, // filename > > > > > GENERIC_READ, // access level > > > > > FILE_SHARE_READ, // share mode > > > > > NULL, // security attirubtes not needed > > > > > OPEN_EXISTING, // don't create a new file > > > > > FILE_FLAG_BACKUP_SEMANTICS, > > > > > NULL ); // no template file > > > > > [...] > > > > > 2) > > > > > BackupRead( hFile, // file handle > > > > > Buf, // buffer to write the data > > > > > sizeof( Buf ), // size of the buffer > > > > > &read, // return value for bytes read > > > > > FALSE, // used to clear the data > > > > > TRUE, // back up the security descriptor > > > > > &context )) > > > > > [...] > > > > > 3) et tout a la fin > > > > > > > > > > if( !BackupRead( hFile, // file handle > > > > > NULL, // buffer to write the data > > > > > 0, // size of the buffer > > > > > &read, // return value for bytes read > > > > > TRUE, // used to clear the data > > > > > FALSE, // back up the security descriptor > > > > > &context )) > > > > > > > > > > CloseHandle( hFile ); > > > > > > > > > > Est ce que mon probleme serait inhérent a cette parite? ou bien parce que dans une autre partie de ma dll je change les privilege du procees?? > > > > > > > > > > Help please, j'ai vraiment besoin de pouvoir suprimer les fichiers meme en leur ayant appliqué le traitement par la Dll > > > > > > > > > > UnExPeCTeDSpy > > > > > > > > > > > > > > > > > > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > > > > > > > >
|
|
samedi 10 mai 2003 à 13:43:47 |
Re : Avis des PROS!

UnExPeCtEdSpy
|
Lol non c bon répond pas, j'suis vraiment une nouille y a pas de probleme je peus la déclarer comme étant int mafonction(...) dans la dll et lui faire un return(-1) tout en conservant une déclaration de type sub dans mon vb. Donc tout marche impecable now, c'est parfait pour moi Merci bcp @+ ,.~*`'^~.(^.  .^),.~^'`*~. ------------------------------- Réponse au message : ------------------------------- > > Oups désolé il y a une faute de frappe dans mon text : > > > "Merci, et on en arrive directe a ma seconde question (eh oui tu n'a pas d'bol lol) j'ai transformé la fonction qui contenais ce code en procedure (void mafuntion etc) et donc avant pour sortir direct aprés le test de CreateFile() il y avait un 'return (-1)' mais maintenant que c'est une procedure comment faire une sortie directe? Sachant que si je mets un 'exit' pour ça il sort directe mais il tues aussi mon prog vb?" > > En fait c'est d'une procedure qui ne renvoie rien que je ne sais pas sortir en cours d'execution, quand je met un return(-1); il me dit 'void function returning a value'? > > voila désolé > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > ------------------------------- > Réponse au message : > ------------------------------- > > > idem: > > return -1; > > dans ta fonction si -1 te convient comme indicateur d'erreur. Entendu qu'on ne sort jamais par exit, de toutes les manieres il est a bannir dans un prog Win32. > > BruNews, ciao... > > > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > > Salut BruNews > > > > > > Merci, et on en arrive directe a ma seconde question (eh oui tu n'a pas d'bol lol) j'ai transformé la fonction qui contenais ce code en procedure (void mafuntion etc) et donc avant pour sortir direct aprés le test de CreateFile() il y avait un 'return (-1)' mais maintenant que c'est une fonction comment faire une sortie directe? Sachant que si je mets un 'exit' pour ça il sort directe mais il tues aussi mon prog vb? > > > > > > Merci :) > > > > > > > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > > > > > > > ------------------------------- > > > Réponse au message : > > > ------------------------------- > > > > > > > CloseHandle( hFile ); DOIT etre inconditionnel, sors le du test. Celui a effectuer est au debut sur CreateFile(), sortie directe si retourne -1. > > > > BruNews, ciao... > > > > > > > > > > > > ------------------------------- > > > > Réponse au message : > > > > ------------------------------- > > > > > > > > > Apparement ça marche si je fait un CloseHandle( hFile ); inconditionel a la fin du fichier. Est ce que je peus suprimer carrement le test 3) ou est ce qu'il est mal fait... a vrai dire je sais pas a koi il sert . > > > > > > > > > > merci > > > > > > > > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > > > > > > > > > > > > > ------------------------------- > > > > > Réponse au message : > > > > > ------------------------------- > > > > > > > > > > > Bonjour, > > > > > > > > > > > > je suis plus familier du vb que du c++ alors j'vous d'mande de l'aide : > > > > > > > > > > > > J'utilise une Dll en c+ avec un prog en Vb qui manipule des fichiers. > > > > > > > > > > > > Quand j'execute une fonction de ma dll qui agit sur un fichier, par la suite il m'est impossible de suprimer le fichier en question (même aprés arret de vb6 il faut que je ferme vb6 pour pouvoir a nouveau supprimer le fichie, surement parce que la dll est encore en memoire) > > > > > > > > > > > > Voici briévement les fonctions que je suspecte dans la dll > > > > > > > > > > > > 1) j'effectue un : > > > > > > [...] > > > > > > hFile = CreateFile( filename, // filename > > > > > > GENERIC_READ, // access level > > > > > > FILE_SHARE_READ, // share mode > > > > > > NULL, // security attirubtes not needed > > > > > > OPEN_EXISTING, // don't create a new file > > > > > > FILE_FLAG_BACKUP_SEMANTICS, > > > > > > NULL ); // no template file > > > > > > [...] > > > > > > 2) > > > > > > BackupRead( hFile, // file handle > > > > > > Buf, // buffer to write the data > > > > > > sizeof( Buf ), // size of the buffer > > > > > > &read, // return value for bytes read > > > > > > FALSE, // used to clear the data > > > > > > TRUE, // back up the security descriptor > > > > > > &context )) > > > > > > [...] > > > > > > 3) et tout a la fin > > > > > > > > > > > > if( !BackupRead( hFile, // file handle > > > > > > NULL, // buffer to write the data > > > > > > 0, // size of the buffer > > > > > > &read, // return value for bytes read > > > > > > TRUE, // used to clear the data > > > > > > FALSE, // back up the security descriptor > > > > > > &context )) > > > > > > > > > > > > CloseHandle( hFile ); > > > > > > > > > > > > Est ce que mon probleme serait inhérent a cette parite? ou bien parce que dans une autre partie de ma dll je change les privilege du procees?? > > > > > > > > > > > > Help please, j'ai vraiment besoin de pouvoir suprimer les fichiers meme en leur ayant appliqué le traitement par la Dll > > > > > > > > > > > > UnExPeCTeDSpy > > > > > > > > > > > > > > > > > > > > > > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > > > > > > > > > > > > >
|
|
samedi 10 mai 2003 à 13:44:25 |
Re : Avis des PROS!

BruNews
|
Y a pas de procedure en C, c'est une illusion VB. Tout est fonction, void indique seulement au prog appelant que valeur de EAX est indefinie en sortie. si tu laisses void alors: return; // tout sec BruNews, ciao... ------------------------------- Réponse au message : ------------------------------- > > Oups désolé il y a une faute de frappe dans mon text : > > > "Merci, et on en arrive directe a ma seconde question (eh oui tu n'a pas d'bol lol) j'ai transformé la fonction qui contenais ce code en procedure (void mafuntion etc) et donc avant pour sortir direct aprés le test de CreateFile() il y avait un 'return (-1)' mais maintenant que c'est une procedure comment faire une sortie directe? Sachant que si je mets un 'exit' pour ça il sort directe mais il tues aussi mon prog vb?" > > En fait c'est d'une procedure qui ne renvoie rien que je ne sais pas sortir en cours d'execution, quand je met un return(-1); il me dit 'void function returning a value'? > > voila désolé > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > ------------------------------- > Réponse au message : > ------------------------------- > > > idem: > > return -1; > > dans ta fonction si -1 te convient comme indicateur d'erreur. Entendu qu'on ne sort jamais par exit, de toutes les manieres il est a bannir dans un prog Win32. > > BruNews, ciao... > > > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > > Salut BruNews > > > > > > Merci, et on en arrive directe a ma seconde question (eh oui tu n'a pas d'bol lol) j'ai transformé la fonction qui contenais ce code en procedure (void mafuntion etc) et donc avant pour sortir direct aprés le test de CreateFile() il y avait un 'return (-1)' mais maintenant que c'est une fonction comment faire une sortie directe? Sachant que si je mets un 'exit' pour ça il sort directe mais il tues aussi mon prog vb? > > > > > > Merci :) > > > > > > > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > > > > > > > ------------------------------- > > > Réponse au message : > > > ------------------------------- > > > > > > > CloseHandle( hFile ); DOIT etre inconditionnel, sors le du test. Celui a effectuer est au debut sur CreateFile(), sortie directe si retourne -1. > > > > BruNews, ciao... > > > > > > > > > > > > ------------------------------- > > > > Réponse au message : > > > > ------------------------------- > > > > > > > > > Apparement ça marche si je fait un CloseHandle( hFile ); inconditionel a la fin du fichier. Est ce que je peus suprimer carrement le test 3) ou est ce qu'il est mal fait... a vrai dire je sais pas a koi il sert . > > > > > > > > > > merci > > > > > > > > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > > > > > > > > > > > > > ------------------------------- > > > > > Réponse au message : > > > > > ------------------------------- > > > > > > > > > > > Bonjour, > > > > > > > > > > > > je suis plus familier du vb que du c++ alors j'vous d'mande de l'aide : > > > > > > > > > > > > J'utilise une Dll en c+ avec un prog en Vb qui manipule des fichiers. > > > > > > > > > > > > Quand j'execute une fonction de ma dll qui agit sur un fichier, par la suite il m'est impossible de suprimer le fichier en question (même aprés arret de vb6 il faut que je ferme vb6 pour pouvoir a nouveau supprimer le fichie, surement parce que la dll est encore en memoire) > > > > > > > > > > > > Voici briévement les fonctions que je suspecte dans la dll > > > > > > > > > > > > 1) j'effectue un : > > > > > > [...] > > > > > > hFile = CreateFile( filename, // filename > > > > > > GENERIC_READ, // access level > > > > > > FILE_SHARE_READ, // share mode > > > > > > NULL, // security attirubtes not needed > > > > > > OPEN_EXISTING, // don't create a new file > > > > > > FILE_FLAG_BACKUP_SEMANTICS, > > > > > > NULL ); // no template file > > > > > > [...] > > > > > > 2) > > > > > > BackupRead( hFile, // file handle > > > > > > Buf, // buffer to write the data > > > > > > sizeof( Buf ), // size of the buffer > > > > > > &read, // return value for bytes read > > > > > > FALSE, // used to clear the data > > > > > > TRUE, // back up the security descriptor > > > > > > &context )) > > > > > > [...] > > > > > > 3) et tout a la fin > > > > > > > > > > > > if( !BackupRead( hFile, // file handle > > > > > > NULL, // buffer to write the data > > > > > > 0, // size of the buffer > > > > > > &read, // return value for bytes read > > > > > > TRUE, // used to clear the data > > > > > > FALSE, // back up the security descriptor > > > > > > &context )) > > > > > > > > > > > > CloseHandle( hFile ); > > > > > > > > > > > > Est ce que mon probleme serait inhérent a cette parite? ou bien parce que dans une autre partie de ma dll je change les privilege du procees?? > > > > > > > > > > > > Help please, j'ai vraiment besoin de pouvoir suprimer les fichiers meme en leur ayant appliqué le traitement par la Dll > > > > > > > > > > > > UnExPeCTeDSpy > > > > > > > > > > > > > > > > > > > > > > > > ,.~*`'^~.(^.  .^),.~^'`*~. > > > > > > > > > > > > > > >
|
|
Cette discussion est classée dans : buffer, file, dll, read, hfile
Répondre à ce message
Sujets en rapport avec ce message
File Mapping entre 2 programmes [ par Arkadias ]
Bonjour,Je développe une application ou il sera nécessaire à 2 programmes différents (mais éxecuté sur la même machine) d'échanger les données d'un bu
(win32)Fichier et buffer en lecture seule [ par mogwai93 ]
Bonjour Je voudrais lire un fichier, placer le contenu de ce fichier dans un buffer et modifier ce buffer (mais pas le fichier). J'arrive bien à ou
verification de code [ par dyroj ]
salut a tous,je voudrai savoir si il y a des faute au niveu de la fonction select() et si je suis obliger de metre sock+1 au lieu de sock dans se peti
Envoi de fichier non complet [ par trafounet ]
bonjour à tous,je cherche à envoyer un fichier par socket et ca marche pour les fichiers de petite taille (quelques ko) mais malheuresement dès que le
Binaire Hexa :-S Un petit soutient svp [ par MrDimanche ]
Bonjour, voila ce qui m'amène.Je dois lire un fichier de données binaire, et le convertir. Mais si j'ai une petite expérience en c, c'est la première
ecrire ds un fichier [ par 69lion69 ]
Salut a tous alor voila dans une application en api windows je créér un fichier et je copie le contenu dun tableau de float le fichier mais il ma'affi
pb acces avec createfile et ReadDirectoryChangesW [ par kts_system ]
bonjour,voila mon probleme : j'ai une classe qui permet de reperer les changement dans un dossier (ajout / modif /suppression)poutr cela je lance un t
Charger des fonctions depuis une dll [ par HeXa2 ]
Bonjour!Je viens de finir de compiler une DLL: H2BUSDLL.dllcette dll a pour but de gerer une communication sur le port com (que je vais interfacer ave
execution de programme [ par silverfr78021959 ]
bonjour a tous, voilà j'ai un probleme quand je veux executer mon prog sur devc++ il m'ouvre la fenteree dos mais la referme aussi tot je peux donc pa
demande conseil class [ par silverfr78021959 ]
salut as tousje voudrais faire la meme chose que le programme montré ci-dessous, sauf que lamapEt comment je peu acceder au valeur contenu d
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko [FRAMEWORK 4] LES TASKS ET LE THREAD UI[FRAMEWORK 4] LES TASKS ET LE THREAD UI par fathi
Je viens de passer quelques temps au TechDay's et j'ai pu voir pas mal de session intéressante. Par contre une chose m'a un peu étonné lors de certaines de ces sessions qui abordaient les améliorations du framework .NET (donc le 4.5) : en gros, bea...
Cliquez pour lire la suite de l'article par fathi WORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBEWORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBE par JeremyJeanson
Depuis déjà un an, je conseille vivement les utilisateurs de Workflow Foundation 3 à migrer vers la version 4. L'information qui va suivre ne devrait donc pas trop prendre au dépourvu les personnes qui m'ont suivi. Je profite de ce poste, pour faire le re...
Cliquez pour lire la suite de l'article par JeremyJeanson TECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PCTECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PC par ROMELARD Fabrice
Speakers: Thierry Rapatout, Antoine Petit et Xavier Trebbia Cette session entre dans le cadre des RDV Décideurs des TechDays 2012, elle est liée à la consumérisation de l'IT et la mise en place du "DeskTop as a Service" dans de plus en ...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|