Hoi RGJ,
Bedankt voor de link m.b.t. cdrom insert/remove —)
Ik zal eerst een apart programma maken om het werkend te krijgen. Later in foonsearchd zetten. Als je een cdrom er in doet dan een aparte thead opstarten die de cd/dvd gaat scannen zonder sleep tussen de files. Nadat je alle files hebt gescand ga je ze sorteren en een totale hash berekenen. Heb je deze hash niet dan de files van de cd/dvd kopiëren naar andere tabel in de database. Je krijgt dan op den duur al je cd/dvd in de database.
In later instantie zal het programma ook audio cd/dvd’s moeten kunnen lezen. Lijkt mij dat de tracks gelijksoortige aan files gaat behandelen.
Ik heb het filesystem programma met 5 seconden ‘sleep’ tussen de files gedaan en dan duurt het ongeveer 3 dagen dat je alle files bij langs bent geweest. Je ziet dan erg mooi welke nieuwe files er zijn aangemaakt en welke files verwijderd zijn. Als je de hash van virussen zou hebben, heb je mogelijk ook alternatieve virusscanner.
Ik denk aan dat optimaal is om naast de 3 dagen cyclus het openen van files/directories te gaan loggen in mysql. Je moet niet zoals Norton virus scanner direct bij het open van een file hem weer gaan openen om de hash te gaan berekenen. Beter is om het delayed te doen. Bij voorbeeld elk uur alle geopende files van de afgelopen uur te gaan scannen. Eerst nog een sorteer procedure te gaan uitvoeren. Heb je een file 300 keer veranderd in het afgelopen uur dan maar 1 keer testen op de hash.
Vorige week met tree’s bezig geweest. Ik zag de icons niet die ik er onder had gehangen.
Ik was vergeten om EnsureVisible(ret2); aan te roepen. Ik begin de tree structuur een beetje te begrijpen.
Deze week niet al te veel tijd.
Om een stukje verder te komen ga ik volgende week met het filesystem programma meerdere pc’s in 1 database laten dumpen. Je kan dan testen of het GUI programma de files goed laat zien van de verschillende pc’s. N.B. Eerste vorm van database synchronisatie is het zetten van alle records in 1 database.
Foonsearchd (gedeelte uit gnunet) test ik al best een lange tijd. Werkt best wel redelijk stabiel. De SQL message berichten moet er nog in geprogrammeerd worden. RGJ, Stel jij stelt een SQL berichtje aan mijn server “SELECT * FROM FILE WHERE FILENAME = ‘ICONS.JAR’;”. Je krijgt dan een SQL berichtje terug met een blob veld waar de file inzit met het resultaat. Het resultaat kunnen meerdere records zijn.
Je toetst bijvoorbeeld een “mailtje” in foonsearch in om enkele files van mij te krijgen. Het wordt dan verstuurt aan mij in SQL berichtje met blob veld met de inhoud van het “mailtje”. Ik stuur een “mailtje” aan jouw terug met bijvoorbeeld 4 “attached” files. Foonsearchd stuurt dan 1 messagepack bericht met 1 SQL berichtje met mijn tekst in een blob veld en 4 SQL berichtjes met de hash van mijn op te sturen files. Jouw foonsearchd leest de messagepack weer. Kan het eerst wel moeten unzippen en moeten decrypten. Hierna zet hij mijn “mailje” in jouw inbox tabel. Hierna kijkt hij of hij de attached files hashes al lokaal heeft. Zo niet dan vraagt jouw foonsearchd in een SQL berichtje aan mijn foonsearchd demon om de files alsnog op te sturen. Je voorkomt dan dat je onnodig files over de lijn aan het trekken bent.
Ik ga filesystem, mfc gui (foonsearch) en transport mechanisme (foonsearchd) een beetje gelijktijdig aanpakken. Als deze drie programma’s samen werken dan is het neveneffect dat foondump online ook gaat werken. N.B. filesystem zal op den duur onderdeel van foonsearchd worden.
De vriendelijke groet Jan Marco