Vidanger puis fermer un fichier ouvert en mode Output dans le cas d'un disque plein
17 réponses
Eric
Bonjour à tous,
Pour un fichier ouvert en mode Output, la méthode "Close #" transfert le
contenu du buffer sur le disque avant de fermer le fichier. Si le disque
est plein, cette méthode plante et laisse le fichier ouvert (il restera
ouvert tant que l'application n'est pas déchargée).
Y'a-t-il un moyen pour vider le contenu du buffer et du fichier avant de
le fermer?
Salut, c'est pas exactement la réponse, mais, faire un programme qui bloque le moindre fichier à cause du disque plein, vaudrait peut être mieux commencer par le commencement, lol, vider le disque... ---------
"Eric" a écrit dans le message de news:
Bonjour à tous,
Pour un fichier ouvert en mode Output, la méthode "Close #" transfert le contenu du buffer sur le disque avant de fermer le fichier. Si le disque est plein, cette méthode plante et laisse le fichier ouvert (il restera ouvert tant que l'application n'est pas déchargée). Y'a-t-il un moyen pour vider le contenu du buffer et du fichier avant de le fermer?
Merci
Salut, c'est pas exactement la réponse, mais, faire
un programme qui bloque le moindre fichier à cause du disque
plein, vaudrait peut être mieux commencer par le
commencement, lol, vider le disque...
---------
"Eric" <ericbellina@wanadoo.fr> a écrit dans le message de
news: Otp30W3OFHA.2680@TK2MSFTNGP09.phx.gbl...
Bonjour à tous,
Pour un fichier ouvert en mode Output, la méthode "Close
#" transfert le contenu du buffer sur le disque avant de
fermer le fichier. Si le disque est plein, cette méthode
plante et laisse le fichier ouvert (il restera ouvert tant
que l'application n'est pas déchargée).
Y'a-t-il un moyen pour vider le contenu du buffer et du
fichier avant de le fermer?
Salut, c'est pas exactement la réponse, mais, faire un programme qui bloque le moindre fichier à cause du disque plein, vaudrait peut être mieux commencer par le commencement, lol, vider le disque... ---------
"Eric" a écrit dans le message de news:
Bonjour à tous,
Pour un fichier ouvert en mode Output, la méthode "Close #" transfert le contenu du buffer sur le disque avant de fermer le fichier. Si le disque est plein, cette méthode plante et laisse le fichier ouvert (il restera ouvert tant que l'application n'est pas déchargée). Y'a-t-il un moyen pour vider le contenu du buffer et du fichier avant de le fermer?
Merci
ng
Salut,
Pour un fichier ouvert en mode Output, la méthode "Close #" transfert le contenu du buffer sur le disque avant de fermer le fichier. Si le disque est plein, cette méthode plante et laisse le fichier ouvert (il restera ouvert tant que l'application n'est pas déchargée). Y'a-t-il un moyen pour vider le contenu du buffer et du fichier avant de le fermer?
C'est plutot Print #X qui décharge le buffer en output. Il faut dans ce cas mettre une gestion d'erreur et refaire un close dans cette gestion de manière à fermer le fichier.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Salut,
Pour un fichier ouvert en mode Output, la méthode "Close #" transfert le
contenu du buffer sur le disque avant de fermer le fichier. Si le disque
est plein, cette méthode plante et laisse le fichier ouvert (il restera
ouvert tant que l'application n'est pas déchargée).
Y'a-t-il un moyen pour vider le contenu du buffer et du fichier avant de
le fermer?
C'est plutot Print #X qui décharge le buffer en output.
Il faut dans ce cas mettre une gestion d'erreur et refaire un close dans
cette gestion de manière à fermer le fichier.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
Pour un fichier ouvert en mode Output, la méthode "Close #" transfert le contenu du buffer sur le disque avant de fermer le fichier. Si le disque est plein, cette méthode plante et laisse le fichier ouvert (il restera ouvert tant que l'application n'est pas déchargée). Y'a-t-il un moyen pour vider le contenu du buffer et du fichier avant de le fermer?
C'est plutot Print #X qui décharge le buffer en output. Il faut dans ce cas mettre une gestion d'erreur et refaire un close dans cette gestion de manière à fermer le fichier.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Eric
Mon programme génère pleins de fichiers contenant des données récupérées de la BDD avant de compresser le tout puis de les effacer. Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais pas demander au client d'effacer le contenu de son disque pour me faire plus de place hein ;)
LE TROLL wrote:
Salut, c'est pas exactement la réponse, mais, faire un programme qui bloque le moindre fichier à cause du disque plein, vaudrait peut être mieux commencer par le commencement, lol, vider le disque... ---------
"Eric" a écrit dans le message de news:
Bonjour à tous,
Pour un fichier ouvert en mode Output, la méthode "Close #" transfert le contenu du buffer sur le disque avant de fermer le fichier. Si le disque est plein, cette méthode plante et laisse le fichier ouvert (il restera ouvert tant que l'application n'est pas déchargée). Y'a-t-il un moyen pour vider le contenu du buffer et du fichier avant de le fermer?
Merci
Mon programme génère pleins de fichiers contenant des données récupérées
de la BDD avant de compresser le tout puis de les effacer.
Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais
pas demander au client d'effacer le contenu de son disque pour me faire
plus de place hein ;)
LE TROLL wrote:
Salut, c'est pas exactement la réponse, mais, faire
un programme qui bloque le moindre fichier à cause du disque
plein, vaudrait peut être mieux commencer par le
commencement, lol, vider le disque...
---------
"Eric" <ericbellina@wanadoo.fr> a écrit dans le message de
news: Otp30W3OFHA.2680@TK2MSFTNGP09.phx.gbl...
Bonjour à tous,
Pour un fichier ouvert en mode Output, la méthode "Close
#" transfert le contenu du buffer sur le disque avant de
fermer le fichier. Si le disque est plein, cette méthode
plante et laisse le fichier ouvert (il restera ouvert tant
que l'application n'est pas déchargée).
Y'a-t-il un moyen pour vider le contenu du buffer et du
fichier avant de le fermer?
Mon programme génère pleins de fichiers contenant des données récupérées de la BDD avant de compresser le tout puis de les effacer. Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais pas demander au client d'effacer le contenu de son disque pour me faire plus de place hein ;)
LE TROLL wrote:
Salut, c'est pas exactement la réponse, mais, faire un programme qui bloque le moindre fichier à cause du disque plein, vaudrait peut être mieux commencer par le commencement, lol, vider le disque... ---------
"Eric" a écrit dans le message de news:
Bonjour à tous,
Pour un fichier ouvert en mode Output, la méthode "Close #" transfert le contenu du buffer sur le disque avant de fermer le fichier. Si le disque est plein, cette méthode plante et laisse le fichier ouvert (il restera ouvert tant que l'application n'est pas déchargée). Y'a-t-il un moyen pour vider le contenu du buffer et du fichier avant de le fermer?
Merci
Eric
Non, le pb est justement au niveau du "close" qui transfert le buffer sur le disque avant de fermer le fichier (cf la msdn). Or je voudrais juste pouvoir fermer le fichier sans transférer le reste des données du buffer puisque le disque est vraiment plein.
Extrait de la MSDN: "When you close files that were opened for Output or Append, the final buffer of output is written to the operating system buffer for that file. All buffer space associated with the closed file is released."
ng wrote:
Salut,
Pour un fichier ouvert en mode Output, la méthode "Close #" transfert le contenu du buffer sur le disque avant de fermer le fichier. Si le disque est plein, cette méthode plante et laisse le fichier ouvert (il restera ouvert tant que l'application n'est pas déchargée). Y'a-t-il un moyen pour vider le contenu du buffer et du fichier avant de le fermer?
C'est plutot Print #X qui décharge le buffer en output. Il faut dans ce cas mettre une gestion d'erreur et refaire un close dans cette gestion de manière à fermer le fichier.
Non, le pb est justement au niveau du "close" qui transfert le buffer
sur le disque avant de fermer le fichier (cf la msdn).
Or je voudrais juste pouvoir fermer le fichier sans transférer le reste
des données du buffer puisque le disque est vraiment plein.
Extrait de la MSDN:
"When you close files that were opened for Output or Append, the final
buffer of output is written to the operating system buffer for that
file. All buffer space associated with the closed file is released."
ng wrote:
Salut,
Pour un fichier ouvert en mode Output, la méthode "Close #" transfert le
contenu du buffer sur le disque avant de fermer le fichier. Si le disque
est plein, cette méthode plante et laisse le fichier ouvert (il restera
ouvert tant que l'application n'est pas déchargée).
Y'a-t-il un moyen pour vider le contenu du buffer et du fichier avant de
le fermer?
C'est plutot Print #X qui décharge le buffer en output.
Il faut dans ce cas mettre une gestion d'erreur et refaire un close dans
cette gestion de manière à fermer le fichier.
Non, le pb est justement au niveau du "close" qui transfert le buffer sur le disque avant de fermer le fichier (cf la msdn). Or je voudrais juste pouvoir fermer le fichier sans transférer le reste des données du buffer puisque le disque est vraiment plein.
Extrait de la MSDN: "When you close files that were opened for Output or Append, the final buffer of output is written to the operating system buffer for that file. All buffer space associated with the closed file is released."
ng wrote:
Salut,
Pour un fichier ouvert en mode Output, la méthode "Close #" transfert le contenu du buffer sur le disque avant de fermer le fichier. Si le disque est plein, cette méthode plante et laisse le fichier ouvert (il restera ouvert tant que l'application n'est pas déchargée). Y'a-t-il un moyen pour vider le contenu du buffer et du fichier avant de le fermer?
C'est plutot Print #X qui décharge le buffer en output. Il faut dans ce cas mettre une gestion d'erreur et refaire un close dans cette gestion de manière à fermer le fichier.
ng
Salut,
A au temps pour moi j'avais mal compris. Je vois 2 solutions :
1/ rachète toi un disque 2/ essaye de calculer à l'avance la taille nécessaire (en arrondissant au dessus) afin de vérifier s'il reste suffisamment d'espace disque.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Salut,
A au temps pour moi j'avais mal compris.
Je vois 2 solutions :
1/ rachète toi un disque
2/ essaye de calculer à l'avance la taille nécessaire (en arrondissant au
dessus) afin de vérifier s'il reste suffisamment d'espace disque.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
A au temps pour moi j'avais mal compris. Je vois 2 solutions :
1/ rachète toi un disque 2/ essaye de calculer à l'avance la taille nécessaire (en arrondissant au dessus) afin de vérifier s'il reste suffisamment d'espace disque.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
ng
Eric wrote:
Mon programme génère pleins de fichiers contenant des données récupérées de la BDD avant de compresser le tout puis de les effacer. Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais pas demander au client d'effacer le contenu de son disque pour me faire plus de place hein ;)
Dans ce cas il faut anticiper l'espace necessaire et afficher un message d'erreur s'il y en a pas assez. De tte facon pour ce genre de manip le client doit bien savoir qu'il faut de la marge sur son disque, donc tu estimes large et tu affiches un messages si c'est pas bon.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Eric wrote:
Mon programme génère pleins de fichiers contenant des données récupérées
de la BDD avant de compresser le tout puis de les effacer.
Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais
pas demander au client d'effacer le contenu de son disque pour me faire
plus de place hein ;)
Dans ce cas il faut anticiper l'espace necessaire et afficher un message
d'erreur s'il y en a pas assez. De tte facon pour ce genre de manip le
client doit bien savoir qu'il faut de la marge sur son disque, donc tu
estimes large et tu affiches un messages si c'est pas bon.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
Mon programme génère pleins de fichiers contenant des données récupérées de la BDD avant de compresser le tout puis de les effacer. Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais pas demander au client d'effacer le contenu de son disque pour me faire plus de place hein ;)
Dans ce cas il faut anticiper l'espace necessaire et afficher un message d'erreur s'il y en a pas assez. De tte facon pour ce genre de manip le client doit bien savoir qu'il faut de la marge sur son disque, donc tu estimes large et tu affiches un messages si c'est pas bon.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
LE TROLL
Ou effaces ton disque, lol ! Comme je te disais au départ, curieux ça de tester la taille du disque dur, je n'ai jamais fait, car de toute façon, si ça coince, il faut gérer tout, l'erreur, les fichiers miroir, faire une reprise d'accès aux fichier, enfin, toute la batterie infernale... Pendant que j'y pense, as-tu testé s'il y avait de l'électricité, car sinon, ben, le disque ne tourne pas "ab absurdo! ---------
"ng" a écrit dans le message de news:
Salut,
A au temps pour moi j'avais mal compris. Je vois 2 solutions :
1/ rachète toi un disque 2/ essaye de calculer à l'avance la taille nécessaire (en arrondissant au dessus) afin de vérifier s'il reste suffisamment d'espace disque.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Ou effaces ton disque, lol !
Comme je te disais au départ, curieux ça de tester la taille
du disque dur, je n'ai jamais fait, car de toute façon, si
ça coince, il faut gérer tout, l'erreur, les fichiers
miroir, faire une reprise d'accès aux fichier, enfin, toute
la batterie infernale...
Pendant que j'y pense, as-tu testé s'il y avait de
l'électricité, car sinon, ben, le disque ne tourne pas "ab
absurdo!
---------
"ng" <ng@ngsoft-fr.com> a écrit dans le message de news:
e4PNyC4OFHA.508@TK2MSFTNGP12.phx.gbl...
Salut,
A au temps pour moi j'avais mal compris.
Je vois 2 solutions :
1/ rachète toi un disque
2/ essaye de calculer à l'avance la taille nécessaire (en
arrondissant au
dessus) afin de vérifier s'il reste suffisamment d'espace
disque.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
Ou effaces ton disque, lol ! Comme je te disais au départ, curieux ça de tester la taille du disque dur, je n'ai jamais fait, car de toute façon, si ça coince, il faut gérer tout, l'erreur, les fichiers miroir, faire une reprise d'accès aux fichier, enfin, toute la batterie infernale... Pendant que j'y pense, as-tu testé s'il y avait de l'électricité, car sinon, ben, le disque ne tourne pas "ab absurdo! ---------
"ng" a écrit dans le message de news:
Salut,
A au temps pour moi j'avais mal compris. Je vois 2 solutions :
1/ rachète toi un disque 2/ essaye de calculer à l'avance la taille nécessaire (en arrondissant au dessus) afin de vérifier s'il reste suffisamment d'espace disque.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Eric
c'est impossible d'estimer la place qu'il faudrait... Et ca prendrait inutilement du temps dans les cas (normaux) où il y a assez de place.
ng wrote:
Eric wrote:
Mon programme génère pleins de fichiers contenant des données récupérées de la BDD avant de compresser le tout puis de les effacer. Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais pas demander au client d'effacer le contenu de son disque pour me faire plus de place hein ;)
Dans ce cas il faut anticiper l'espace necessaire et afficher un message d'erreur s'il y en a pas assez. De tte facon pour ce genre de manip le client doit bien savoir qu'il faut de la marge sur son disque, donc tu estimes large et tu affiches un messages si c'est pas bon.
c'est impossible d'estimer la place qu'il faudrait... Et ca prendrait
inutilement du temps dans les cas (normaux) où il y a assez de place.
ng wrote:
Eric wrote:
Mon programme génère pleins de fichiers contenant des données récupérées
de la BDD avant de compresser le tout puis de les effacer.
Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais
pas demander au client d'effacer le contenu de son disque pour me faire
plus de place hein ;)
Dans ce cas il faut anticiper l'espace necessaire et afficher un message
d'erreur s'il y en a pas assez. De tte facon pour ce genre de manip le
client doit bien savoir qu'il faut de la marge sur son disque, donc tu
estimes large et tu affiches un messages si c'est pas bon.
c'est impossible d'estimer la place qu'il faudrait... Et ca prendrait inutilement du temps dans les cas (normaux) où il y a assez de place.
ng wrote:
Eric wrote:
Mon programme génère pleins de fichiers contenant des données récupérées de la BDD avant de compresser le tout puis de les effacer. Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais pas demander au client d'effacer le contenu de son disque pour me faire plus de place hein ;)
Dans ce cas il faut anticiper l'espace necessaire et afficher un message d'erreur s'il y en a pas assez. De tte facon pour ce genre de manip le client doit bien savoir qu'il faut de la marge sur son disque, donc tu estimes large et tu affiches un messages si c'est pas bon.
Jean-Marc
"Eric" a écrit dans le message de news:%
c'est impossible d'estimer la place qu'il faudrait... Et ca prendrait inutilement du temps dans les cas (normaux) où il y a assez de place.
ng wrote: > Eric wrote: > > >>Mon programme génère pleins de fichiers contenant des données récupérées >>de la BDD avant de compresser le tout puis de les effacer. >>Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais >>pas demander au client d'effacer le contenu de son disque pour me faire >>plus de place hein ;) > > > Dans ce cas il faut anticiper l'espace necessaire et afficher un message > d'erreur s'il y en a pas assez. De tte facon pour ce genre de manip le > client doit bien savoir qu'il faut de la marge sur son disque, donc tu > estimes large et tu affiches un messages si c'est pas bon.
Hello,
alors fais tes écritures en C. En C, il y a fflush(file_descriptor) qui force l'écriture sur le stream désigné. Ce n'est pas compliqué de faire une petite dll qui implémente juste une fonction d'écriture. Il ne te reste plus qu'à appeler cette fonction depuis ton prgramme VB.
Ce n'est qu'une solution parmi d'autres, je pense qu'il y a beaucoup plus secure avec un design différent de ton appli.
-- Jean-marc "There are only 10 kind of people those who understand binary and those who don't."
"Eric" <ericbellina@wanadoo.fr> a écrit dans le message de
news:%23V2vMa4OFHA.3076@TK2MSFTNGP14.phx.gbl...
c'est impossible d'estimer la place qu'il faudrait... Et ca prendrait
inutilement du temps dans les cas (normaux) où il y a assez de place.
ng wrote:
> Eric wrote:
>
>
>>Mon programme génère pleins de fichiers contenant des données récupérées
>>de la BDD avant de compresser le tout puis de les effacer.
>>Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais
>>pas demander au client d'effacer le contenu de son disque pour me faire
>>plus de place hein ;)
>
>
> Dans ce cas il faut anticiper l'espace necessaire et afficher un message
> d'erreur s'il y en a pas assez. De tte facon pour ce genre de manip le
> client doit bien savoir qu'il faut de la marge sur son disque, donc tu
> estimes large et tu affiches un messages si c'est pas bon.
Hello,
alors fais tes écritures en C. En C, il y a fflush(file_descriptor) qui
force l'écriture sur le stream désigné. Ce n'est pas compliqué de faire
une petite dll qui implémente juste une fonction d'écriture.
Il ne te reste plus qu'à appeler cette fonction depuis ton prgramme VB.
Ce n'est qu'une solution parmi d'autres, je pense qu'il y a beaucoup plus
secure avec un design différent de ton appli.
--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
c'est impossible d'estimer la place qu'il faudrait... Et ca prendrait inutilement du temps dans les cas (normaux) où il y a assez de place.
ng wrote: > Eric wrote: > > >>Mon programme génère pleins de fichiers contenant des données récupérées >>de la BDD avant de compresser le tout puis de les effacer. >>Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais >>pas demander au client d'effacer le contenu de son disque pour me faire >>plus de place hein ;) > > > Dans ce cas il faut anticiper l'espace necessaire et afficher un message > d'erreur s'il y en a pas assez. De tte facon pour ce genre de manip le > client doit bien savoir qu'il faut de la marge sur son disque, donc tu > estimes large et tu affiches un messages si c'est pas bon.
Hello,
alors fais tes écritures en C. En C, il y a fflush(file_descriptor) qui force l'écriture sur le stream désigné. Ce n'est pas compliqué de faire une petite dll qui implémente juste une fonction d'écriture. Il ne te reste plus qu'à appeler cette fonction depuis ton prgramme VB.
Ce n'est qu'une solution parmi d'autres, je pense qu'il y a beaucoup plus secure avec un design différent de ton appli.
-- Jean-marc "There are only 10 kind of people those who understand binary and those who don't."
Eric
ok merci je pense que je vais essayer de concevoir l'appli autrement.
Jean-Marc wrote:
"Eric" a écrit dans le message de news:%
c'est impossible d'estimer la place qu'il faudrait... Et ca prendrait inutilement du temps dans les cas (normaux) où il y a assez de place.
ng wrote:
Eric wrote:
Mon programme génère pleins de fichiers contenant des données récupérées de la BDD avant de compresser le tout puis de les effacer. Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais pas demander au client d'effacer le contenu de son disque pour me faire plus de place hein ;)
Dans ce cas il faut anticiper l'espace necessaire et afficher un message d'erreur s'il y en a pas assez. De tte facon pour ce genre de manip le client doit bien savoir qu'il faut de la marge sur son disque, donc tu estimes large et tu affiches un messages si c'est pas bon.
Hello,
alors fais tes écritures en C. En C, il y a fflush(file_descriptor) qui force l'écriture sur le stream désigné. Ce n'est pas compliqué de faire une petite dll qui implémente juste une fonction d'écriture. Il ne te reste plus qu'à appeler cette fonction depuis ton prgramme VB.
Ce n'est qu'une solution parmi d'autres, je pense qu'il y a beaucoup plus secure avec un design différent de ton appli.
ok merci
je pense que je vais essayer de concevoir l'appli autrement.
Jean-Marc wrote:
"Eric" <ericbellina@wanadoo.fr> a écrit dans le message de
news:%23V2vMa4OFHA.3076@TK2MSFTNGP14.phx.gbl...
c'est impossible d'estimer la place qu'il faudrait... Et ca prendrait
inutilement du temps dans les cas (normaux) où il y a assez de place.
ng wrote:
Eric wrote:
Mon programme génère pleins de fichiers contenant des données récupérées
de la BDD avant de compresser le tout puis de les effacer.
Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais
pas demander au client d'effacer le contenu de son disque pour me faire
plus de place hein ;)
Dans ce cas il faut anticiper l'espace necessaire et afficher un message
d'erreur s'il y en a pas assez. De tte facon pour ce genre de manip le
client doit bien savoir qu'il faut de la marge sur son disque, donc tu
estimes large et tu affiches un messages si c'est pas bon.
Hello,
alors fais tes écritures en C. En C, il y a fflush(file_descriptor) qui
force l'écriture sur le stream désigné. Ce n'est pas compliqué de faire
une petite dll qui implémente juste une fonction d'écriture.
Il ne te reste plus qu'à appeler cette fonction depuis ton prgramme VB.
Ce n'est qu'une solution parmi d'autres, je pense qu'il y a beaucoup plus
secure avec un design différent de ton appli.
ok merci je pense que je vais essayer de concevoir l'appli autrement.
Jean-Marc wrote:
"Eric" a écrit dans le message de news:%
c'est impossible d'estimer la place qu'il faudrait... Et ca prendrait inutilement du temps dans les cas (normaux) où il y a assez de place.
ng wrote:
Eric wrote:
Mon programme génère pleins de fichiers contenant des données récupérées de la BDD avant de compresser le tout puis de les effacer. Je dois donc envisager le cas d'un espace disque insuffisant! Et je vais pas demander au client d'effacer le contenu de son disque pour me faire plus de place hein ;)
Dans ce cas il faut anticiper l'espace necessaire et afficher un message d'erreur s'il y en a pas assez. De tte facon pour ce genre de manip le client doit bien savoir qu'il faut de la marge sur son disque, donc tu estimes large et tu affiches un messages si c'est pas bon.
Hello,
alors fais tes écritures en C. En C, il y a fflush(file_descriptor) qui force l'écriture sur le stream désigné. Ce n'est pas compliqué de faire une petite dll qui implémente juste une fonction d'écriture. Il ne te reste plus qu'à appeler cette fonction depuis ton prgramme VB.
Ce n'est qu'une solution parmi d'autres, je pense qu'il y a beaucoup plus secure avec un design différent de ton appli.