Français
DLL

Addfiles.Dll: Dossier- et Verzeichnisnamen rekursiv +Features

 
- page 1 -


Addfiles.Dll

Dossier- et Verzeichnisnamen rekursiv + Features.

<!---->

Télécharger/ dans den Warenkorb
1,50 €
inkl. MwSt.
aucun Versandgebühr

declare h&
cls
h&=createlistbox(%hwnd,»,10,10,400,200)
chdir "C:\lol"
external("addfiles.dll","AddFiles","*.*",h&,1)
external("addfiles.dll","AddDirs","*.*",h&,1)
external("addfiles.dll","AddFilesEx","*.*",h&,1)

tandis que 1

    waitinput

Wend


AddFiles(masque$,ListboxHandle&,Recursion%)
AddDirs(masque$,ListboxHandle&,Recursion%)
AddFilesEx(masque$,ListboxHandle&,Recursion%)// liefert Dateiname*Taille*Zeit
SetProc(procAddr(myProc,1))
SetMsg(msgID)

Ebenso peux on avec SetProc(procAddr(myProc,1)) une XProfan-Funktion pour qui Enumeration einsetzen, et optionnel per SetMsg(0) sur Messages verzichten:

avec cela peux cela Programme z.B. Montrer tätigen au cours de gesucht wird - important wenns la fois länger dauert.

14 kB1,50 €
inkl. MwSt.
aucun Versandgebühr
item:DE-1404
Bezeichnung:Addfiles.Dll
Version:1.5
Kurzbeschreibung: Addfiles avec tollen Erweiterungen.
Hochgeladen:05.02.2009
Download
16 kB
Hochgeladen:23.12.2015
Downloadcounter289
Download
 
12.09.2006  
 



 
- page 2 -


qui DLL sommes de Seiten qui Rekursion et Dossier/Verzeichnisanzahl jedenfalls aucun Grenzen gesetzt.

qui DLL utilise qui FindFirst-Api et legt qui Ergebnisse dans qui per Handle angegebene Listbox. Listboxen sommes imho dans qui Nombre de Einträge beschränkt. ici pourrait on un Dummyhandle angeben welches qui ListBox-Message abfängt et réellement qui données anders speichert - so könntest Du 1faire... ou bien qui ListBox simple subClassen um abzufangen.
 
01.10.2008  
 




Frank
Abbing

Listboxen sommes imho dans qui Nombre de Einträge beschränkt.


sous WinXP pas, soweit je aus eigener Erfahrung parler peux. Jedenfalls soweit qui grenier reicht.
 
04.10.2008  
 




Stefan
M.
Caillet
allô iF,
Hab là toujours un kleines Problem avec Deiner Addfiles.dll (ou bien qui ListBox, qui qui Dossier aufnimmt?)!
Folgender Code fonctionne problemlos si je ihn sur cela LW E: (ist mon 2. - qui données-Partition meines Laptops) schicke. Mach je cela avec LW C: , wird qui 1.LBox anscheinend pleine, qui le contenu mais pas angezeigt, sonden qui LBox irgendwann simple entfernt, et einigezeit später cela PROG simple geschlossen. quoi dabei seltsam ist, ist qui Tatsache, dass cela Prog. sur meinem PC korrekt fonctionne. je empfinde es cependant comme très important, dass cela Prog. aussi sur meinem LapTop parfait fonctionne. là cela Problem währen ADDDIR auftritt, hoffe je, dass Du den faute trouver peux. qui Nombre de Dossier sollte eigentlich pas cela Problem son, car sur dem PC findet volonté sur LX C: sur 3300 ORDNER trouvé - sur dem LapTop devrait es eigentlich moins son. Getestet sous Win XP , XPROFAN 10.0a + 11.1
KompilierenMarqueSéparation
Suche bestimmten Ordner auf allen vohandenen und bereiten Laufwerken
Def GetLogicalDrives(0) ! KERNEL32, GetLogicalDrives
Def GetDriveType(1) ! KERNEL32, GetDriveTypeA
Def GetVolumeInformation(8) !KERNEL32,GetVolumeInformationA
Def SetErrorMode(1) !KERNEL32,SetErrorMode
Def ext.addfiles(3) !addfiles.dll, AddFiles
DEF ext.addfilesex(3) !addfiles.dll, AddFilesEx
Def ext.adddirs(3) !addfiles.dll, AddDirs
declare drives&, lw$,Drives$[31],N%,DRV$
declare H&,H0&,H1&,H2&,I%,j%,font&,dll&,mode&,SUCHORDNER$,SUCHFILE$
declare buffer#, dirbuf#, H$
dim buffer#, 4
font&=Create(Font,tahoma,14,0,1,0,0)
dll&=usedll(addfiles.dll)

