ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

sys(3) retourne un nom unique (en théorie), en pratique.... Sys3   



L'auteur

Francis Faure
France France
Membre Actif (personne physique)
# 0000000001
enregistré le 11/10/2004

http://www.wanagain.net
56 ans
Faure Francis
de la société Design Or Decline
Fiche personnelle


Note des membres
pas de note

Contributions > 01 - PRG : Programmation

sys(3) retourne un nom unique (en théorie), en pratique.... Sys3
# 0000000143
ajouté le 07/02/2005 17:05:18 et modifié le 07/02/2005
consulté 8555 fois
Niveau débutant

Version(s) Foxpro :
VFP 7.0
VFP 6.0
VFP 5.0
VFP 3.0
FPW 2.6

Description

La fonction sys(3) retourne un nom unique (en théorie),

Dans la doc fox :
Retourne un nom de fichier unique et valide qui peut être utilisé pour créer des fichiers temporaires.

en pratique.... deux Sys(3) consécutif sur une machine rapide, ont la même valeur,
cela doit être dû à un algorithme sur l'horloge....

Ci joint une fonctione Sys3() permettant de remplacer les appel sys(3) en sys3()...

çà marche avec fpw2.6 et vfp.

Cordialement

Francis

Code source :
Function sys3
  private v_r_sys3, v_s_sys3
  v_s_sys3 = sys(3)
  v_r_sys3 = sys(3)
  do while v_s_sys3 = v_r_sys3
    v_r_sys3 = sys(3)
  enddo
return v_r_sys3

Commentaires
le 07/02/2005, eddymaue a écrit :
Dans le temps y'a pas si longtemps que ça, j'utilisait ça
Procedure UniqueName(piUName)
Return Iif(Vartype(piUName)="L" .Or. Sys(3)= piUName ,UniqueName(Sys(3)),piUName)

Sur un ordi de 2 ou 3 ghz je me demande si ça fonctionne encore


www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2024.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3