OVH Cloud OVH Cloud

créer et détruire des fichiers

28 réponses
Avatar
thierry
Bonjour,

lorsque l'on programme en C , on peut créer des fichiers , effacer ce qu'il
y dedans etc.
Par contre, je n'arrive pas à faire la même chose en VB6.
Pourriez vous m'indiquer comment créer un fichier, effacer l'intégralité
d'un fichier, et détruire un fichier!!!

rien que ça.

Merci par avance

Cordialement

Thierry

10 réponses

1 2 3
Avatar
Pierre Alexis [MVP]
Salut Zoury,

Je suis un peu d'accord avec les remarques de Thierry. Au plus on connait VB,
au plus on remarque que ses fonctions et contrôles intrinsèques sont à ch**r.
Et qu'utiliser l'équivalent API est bien plus stable et rapide. Mais comme le
dit Thierry, à quoi bon employer VB alors, autant passer au C/C++ !!! Rapelons
tout de même que VB est un language qui à la base a été créé pour développer
de manière simple des programmes, pas pour employer des API toutes les 10
lignes de codes...

Et pour répondre à la remarque de François sur les performances, si tu veux
vraiment un programme performant tu le fais pas en VB, mais en C/C++... Mais
remplacer toutes les fonctions de VB par leur équivalent API pour des
questions de performances, c'est vraiment un peu ridicule...

--
Pierre ALEXIS - MVP Visual Basic
Courriel & messenger :
FAQ Visual Basic : http://faq.vb.free.fr/
Avatar
Pierre Alexis [MVP]
Salut Zoury,

Tu as écrit :

Tu parles de son contenu? Le plus simple serait de supprimer le fichier en
question est d'en recréer un vide.. sauf que tu perderas les informations de
création du fichier original.. pour les conserver, tu peux utiliser les APIs
GetFileTime() et SetFileTime().. Il y a des exemples sur groups.google.com,
demande le si tu as besoin d'aide ou d'un exemple plus concret.



Heu et il faut restaurer tout le reste avec !! Les droits, les attributs, le
fait que le fichier est crypté ou non par windows, etc...

Pour supprimer le contenu d'un fichier, il suffit de l'ouvrir en Output...

--
Pierre ALEXIS - MVP Visual Basic
Courriel & messenger :
FAQ Visual Basic : http://faq.vb.free.fr/
Avatar
Zoury
Salut Pierre! :O)


Je suis un peu d'accord avec les remarques de Thierry. Au plus on connait


VB,
au plus on remarque que ses fonctions et contrôles intrinsèques sont à


ch**r.

Pas d'accord! Je dirais qu'elles/ils ne sont pas poussés(es). Ils offrent la
base, à toi de coder le reste..


Et qu'utiliser l'équivalent API est bien plus stable et rapide.



D'accord. Ce sont des fonctions optimisées et débuguées depuis belle lurette
pour la plupart.


Mais comme le dit Thierry, à quoi bon employer VB alors, autant passer au


C/C++ !!!

Le temps de développement n'est pas du tout comparable. Tu ferais une
application de gestion en C/C++? Il faut choisir les bons outils selon nos
besoin.


Rapelons tout de même que VB est un language qui à la base a été créé pour
développer de manière simple des programmes



J'suis d'accord.


pas pour employer des API toutes les 10 lignes de codes...



Pas d'accord. Qu'est-ce qu'il y a de mal à ça? L'instruction Declare est une
des instructions les puissantes de VB.. pourquoi ne pas en profiter.


Et pour répondre à la remarque de François sur les performances, si tu


veux
vraiment un programme performant tu le fais pas en VB, mais en C/C++...


Mais
remplacer toutes les fonctions de VB par leur équivalent API pour des
questions de performances, c'est vraiment un peu ridicule...



"vraiment un peu" :O)

Par expérience personnel, la différence peut-être plus que notable selon les
circonstances... VB est un language relativement puissant et performant
quand on sait bien l'employer.


--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/

Merci de poster les réponses au groupe afin d'en faire profiter à tous
Avatar
Zoury
Salut Pierre! :O)

Heu et il faut restaurer tout le reste avec !! Les droits, les attributs,


le
fait que le fichier est crypté ou non par windows, etc...



Très vrai!

Pour supprimer le contenu d'un fichier, il suffit de l'ouvrir en Output...



Bonne idée. :O)

--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/

Merci de poster les réponses au groupe afin d'en faire profiter à tous
Avatar
François Picalausa
Bonjour/soir,

Et pour répondre à la remarque de François sur les performances, si
tu veux vraiment un programme performant tu le fais pas en VB, mais
en C/C++... Mais remplacer toutes les fonctions de VB par leur
équivalent API pour des questions de performances, c'est vraiment un
peu ridicule...