Proc CheckDrive  Test auf Laufwerk bereit (Disk, CD/DVD eingelegt ?)

    Parameters drive$
    Declare result&,olderrormode&,dw1&,dw2&
    Let olderrormode&=SetErrorMode(1)
    Let drive$=Upper$(Mid$(drive$,1,1))+:
    Dim dirbuf#,Len(drive$)+2
    String dirbuf#,0=drive$
    Let result&=GetVolumeInformation(dirbuf#,0,0,0,Addr(dw1&),Addr(dw2&),0,0)
    SetErrorMode(olderrormode&)
    Dispose dirbuf#
    Return result&

EndProc

Proc ReadyDrives$

    Declare DRV$
    drives& = GetLogicalDrives()

    whileloop 0, 31

        Prüfen ob Laufsbuchstabe vergeben

        if TestBit(drives&, &loop)

            lw$ = Chr$(&loop + 65) + :
            string buffer#, 0 = lw$
            Drives$[n%] = LW$ : Inc N%

        endif

    endwhile

    dispose buffer#
    Dec N%
    DRV$ =

    WhileLoop 0, N%

        Case CheckDrive(Drives$[&loop])=1 : DRV$ = DRV$ + Drives$[&loop] + |

    EndWhile

    N% = len(DRV$)/4
    DRV$=DRV$+Right$(0+STR$(N%),2)
    Return DRV$

EndProc

cls
H& = Create(ListBox,%HWND,1,10,20,200,150)
H0& = Create(ListBox,%HWND,1,216,20,200,150)
H1& = Create(ListBox,%HWND,1,422,20,200,150)
H2& = Create(ListBox,%HWND,1,10,190,612,200) : SetFont H2&,Font&
DRV$=ReadyDrives$()
SuchOrdner$=DESITRONBKPFILES
SuchOrdner$=Upper$(SuchOrdner$)
SuchFile$=SMC_adress.bkp
Suchfile$=Upper$(Suchfile$)

WhileLoop 1,1  1. Laufwerk C: (A: ohne Disk, B: nicht vorhanden)   Val(Right$(DRV$,2))

    Clearlist H& : Clearlist H0& : Clearlist H1&
    print Druchsuche Laufwerk +SubStr$(DRV$,&loop,|);
    ChDir SubStr$(DRV$,&loop,|)+
    ext.adddirs(*.*,H&,1)
    N% = Getcount(H&)
    print   - > +STR$(N%)+ Ordner vorhanden, wovon ;
    waitinput  Nur zum Test, um zu sehen, ob erste LBOX korr. gefüllt wird!
    N% = 0

    WhileLoop GetCount(H&)

        If INSTR(SUCHORDNER$,UPPER$(GetString$(H&,N%)))

            CaseNot INSTR(SUCHORDNER$+,UPPER$(GetString$(H&,N%))): Addstring(H0&,GetString$(H&,N%))

        EndIf

        inc N%

    EndWhile

    N% = Getcount(H0&)
    Print Str$(N%)+ +SuchOrdner$

    If GetCount(H0&)

        N% = 0

        WhileLoop GetCount(H0&)

            ChDir GetString$(H0&,N%)
            ext.addfiles(*.*,H1&,1)
            inc N%

        Endwhile

    Endif

    Print Dieser enthält +Str$(GetCount(H1&))+Dateien ;

    If GetCount(H1&)

        N% = 0

        WhileLoop GetCount(H1&)

            Case InStr(SuchFile$,Upper$(GetString$(H1&,N%))) : AddString(H2&,GetString$(H1&,N%))
            INC N%

        EndWhile

        Print wovon +STR$(GetCount(H2&))+ +Suchfile$

    EndIf

    print

EndWhile

If GetCount(H2&)

    H$=GetString$(H2&,0)
    Print SubStr$(H$,-1,)

endif

Print fertig
WAITINPUT
deleteobject Font&

merci.
Gruss Stefan
 
Ich habe grosses Glück, weil ich Mitmenschen helfen darf.
Entwicklungsumgebung:
XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit
PC: P4/3GHz , 2GB RAM , 1700GB HD
Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD
06.01.2009  
 



Teste la fois s'il te plaît, si le ListBox avec create(list,...) erzeugt wurde, si cela Problem ensuite encore auftritt.

qui DLL sommes im Grunde le nombre de Fichiers et Ordnern sowie qui Rekursion völlig égal.
 
06.01.2009  
 




Stefan
M.
Caillet
allô iF,
hilft malheureusement aussi pas.
Festgestellt hab je encore Folgendes: Au cours de qui cherche beträgt qui maximale Prozessorlast entre 25% et 52% - quoi je comme OK erachte. qui Speicherbedarf steigt jusqu'à zum la date wohin cela la fenêtre geschlossen wird sur 126510 KB, alors knapp 126 MB! sur dem PC liegt qui Speicherbedarf chez max. 20123 Kb alors knapp 20 MB! cet 126MB finde je quelque chose hoch? quoi meinst Du?
merci.
Gruss Stefan
 
Ich habe grosses Glück, weil ich Mitmenschen helfen darf.
Entwicklungsumgebung:
XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit
PC: P4/3GHz , 2GB RAM , 1700GB HD
Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD
06.01.2009  
 



Hab encore ne...aucune plan, je pourrait frühstens demain une Debug-Version posten si Du cet ensuite einmal testen vouloir.

qui DLL sendet Message 384 = LB_ADDSTRING à cela übergebene Handle avec Adresse pour den grenier des Stringinhaltes im lParam.

Du könntest aussi testen et un Static erzeugen et subclassen sur Message 384 (LB_ADDSTRING) - den ankommenden lParam z.B. per wm_setText à hWnd weiterleiten et im Titel vom hWnd voyons, quel Eintrag là möglicherweise Probleme pouvoir.
 
06.01.2009  
 




Stefan
M.
Caillet
allô iF,
merci pour Votre Mühe. oui, bien sûr voudrais je volontiers par Tests mithelfen den faute trop lokalisieren. seulement fürchte je, dass je selbst en supplément Votre Aider dans forme qui en supplément nécessaire SubclassProc pour cela Static. nie gemacht avec dem Subclassing malheureusement simple encore pas sur elle. peux Du mir s'il te plaît qui benötigte Erweiterung/Changement à meinem Code montrer. je weiss zwar par Votre Aider im vorigen Posting, quoi Du meinst, peux es mais mangels Sattelfestigkeit im Subclassing , pas dans funktionirenden Code umsetzen.
Währe Dir très pour Votre Aider reconnaissant.
merci.
Gruss Stefan
 
Ich habe grosses Glück, weil ich Mitmenschen helfen darf.
Entwicklungsumgebung:
XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit
PC: P4/3GHz , 2GB RAM , 1700GB HD
Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD
06.01.2009  
 



Du kennst cela... Du würdest volontiers... mais la hâte ca. 500 la fenêtre offen qui sur Eingaben attendre...

je exposition juste la fois...
 
06.01.2009  
 




Stefan
M.
Caillet
alors, iF, j'ai nochmals quelque chose getestet et experimentiert. Hab aussi versucht, cela avec dem Subclassing zum courir trop kriegen, allerdings sans erfolg - es était Je ne possible, une Message de Deiner dll abzufangen - scheint à meiner Unfähigkeit dans qui Subclassprogrammierung trop liegen. cependant était es mir moglich, LW C: sur dem LapTop avec dem XProfan-Befehl Addfiles *.* trop durhsuchen. là mais Addfiles cela bekannte Problem avec dem Staküberlauf hat, (sous XProfan 11.1 immernoch?? - steht jedenfalls encore so dans qui Aider trop XProfan11), voudrais je lieber sur Votre dll zurückgreifen. un plus Vorteil Deiner dll ist naturellement cela AddDir - quoi je ici nämlich eigentlich brauche, là je eigentlich erstmal den ORDNER BKPFILES chercher muss - cependant sur sämtlichen vorhandenen et lesebereiten Laufwerken.
la hâte Du déjà ne concept (nen Code) avec dem je cela avec dem Subclassing testen peux, um herauszufinden, wohin es hakt?
merci.
Gruss Stefan
 
Ich habe grosses Glück, weil ich Mitmenschen helfen darf.
Entwicklungsumgebung:
XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit
PC: P4/3GHz , 2GB RAM , 1700GB HD
Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD
07.01.2009  
 



@Stefan
aus dem Updatetext de XPatch111.Zip


AddFiles *. gewaltig beschleunigt et funktioniert maintenant aussi pour grand Festplatten
sans Stacküberlauf
 
07.01.2009  
 




Stefan
M.
Caillet
@Horst, oui maintenant wohin Du es sagst, peux mich dunkel tour erinnern, la fois quelque chose comme gelesen trop avons.
Im Vorteil ist, qui sich cela gelesene aussi merken peux.
merci.
Gruss Stefan
 
Ich habe grosses Glück, weil ich Mitmenschen helfen darf.
Entwicklungsumgebung:
XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit
PC: P4/3GHz , 2GB RAM , 1700GB HD
Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD
07.01.2009  
 




Michael
Wodrich
FindFirst - FindNext - FindClose
là donnais es un Speicherleck-Problem, si on pas bien aufpaßt.
Aussi: si FindFirst aucun Fichiers dans einem Verzeichnis findet, ensuite darf sur keinen le cas un FindClose folgen.

Zum Laptop:

je hatte une Vue-Laptop zum Testen. quelques Programme liefen pas so comment sur meinem Heimrechner. qui Grund étions versteckte Systemverzeichnisse de Microsoft dans einem le cas et un komprimiertes Verzeichnis dans einem anderen le cas.

qui Verzeichnis-Namen sais je maintenant pas plus, es étions mais 2 qui avec Recycling trop 1faire hatten et eines pour qui Systemwiederherstellung.

peut-être aider cet Infos oui plus.

belle Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
07.01.2009  
 




Zur DLL


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

94.975 Views

Untitledvor 0 min.
H.Brill29.10.2024
R.Schneider31.08.2024
Erhard Wirth14.06.2024
Member 862464103.06.2024
plus...

Themeninformationen



Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie