
Realized idea for DirectConnect networks
It is no secret that many cities have their own local area networks. Exchange in these networks most often occurs according to the DirectConnect principle and through the programs DC ++, StrongDC ++, FlyLinkDC ++, etc.
Search for files in these programs occurs in real time, i.e. only those users who are currently connected to the hub. So this search is not complete. Plus, the programs do not show what new files have appeared on the network since my last visit to the hub. And this is a real problem - you constantly have to run a search for “avi, mdf, pdf”, etc. to see what new films, games, books appeared ... In general, a headache :).
Under the cut, I offer a simple solution to these problems (so to speak quickly and forehead :)
Consider the principle of operation of one of the programs: FlyLinkDC ++
To see what files a particular user has, we download his List of files . This list is nothing more than regular XML in the bz2 format archive, and this happiness is copied to the folder “C: \ Program Files \ FlylinkDC ++ \ Settings \ FileLists \” (provided that the program was installed with the default settings). Accordingly, receiving file lists from all users, they all appear in the “FileLists” folder.
And then a technical matter:
1. Unpack the files
2. Parsim XML to the database (the TTH field must be unique).
3. We use it.
Because Since one field in the database is unique (the TTH field is a file hash), then we avoid duplicate files in the database.
Knowing the time of adding data to our database - it is easy to track the emergence of new files on the network.
The list of files is always available, even if a specific user is currently disconnected from the hub.
With his own clumsy hands, a program was written (archive 4 MB. Source + exe) that implements these actions. Everything is done quickly. Used Visual Basic .Net and as a base - SQLite.
Appearance:

Now there is no time to finish the program, so bringing it to mind is only welcome!
And do not forget to share the revision:!)
Search for files in these programs occurs in real time, i.e. only those users who are currently connected to the hub. So this search is not complete. Plus, the programs do not show what new files have appeared on the network since my last visit to the hub. And this is a real problem - you constantly have to run a search for “avi, mdf, pdf”, etc. to see what new films, games, books appeared ... In general, a headache :).
Under the cut, I offer a simple solution to these problems (so to speak quickly and forehead :)
Consider the principle of operation of one of the programs: FlyLinkDC ++
To see what files a particular user has, we download his List of files . This list is nothing more than regular XML in the bz2 format archive, and this happiness is copied to the folder “C: \ Program Files \ FlylinkDC ++ \ Settings \ FileLists \” (provided that the program was installed with the default settings). Accordingly, receiving file lists from all users, they all appear in the “FileLists” folder.
And then a technical matter:
1. Unpack the files
2. Parsim XML to the database (the TTH field must be unique).
3. We use it.
Because Since one field in the database is unique (the TTH field is a file hash), then we avoid duplicate files in the database.
Knowing the time of adding data to our database - it is easy to track the emergence of new files on the network.
The list of files is always available, even if a specific user is currently disconnected from the hub.
With his own clumsy hands, a program was written (archive 4 MB. Source + exe) that implements these actions. Everything is done quickly. Used Visual Basic .Net and as a base - SQLite.
Appearance:

Now there is no time to finish the program, so bringing it to mind is only welcome!
And do not forget to share the revision:!)