Il était question d'utiliser Dir ou GetAttr... pas d'API là dedans... qu'est
ce qu'ils ont tous à voir des API partout? avant j'amais bien tout remplacer
par API voir comment on pouvait faire.. mais c'est clair que si il faut se
refarcir la centaine de déclarations pour un tout petit truc, autant coder
en C/C++. Autre possibilité, utiliser une typelib d'API qui permet un accès
moins difficile aux API et qui permettent surtout de ne pas devoir se
refarcir les 200 declares... et tout ça pour juste la mémoire des API
utilisée! Achetez.. Typelib! Euh.. nan, la pub, ça me réussit pas ;-)

Par contre, pourquoi utiliser des fonctions lentes de VB à la place de
fonctions rapides, toujours de VB, mis à part par volonté de ralentir le
code?

--
François Picalausa (MVP VB)
FAQ VB : http://faq.vb.free.fr
MSDN : http://msdn.microsoft.com


"Pierre Alexis [MVP]" a écrit dans le
message de news:
Salut Zoury,

Je suis un peu d'accord avec les remarques de Thierry. Au plus on
connait VB, au plus on remarque que ses fonctions et contrôles
intrinsèques sont à ch**r. Et qu'utiliser l'équivalent API est bien
plus stable et rapide. Mais comme le dit Thierry, à quoi bon employer
VB alors, autant passer au C/C++ !!! Rapelons tout de même que VB est
un language qui à la base a été créé pour développer de manière
simple des programmes, pas pour employer des API toutes les 10 lignes
de codes...

Et pour répondre à la remarque de François sur les performances, si
tu veux vraiment un programme performant tu le fais pas en VB, mais
en C/C++... Mais remplacer toutes les fonctions de VB par leur
équivalent API pour des questions de performances, c'est vraiment un
peu ridicule...


Avatar
Patrice Henrio
Je ne résiste pas au plaisir de me mêler à cette discussion sur les
performances du code, moi qui ai commencé la programmation en 1982 avec des
machines très lentes et un langage interprété.
Déjà la notion de performance n'est pas très clair : dans certains cas il
s'agit de place mémoire, dans d'autres de temps d'exécution, pour d'autres
cas enfin de réutilisation eu de cohérence.
Pour ce qui est de la place mémoire, dans la plupart de nos utilisations
nous disposons d'assez. Pour la rapidité, plus les ordinateurs tournent
vite, plus on leur rajoute des choses à faire. dans la plupart des cas, on
ne s'aperçoit même pas du gain de millièmes de secondes gagnés.
Par contre les langages de haut niveau ont été créés pour éviter d'avoir
tout à coder directement dans le processeur. Ainsi plus le langage est
élaboré, plus il sera facile de transférer ses idées dans celui-ci. Pour ce
qui est des API, je leur reconnais une très grande rapidité mais aussi un
manque de transparence : que se passe-t-il réellement ? Sans compter que la
documentation est succincte.
Enfin le mieux est encore que chacun teste et prenne ce qui lui convient.
"François Picalausa" a écrit dans le message de
news:%23yOlE%
Bonjour/soir,

> Et pour répondre à la remarque de François sur les performances, si
> tu veux vraiment un programme performant tu le fais pas en VB, mais
> en C/C++... Mais remplacer toutes les fonctions de VB par leur
> équivalent API pour des questions de performances, c'est vraiment un
> peu ridicule...

Il était question d'utiliser Dir ou GetAttr... pas d'API là dedans...


qu'est
ce qu'ils ont tous à voir des API partout? avant j'amais bien tout


remplacer
par API voir comment on pouvait faire.. mais c'est clair que si il faut se
refarcir la centaine de déclarations pour un tout petit truc, autant coder
en C/C++. Autre possibilité, utiliser une typelib d'API qui permet un


accès
moins difficile aux API et qui permettent surtout de ne pas devoir se
refarcir les 200 declares... et tout ça pour juste la mémoire des API
utilisée! Achetez.. Typelib! Euh.. nan, la pub, ça me réussit pas ;-)

Par contre, pourquoi utiliser des fonctions lentes de VB à la place de
fonctions rapides, toujours de VB, mis à part par volonté de ralentir le
code?

--
François Picalausa (MVP VB)
FAQ VB : http://faq.vb.free.fr
MSDN : http://msdn.microsoft.com


