Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CRÉATION DE FICHIERS TEMPORAIRES DANS LE DOSSIER TEMPORAIRE COURANT.(API)


Information sur la source

Description

Ayant eu besoin de travailler avec des fichiers temporaires, je suis tombé par hasard sur 2 fonctions API que je ne connaissais pas :
     GetTempPath() qui renvoie le dossier temporaire courant
     GetTempFileName() qui crée (et vérifie l'unicité) un fichier temporaire
Celà m'ayant considérablement simplifier mon travail, je me dis que ça peut servir à d'autres.
J'ai joint un prg. de test qui crée 10 fic. temp.

 

Source

  • //=======================================
  • //on cherche le dossier temporaire courant
  • //dans l'ordre : variable d'environnement TMP
  • // : variable d'environnement TEMP (si pas TMP)
  • // : dossier courant sinon
  • function DossierTMP: string;
  • var bdir: array[0..255] of char;
  • begin
  • FillChar(bdir,sizeof(bdir),0);
  • GetTempPath(sizeof(bdir),bdir);
  • Result:= bdir
  • end;
  • //=======================================
  • //crée dans dir, un fichier unique de la forme ppphhhh.tmp
  • //avec ppp sont les 3 premiers caractères de prefixe
  • // et hhhh est une chaine héxadécimale
  • //rem : si _n = 0 le fichier est créé (et son unicité est vérifiée)
  • // sinon le nom est construit mais l'unicité n'est pas vérifiée
  • // et le fichier n'est pas créé
  • //en sortie : nom est le nom complet (ou 'ERREUR')
  • // : numero est la valeur de la chaine héxa
  • function CreerFichierTMP(dir,prefixe: string; var nom: string; var numero: integer): boolean;
  • const _n = 0;
  • var buf: array[0..255] of char;
  • begin
  • FillChar(buf,sizeof(buf),0);
  • numero:= GetTempFileName(PChar(dir),PChar(prefixe),_n,buf);
  • Result:= (0 <> numero);
  • if Result
  • then nom:= buf
  • else nom:= 'ERREUR';
  • end;
  • //=======================================
//=======================================
//on cherche le dossier temporaire courant
//dans l'ordre : variable d'environnement TMP
//             : variable d'environnement TEMP (si pas TMP)
//             : dossier courant sinon
function DossierTMP: string;
  var bdir: array[0..255] of char;
begin
  FillChar(bdir,sizeof(bdir),0);
  GetTempPath(sizeof(bdir),bdir);
  Result:= bdir
end;
//=======================================
//crée dans dir, un fichier unique de la forme ppphhhh.tmp
//avec ppp sont les 3 premiers caractères de prefixe
//  et hhhh est une chaine héxadécimale
//rem : si _n = 0 le fichier est créé (et son unicité est vérifiée)
//      sinon le nom est construit mais l'unicité n'est pas vérifiée
//                                      et le fichier n'est pas créé
//en sortie : nom est le nom complet (ou 'ERREUR')
//          : numero est la valeur de la chaine héxa
function CreerFichierTMP(dir,prefixe: string; var nom: string; var numero: integer): boolean;
  const _n = 0;
  var buf: array[0..255] of char;
begin
  FillChar(buf,sizeof(buf),0);
  numero:= GetTempFileName(PChar(dir),PChar(prefixe),_n,buf);
  Result:= (0 <> numero);
  if Result
  then nom:= buf
  else nom:= 'ERREUR';
end;
//=======================================

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

Aucun commentaire pour le moment.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

intercepter un enregistrement de fichier et dossier [ par lnicos ] lu, je cherche une fonction de l'api ou autre qui me permettrait d'intercepter dans mon programme chaque enregistrement de fichier et dossier préalabl Listage de Fichier! [ par MAsterC ] Salut....Bon j'essaye de faire un listage de fichier dans un dossier dans un TListBox mais je n'y arrive pas ! :(Alors voici mon exemples....On a un d Compression dossier Zlib [ par lupra ] Bonjour,Je voulais savoir si il est possible de compresser plusieur fichiers ou un dossier en un seul fichier zip avec la Zlib ou autre??j ai deja reg Problème fichier INI [ par TiDaN326 ] Bonjour à tous :)Bon je me sert de la fonction pour créer/lire des fichiers INI... jusque là, tout va bien, mais comment je fait pour créer le fichier Comment créer correctement un fichier de ressource ? [ par rguef ] Je cherche à créer un fichier de ressource externe. Je n'y arrive plus ! Windows me met comme message "L'application ou la DLL 'XXXXXXXXXXXX' n'est pa Créer une visionneuse de fichier quickreport... [ par orelien ] Bonjour,J'aimerais créer une visionneuse de fichier quickreport.Le fichier exe se présentera comme "adobe acrobat" et je souhaiterais que le fichier " Fichier Ressource [ par cmdgermain ] J'ai créer un composant bouton en Delphi, tout fonctionne parfaitement sauf que j'ai stoké les Bitmap du bouton dans un fichier de ressources .RES. J' fichier db sans db ? [ par barbulille ] voila, j'ai besoin de créer une base de données mais mon application fonctionnera sous linux & windows donc je voudrais créer cette base de données sa Suppression ligne dans un textfile [ par coframi ] Existe il une autre méthode pour supprimer une ligne dans un fichier texte que celle ci: - recopie des lignes voulues dans un fichier temporaire. fichier .res [ par cricri_b34 ] j'ai créer trois image bmp que j'aimerais mettre dans un fichier .res , mais le pb c que lorsque j'essaie d'ouvrir un image on me dit que celle ci me


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,421 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.