Page 6 sur 12

Publié : mar. 20/sept./2005 21:37
par GG
Je suis en train de tester ta lib Droopy, très bien jusqu'à présent.
Question, j'utilise tes fonctions LDB_*. Manipulant plusieurs databases, il est fastidieux d'en fermer une, puis de rouvrir l'autre, etc... Est-il possible de créer une fonction de type usefile (lorsque en Purebasic tu ouvres plusieurs fichiers en même temps), qui s'appellerait par exemple LDB_Usedatabase, pour sélectionner une des databases simultanément ouvertes ?

Je ne sais pas si j'ai été assez clair dans mon explication...

Publié : mar. 20/sept./2005 21:49
par Droopy
En fait la DataBase est stockée dans une LinkedList.

Je ne connais pas de méthode pour créer des linkedList à la volée .

Désolé :oops:

Publié : mer. 21/sept./2005 10:14
par lionel_om
Je suis en train d'en programmer une (+fct de Tri et de recherche).
J'espère qu'elle vous plaira ! :lol:

En tout cas je la crée pour l'utiliser dans de futur projets donc elle sera générique (pourra stoquer des différentes infos : long, strings et structures).

Actuellement à trier une liste de 1000 éléments (longs ou Strings) en 100ms. Mais je vais rechercher un algo + optimisé.

Plus d'info bientot.

Publié : mer. 21/sept./2005 11:14
par Droopy
Cool 8)

Publié : lun. 26/sept./2005 22:06
par Droopy
Version 1.26 disponible 8)

Le changelog indique les modifs .

Publié : lun. 26/sept./2005 23:59
par Backup
cool ! :D

mais pourquoi faire 2 lien ? un pour la lib et l'autre pour le CHM ?

pourquoi pas tout grouper dans un zip ? 8O
surtout que de telecharger un *.EXE c'est pas possible pour tout le monde !
a cause des protections ! il y a beaucoup de risques a recuperer un exe !
car pour X raison on peut le lancer plus facilement !
un zip , faut d'abord desarchiver , ce qui fait que l'on peut mieux maitriser ce que l'on fait !
pis comme je le dit pour un exe certain system d'entreprise empecheron le telechargement d'un EXE direct !
un zip ça passe partout ! et ça se telecharge plus vite ! :D

Publié : mar. 27/sept./2005 7:57
par Droopy
Je vais y réfléchir, merci pour tes critiques constructives 8)

Publié : mar. 27/sept./2005 9:26
par lionel_om
En + l'exe contient le CHM !!!
:0: Droopy !!!
Le lien de l'aide est donc inutil... :wink:

Publié : mar. 27/sept./2005 20:19
par Droopy
C'est fait 8)

Publié : jeu. 29/sept./2005 8:14
par lionel_om
Droopy, tu pourrais pas ajouter ces deux fonctions là ? (tu change leur nom si tu veux, ms elles sont bien pratiques) :

Code : Tout sélectionner

Procedure.s EnleveExtension(file$)
  Protected extLen.l
  
  extLen = Len(GetExtensionPart(file$))
  If extLen
    ProcedureReturn Left(file$, Len(file$)-(extLen+1))
  Else
    ProcedureReturn file$
  EndIf
  
EndProcedure

; Zap les dossiers "." et ".."
Procedure NextDirectory()
  Protected FileType.b, FileName$

  FileType = NextDirectoryEntry()
  If FileType = 2
    FileName$ = DirectoryEntryName()
    If FileName$ = "." Or FileName$ = ".."
      ProcedureReturn(NextDirectory())
    EndIf
  EndIf
  ProcedureReturn(FileType)

EndProcedure

Publié : jeu. 29/sept./2005 18:32
par Droopy
Pour la 1° fonction j'avais justement prévu la même fonction que toi ! ( Transmission de pensée ? ) 8)

Code : Tout sélectionner

Procedure.s GetFilePartWithoutExtension(FullPath.s)
  FullPath=GetFilePart(FullPath)
  ProcedureReturn Left(FullPath, Len(FullPath)-1-Len(GetExtensionPart(FullPath))) 
EndProcedure

;/ Test
NbFiles=SearchFilesInit(GetSystemDirectory(),"*.txt")
Text.s=Str(NbFiles)+" files found"+#CRLF$+#CRLF$
Repeat
  File.s=SearchFilesGet()
  If File="" : Break : EndIf
  Text.s + GetFilePartWithoutExtension(File) + #CRLF$
ForEver
MessageRequester("*.TXT in SystemDirectory",Text)
Pas de problème pour l'ajout de la fonction NextDirectory dans la prochaine version .

Publié : jeu. 29/sept./2005 19:01
par Dr. Dri
Une petite remarque. Dans ta lib essaie d'optimiser tes fonctions. L'exemple de lionel pour l'extension est bien plus performant.

Non seulement il vérifie qu'une extension existe mais en plus il ne limite pas le résultat à la partie fichier.

Dri

Publié : jeu. 29/sept./2005 20:09
par Droopy
Bien vu, j'ai ajouté le test de l'extension.

Par contre je ne veux pas récupérer le chemin du fichier, je veux la même fonction que GetFilePart mais sans l'extension .

Publié : ven. 30/sept./2005 12:34
par lionel_om
Bah tu fais file$ = GetFilePart(file$)
Puis la suite du traitement.

Mais c'est pas forcément une bonne idée de tronquer le répertoire.
Si l'utilisateur veux ke le nom de fichier sans extension et sans le chemin d'accès, et bah il combine les deux fonctions... :wink:

Publié : ven. 30/sept./2005 19:32
par Good07
Bonsoir.

J'ai un petit problème avec ta Lib. Je viens de l'installer et dès que je lance PureBasic j'ai le message suivant:

Compiler Error: Duplicated library command:LdbAddField():(in libbrairies Ldb and Droopy) :(

Je pense que la correction ne doit pas être trop difficile.

Merci d'avance.