"Pierre Alexis [MVP]" a écrit dans le
message de news:
> Salut Zoury,
>
> Je suis un peu d'accord avec les remarques de Thierry. Au plus on
> connait VB, au plus on remarque que ses fonctions et contrôles
> intrinsèques sont à ch**r. Et qu'utiliser l'équivalent API est bien
> plus stable et rapide. Mais comme le dit Thierry, à quoi bon employer
> VB alors, autant passer au C/C++ !!! Rapelons tout de même que VB est
> un language qui à la base a été créé pour développer de manière
> simple des programmes, pas pour employer des API toutes les 10 lignes
> de codes...
>
> Et pour répondre à la remarque de François sur les performances, si
> tu veux vraiment un programme performant tu le fais pas en VB, mais
> en C/C++... Mais remplacer toutes les fonctions de VB par leur
> équivalent API pour des questions de performances, c'est vraiment un
> peu ridicule...




Avatar
Christophe
Bonjour,

Pour moi qui n'ai pas le temps de me mettre au C++, par ce que comme le dit
Zoury il faut une tonne d'heures pour developper et que programmeur c'est
pas mon métier, j'aime bien VB pour ça facilité de mise en oeuvre.
Mais pour un domaine spécifique comme la GDI, il me semble indispensable
d'utiliser les APIs.
Et pour la partie traitement d'image de mon code c'est pas une toutes les
dix lignes, c'est toutes les lignes.Par contre la partie interface
utilisateur et BD c'est du VB pur, et c'est rapide et efficace en terme de
developpement.

Une modeste contribution à votre débat d'experts.

Christophe Vergon

"Pierre Alexis [MVP]" a écrit dans le message de
news:
Salut Zoury,

Je suis un peu d'accord avec les remarques de Thierry. Au plus on connait


VB,
au plus on remarque que ses fonctions et contrôles intrinsèques sont à


ch**r.
Et qu'utiliser l'équivalent API est bien plus stable et rapide. Mais comme


le
dit Thierry, à quoi bon employer VB alors, autant passer au C/C++ !!!


Rapelons
tout de même que VB est un language qui à la base a été créé pour


développer
de manière simple des programmes, pas pour employer des API toutes les 10
lignes de codes...

Et pour répondre à la remarque de François sur les performances, si tu


veux
vraiment un programme performant tu le fais pas en VB, mais en C/C++...


Mais
remplacer toutes les fonctions de VB par leur équivalent API pour des
questions de performances, c'est vraiment un peu ridicule...

--
Pierre ALEXIS - MVP Visual Basic
Courriel & messenger :
FAQ Visual Basic : http://faq.vb.free.fr/




Avatar
surfeur75
Bonjour, que de palabres, pour supprimer j'ai plus court!!!
Est-ce important de savoir s'il existe, si on veut le supprimer, lol...

On Error Resume Next
Kill "nomfic"

--
@+, bye, Joe.
Pour m'écrire ng75AROBASEnoosPOINTfr
remplace AROBASE et POINT par leur vrai signe
Il l'a fait car il ne savait pas que c'était impossible, alea jacta est!


"thierry" a écrit dans le message de news:
bu3qkn$eor$
Bonjour,

lorsque l'on programme en C , on peut créer des fichiers , effacer ce


qu'il
y dedans etc.
Par contre, je n'arrive pas à faire la même chose en VB6.
Pourriez vous m'indiquer comment créer un fichier, effacer l'intégralité
d'un fichier, et détruire un fichier!!!

rien que ça.

Merci par avance

Cordialement

Thierry




Avatar
thierry
je vous remercie pour toutes vos réponses, et quand je voie la qualité de
certains codes, j'ai l'impression d'être sur une autre planète. mais bon
c'est en forgeant que l'on devient forgeron..
A + pour d'autres aventures..

Cordialement

Thierry

"thierry" a écrit dans le message de
news:bu3qkn$eor$
Bonjour,

lorsque l'on programme en C , on peut créer des fichiers , effacer ce


qu'il
y dedans etc.
Par contre, je n'arrive pas à faire la même chose en VB6.
Pourriez vous m'indiquer comment créer un fichier, effacer l'intégralité
d'un fichier, et détruire un fichier!!!

rien que ça.

Merci par avance

Cordialement

Thierry




Avatar
Thierry M.
Patrice Henrio écrivait:

nous disposons d'assez. Pour la rapidité, plus les ordinateurs tournent
vite, plus on leur rajoute des choses à faire. dans la plupart des cas, on
ne s'aperçoit même pas du gain de millièmes de secondes gagnés.



c'est juste ce que je voulais dire :)
avec les P 2Gigas et plus, on est loin des principes
d'optimisation du code ! à moins de faire dans le jeu !
(il y'en a ici qui font dans la simul sous VB ??? ah ah ah :))

moi perso, désolé, mais entre le millieme de sec gagné
et l'emmerdement des API, c'est choisi !

pour info, je savais programmer en Assembleur
ça m'a passé :)

chacun sa route, chacun son chemin :)

Thierry :
Les API, OK, j'en utilise, mais quand le language est trop
con pour ne pas tout prévoir ! et malheureusement VB l'est...
1 2 3