dslreports logo

    «« DSL Hurdles Share Tool


how-to block ads

5.1 Features

: Unknown user
: Unknown OP
: Active mode DC++ type user
: Active mode DC++ type OP
: Unknown passive mode user
: Unknown passive mode OP
: Passive mode DC++ type user
: Passive mode DC++ type OP

Bricks: User may not connectable (passive) (note, this means surely not connectable in NMDC hubs and might be connectable on ADC hubs)

Blue: DC++ type user (not blue does not mean not DC++ type, this is detected when the user tries to connect to you or when you try to connect to him. This function works on NMDC hubs only.)

DC++ Changelog Related Entries:
0.760: New icons (thanks radox)
0.4032: Caseless icon optimization (thanks garg), New icon with alpha channels for XP
0.400: New icons in window menu (thanks garg)
0.307: Fixed an issue with icon transparencies (thanks garg)
0.302: Added a small menu to the tray icon (thanks orkblutt)
0.300: Own icon always set to blue (DC++) (thanks atomicjo)
0.233: Fixed a small bug with disappearing tray icon (thanks vladimir marko)
0.232: Added an icon for the finished downloads to the toolbar (thanks todd pederzani), The main icon now contains a 48x48 icon as well (thanks todd pederzani)
0.21: The search window now uses non-colored icons
0.177: Fixed the wrong transfer icon bug, Fixed a tray icon bug (thanks andreas kronquist), Tray icon is now redisplayed if explorer crashes, Added a few icons to the search list, Added an icon for the download queue (thanks zc)
0.173: Fixed win95 missing explorer icons bug
0.12: New icons and colors for the user interface (Thanx mongomaster...)
0.11: DC++ will now detect other DC++ users as soon as a connection attempt is made...look out for blue icons...=)
0.10: Added basic icons that distinguish op's from normal users

by USR56K See Profile edited by eMTee See Profile
last modified: 2010-10-31 05:29:22

All of these may be typed in the main chat or in a private message window. For updated list of available commands please check the DC++ built-in Help or visit: »dcplusplus.sourceforge.net/webhe···nds.html

/away <message> Specifies a message to auto-respond in PM's while you're AFK (there's a default message so you don't need to specify one)
/back Turn away message off
/clear Clears the main chat windows
/close Close current window
/connection Displays external IP address and port DC++ is using
/dc++ Gives a comment about DC++ and shows the URL where you can get it
/favorite or /fav Add hub to favorites list
/favshowjoins Shows join/part of favorite users
/g <search phrase> Search Google
/getlist <user> Command to get users list from private chat
/help Short help message
/imdb <search phrase> Search IMDB
/join <hub address> Joins specified hub
/log Enables/disables logging
/pm <username> Opens a private message window to the user
/rebuild Rebuilds user share
/refresh Refreshes list of shared files
/removefavorite Removes current hub from favorites
/search <string> Searches for <string>
/showjoins Toggles joins/parts messages for the current hub
/slots <#> Changes number of slots to <#>
/ts Switches timestamps in chat windows on and off
/u <url> Opens <url> in default browser
/userlist Show/hide userlist

by USR56K See Profile edited by eMTee See Profile
last modified: 2010-10-31 05:42:26

The search spy shows the most popular things that people search for and some other statistics. The first column is the word / TTH hash they've searched for. The second column is number of times this word has been searched for against your DC++ client. The third is the last user who searched for the word / TTH hash. The fourth is the time.

The statistics are reset every time you close the spy window. The status bar at the bottom also shows the total number of searches while the spy was open and the average number of searches per second.

Note that the Search Spy is removed from DC++ in version 0.800 in favor of the Dev Plugin.


DC++ Change Log Related Entries:
0.800: Remove the search spy in favor of the dev plugin - works on ADC too (poy)
0.670: Added option to filter TTH results in search spy (thanks, joakim tosteberg); small spy frame fix (thanks, garg). 
0.666: [bug 87] TTH's are now correctly searched for in search spy (thanks, trem); added spy frame column saving (thanks, garg)
0.4034:  Added last search time to search spy (thanks, ullner)
0.177:  Added a search hit counter to the search spy
0.173:  Added some stuff to the search spy -- useless features are the best =)
0.163:  Added search spy window with counter

by USR56K See Profile edited by eMTee See Profile
last modified: 2012-11-06 12:36:57

For this feature to work, you'll need to have it enabled. File -> Settings -> Advanced -> Automatically search for alternative download locations.

Basically, the same algorithm as "search for alternates" is used. Since DC++ 0.670, autosearching will use the root hash instead of the file name for its search. After the search is sent, any result returned that has exactly the same TTH is added as a source.

DC++ Change Log Related Entries:
0.800: Do not automatch queue for bad/removed sources (emtee)
0.708: Automatch of search results always on
0.685: Search result automatching waits with match until file list is downloaded if auto-matching enabled; Added customizable maximum user count when autosearching
0.670: Autosearch and automatch queue is now done by tth only (!) (thanks, garg). Automatch search done by tth only, should make things slightly faster. Search for alternates automatically uses tth if available (thanks, garg).
0.4033: Removed autosearch string -- it's not used any more; fixed a bug with autosearch repeating the same search needlessly (this should result in fewer autosearches, good for the hubs)
0.4032: Fixed issue with autosearch not getting filelists; fixed an issue with autosearch by tth not being done
0.402: Automatic search matching is now done exclusively by TTH for those items that have a TTH root and by exact filename for those that don't; matching by name removed for queue items with a TTH root (for autosearches); autosearch is done by TTH for queue items that have a root; fixed a rare deadlock when autosearching
0.307: Added option to match autosearch filenames exactly to further avoid the wrong file being downloaded (default on)
0.306: Changed autosearch so that it only searches if less than 5 sources are online -- this should stop galloping filelist downloads as well
0.305: Added option to automatically download filelist and match it on autosearch match -- this will dramatically speed up autosearching, lessening the strain on the hubs as less searches have to be done.
0.304: Fixed a bug in autosearch when using auto search strings (thanks, ilkka sepp�l�)
0.302: Updates to the autosearch feature
0.26: Search for alternates now sets file type as well (and should work correctly with sizes...)
0.24: Doubled interval between autosearches (2 minutes now, and 60 between each research of the same file) -- should ease the bandwidth load on busy hubs
0.23: Automatic search now searches with type if possible (to ease the load on clients)
0.18: More changes to the autosearch -- it should now be more random and therefore yield better results; removed sources are no longed automatically re-added by the autosearch feature
0.177: Made autosearch more effective (much less hub bandwidth usage...)
0.173: Improved the autosearch algorithm a little bit; fixed search for alternates bug

by USR56K See Profile edited by eMTee See Profile
last modified: 2012-11-06 12:47:12

By doing nothing!

DC++ automatically does basic search spam protection for you. Keep in mind that sometimes when DC++ detects a search spam, it might be because the hub is overloaded and sends searches in big lumps, making the flood trigger react as too many searches arrive at once. If more than 5 searches are received from the same user within 7 seconds, DC++ will send out this warning. Also, if a thread in DC++ hangs and consumes full CPU usage (like opening a really large filelist), it might also trigger the search spam notice.


DC++ Change Log Related Entries:
0.670: Improved search timer to avoid spamming hub (thanks, naga)
0.666: Fixed MyINFO spam when hashing 
0.174:  Search spammers are now ignored for 2 full minutes before they're given responses again

by USR56K See Profile edited by JMGullett See Profile
last modified: 2007-02-12 14:01:33

Before downloading starts, DC++ creates a file of the expected target size with unspecified content in the unfinished downloads folder to avoid fragmentation.

Fragmentation occurs when several downloads are running at the same time, and small bits of data are written to different files continuously - causing the data to be scattered around on different locations on the drive. Anti-fragmentation will reserve space on the hard drive, thus putting all the file's data in the same physical space on the hard drive.

Fragmented hard drives become slow, because the drive needs to jump around to collect the file's data. Running windows' defrag software can "fix" fragmented data.

Anti-fragmentation function is mandatory and cannot be disabled since DC++ version 0.706. Make sure you always have enough free space in the drive where your unfinished downloads folder resides or you can easily get error messages when large files start to download.

by USR56K See Profile edited by eMTee See Profile
last modified: 2010-10-31 06:00:51

There are 3 extra slots (apart from those you specified in settings) that will be used for uploading files under 64KiB and for uploading your filelist, no matter the size. Operators in the hub can download mini-files and filelists even if those 3 extra slots are full. In DC++ versions later than 0.671, the mini-slot size is configurable for anything larger than 64 KiB.

This is the reason that you can download some people's filelists, but when you try to download a different (larger) file, you could get the "No slots available" message. All recent DC++ clients should allow the filelist to be downloaded. If you receive "No slots available" or "connection closed" right away, it's very likely the user is slot blocking. Report them to a hub operator.


DC++ Change Log Related Entries:
0.68: [NMDC] Mini-slots are no longer given to old DC++ clients (<0.304)
0.671: Added possibility to set mini-slot size (thanks, ullner)
0.402: Op's that use a client that supports mini-slots always get a mini-slot (for small files / xml file lists), regardless of how many mini-slots are already taken
0.304: Added "Supports Mini-slots" for other clients to profit from DC++'s free small files and filelist free slots (thanks, sed)

by USR56K See Profile edited by JMGullett See Profile
last modified: 2007-02-12 14:12:25


Tiger Tree Hashing (TTH) is used to verify the integrity of large chunks of data. The data is split into small pieces which are individually hashed, then hashed together until one root hash is formed. A TTH looks something like:4NIABZVGR4HOTNRPOMH2IRIJQSJYKFHEEIQUJWY.  Detailed information can be found here.  DC++ 0.400 introduced mandatory TTH. Once DC++ hashes all of your share (yes, this will take a while), it will only hash new files. The hashing thread in DC++ is set to low priority, so it shouldn't interfere too badly. 

There are several benefits of file hashing:

  • No longer does one need to pay attention to the name of the file when looking for alternative sources.  If the files are the same, they will have the same hash and can thus be chosen as an alternative source.  Just because two files are the exact same size does not mean they are the same bitwise!
  • Magnet Links.  Implemented in DC++ 0.4032.  More information in this FAQ.
  • Segmented (aka multisource) downloading.  Currently implemented in almost all maintained DC clients, it is now the default and safe way for downloading files from multiple sources.  File corruption is checked on-the-fly after a chunk has been downloaded (using TTH leaves) so in case of corruption, only the corrupted parts will be redownloaded not the whole file.


Tips to Speed up Hashing:

  1. If you have Serial ATA (SATA) hard disk drive 

    Many SATA controllers offer selectable modes of operation: legacy Parallel ATA (IDE) emulation, standard AHCI mode, or vendor-specific RAID mode. Make sure your SATA controller is set to Advanced Host Controller Interface (AHCI) or RAID mode. It can be set in the system BIOS. These modes offer a faster and lot more flexible feature set for the controller to communicate with the disk device while using dramatically less resources. For Windows XP you need drivers from your motherboard/chipset manufacturer to be able to use the SATA controller in AHCI mode. In Vista/7 the operating system will recognize the controller but in most cases it'll find a 'Standard AHCI controller' only. To be able to push out the maximum from your SATA controller its highly recommended to install the latest drivers available from the motherboard or (preferably) the chipset manufacturer. Read more in the Upgrade drivers section below.

    Intel SATA controller with proper drivers installed in the Device Manager

  2. If you have IDE hard disk drive 

  3. Use an 80 pin IDE cable.  
    Make sure your hard drive (HDD) has an 80 pin cable so it can use Ultra Direct Memory Access (UDMA) 66/100 speeds. A 40 pin IDE cable will restrict the HDD to a max speed of UDMA33.  Any computer purchased in the new millenium should have an 80 pin cable.  If your HDD uses a Serial ATA connection, you don't have to worry about the cable. Below is what an 80 pin IDE cable looks like.

    This is a comparison of an 80 pin cable vs a 40 pin cable.

  4. Enable UDMA 66/100 in Windows. 

    Windows 2000/XP/2003/Vista/7:  Go to the Control Panels -> System -> Hardware Tab -> Device Manager.  Get properties on each IDE channel and change the transfer mode to DMA if available.  You will need to restart for the change to take effect.

    After the computer has restarted, go back and check what the Current Transfer Mode is. Below is a table of theoretical speeds that correspond with the different drive speed settings.  Windows will automatically set the mode to the highest possible.
    Ultra DMA Mode Maximum Transfer Rate (MB/s) Defining Standard   PIO Mode Maximum Transfer Rate (MB/s) Defining Standard
    Multiword 1 13.3 ATA-2   Mode 0 3.3 ATA
    Multiword 2 16.7 ATA-2   Mode 1 5.2 ATA
    Mode 0 16.7 ATA1 / ATAPI-1   Mode 2 8.3 ATA
    Mode 1 25 ATA2 / ATAPI-2   Mode 3 11.1 ATA-2
    Mode 2 33.3 ATA3 / ATAPI-3   Mode 4 16.7 ATA-2
    Mode 3 44.4 ATA4 / ATAPI-4        
    Mode 4 66.7 ATA5 / ATAPI-5        
    Mode 5 100 ATA6 / ATAPI-6        
    Mode 6 133 ATA7 / ATAPI-7        

    If your HDD is in a PIO mode, then the act of simply reading the HDD is CPU intensive and will severely hinder your hashing speeds in DC++!

    By now, most users should have their HDD(s) in an UDMA mode.  If yours refuses to do so, then one must check the HDD controller in the BIOS of the motherboard; consult the manual on how to check that UDMA is enabled.  Rarely, another location a user might need to check is the internal HDD settings.  This can only be accessed by a special program obtained from the manufacturer of your HDD; consult their documentation on how to check this.

    One can use a free program like HD Tach to benchmark the HDD(s) and compare it against dozens of others.  If you have high CPU usage or a low average speed in your test result, you will experience slow hashing in DC++. 


    Windows 95/98/ME:  From the Control Panel, open "System," then click the "Device Manager" tab. Open the icon for "Disk drives," and then highlight the drive you are interested in. Click "Properties," and then the "Settings" tab. Among the other settings you should find a "DMA" check box, which should be checked. If it is not, try checking it to enable DMA support. If you then reboot and the check box does not stay checked, this probably means your system does not support Ultra DMA and most likely is in PIO mode.

  • If you have external hard disk drive 

    There are 3 common interfaces avaliable for external hard drives to connect to computers: USB, FireWare (IEEE 1394) and eSATA. While the USB interface is the most popular, its performance is the worst for large data throughput. If you're about to buy an external hard disk its wise to examine your computer before if it has external FireWire or eSATA connectors. Choosing these interfaces over USB (especially eSATA) you will experience dramatic speedup and responsiveness overall. External disks are usually slower than internal ones as they designed to work under more extreme circumstances than internal ones.

    For external drives with eSATA connection you must follow the same advices written for internal SATA drives above. For FireWire connected ones you can't do any optimizaton - the device is connected through a standard interface which is automatically recognized and configured by any operating system made in the new millenium. For optimal usage of drives with USB connection you should have the USB drivers properly installed (they usually came with the chipset drivers, read below). Also you must make sure the drive is connected to an USB 2.0 port, not to a legacy one (newer computers don't have legacy ports anymore). Avoid using USB hubs connecting the drive, it may cause performance problems as well.

    To avoid constant rehashing of your share in the external drive you must make sure that when connected, the drive always gets the same drive letter from Windows. To see how to set constant drive letter for a drive follow: »support.microsoft.com/default.as···&sd=tech

  • Upgrade Drivers

    Another source of speed problems is old IDE / SATA / chipset drivers.  Go to the website of your motherboard's or chipset manufacturer and download the latest chipset and/or IDE drivers.  If you have an OEM computer (Dell, Compaq, HP, Sony, Gateway, etc), then go to their website to look for the appropriate driver update.  If you own a custom computer with a mainstream motherboard (Asus, Abit, MSI, Gigabyte, etc), then check their website for the appropriate driver update.  If you own a custom computer, then you might be able to use the drivers directly from the manufacturer of the motherboard's chipset.  The main chipset makers are: Intel, ATi/AMD, Via, nVidia, SiS and Ali/Uli.  To find out what chipset and motherboard is inside your computer, you can use a free tool such as CPU-Z.

  • Defragment

    As advanced as hard drives have become, one item they are not very good at is housekeeping, or maybe that should be drive keeping. When files are created, deleted or modified, they will almost certainly become fragmented. Fragmented simply means the file is not stored in one place in its entirety, or what computer folks like to call a contiguous location. Different parts of the file are scattered across the hard disk in noncontiguous pieces. The more fragmented files there are on a drive, the more performance and reliability suffer as the drive heads have to search for all the pieces in different locations. The Disk Defragmenter Utility is designed to reorganize noncontiguous files into contiguous files and optimize their placement on the hard drive for increased reliability and performance.1

    All versions of Windows came with some sort of disk defragmenter and can be accessed by going to:  Start | All Programs | Accessories | System Tools | Disk Defragmenter.   The defragmenter under Windows 95/98/ME is quite picky and often restarts itself if another program uses the system. For this reason, it's recommended that you use a third party tool.  The defragmenter for Windows 2000/XP/2003 is not affected by this problem.  Some popular third party tools are: Diskeeper, PerfectDisk and O&O Defrag.

  • Disable CPU Intensive Programs

    There are many programs that can eat up spare CPU time.   This can result in DC++ taking longer to hash files in your share.  If you use a screen saver, disable it; it may take a lot of CPU time away from DC++.  If you use a distributed computing program (SETI, Protein folding, Key cracking, etc), disable it while DC++ is initially hashing your share.  With DC++ closed, take a look at how much CPU time is being used (Win9x/ME users use Process Explorer, Win2K/XP/Vista/7 use Task Manager [Ctr+Alt+Del | Task Manager]).  If the CPU usage is above 10%, find out which offending program(s) need to be closed.



    Q: DC++ hangs when hashing
    A: This is most likely caused by a corrupt file system. Windows 9x/ME users need to run Checkdisk (Programs | Accessories | System Tools | Checkdisk).  Windows 2000/XP/Vista/7 need to run chkdsk (Start |  Run | cmd /k chkdsk c: /f).  You'll need to do this on each drive letter.

    Q: Why is DC++ using 100% of my CPU?
    A: DC++ is most likely hashing your files. Look in the bottom left corner of the DC++ window.  You should see the files' names change as it finishes hashing each one.  If it says File list refresh finished for an extended period of time and DC++ is still using 100% of the CPU, then it's likely that DC++ is crashing.  Kill the application and restart it.

    Q: Why is DC++ hashing my files?
    A: Reread the top of this FAQ.



    DC++ Change Log Related Entries:
    0.760: Solve file list refresh & hashing sync issues (thanks ben); Stop hashing on shutdown (thanks steven sheehy); Hashing can be paused (bigmuscle, emtee, poy); Fix crash when hashing files on non-Windows systems (thanks razzloss)
    0.709: Fixed TigerHash regression on big-endian architectures (steven sheehy)
    0.708: Add fast hash option
    0.698: Added fasthash for unix (thanks steven sheehy)
    0.692: Tiger hash supports big endian and 64-bit architectures (thanks tobias nygren); Max hash speed fixed when fast hashing method is not used (thanks steven sheehy); Fixed a crash bug when hash data cannot be saved
    0.68: Removed support for old hash index files (pre-0.670); Improved hashing error reporting; Fixed hash database rebuild
    0.670:  Redid some of the hash storage code -- should be slightly more efficient;  Hash index format change;  Improved efficiency for small files (<=64KiB) in the hash storage
    0.666:  Slight memory save for hash database;  Fixed MyINFO spam when hashing
    0.4034:  Fixed a few issues with files not being hashed correctly (thanks, garg)
    0.4033:  Fixed a TTH hash speed bug (hashing should be much faster now);  Added hash progress dialog -- hashing is run at a higher priority when dialog is shown
    0.4032:  DC++ will only share files that HAVE BEEN HASHED
    0.402:  Hash speed tweaks -- check if it's any better
    0.400:  Hashing is now mandatory
    0.307:  Added file hashing -- turn it off in advanced settings (experimental)

    by USR56K See Profile edited by eMTee See Profile
    last modified: 2012-11-06 12:58:34

    A magnet link is an open URI-scheme and supporting practices/code for enabling seamless integration between websites and locally-running utilities, such as file management tools or peer-to-peer clients. 

    Magnet links have been implemented in DC++ 0.4032.  With this version of DC++, it will register, by default, to handle any magnet: links you click on in web pages. If you click on one of these links, DC++ will pop up and ask you if you want to search the DC network (or hubs you're connected to, at least) for this hash.

    You can create your own magnets in the search frame, file list window and download queue by a new contextual menu choice -- just right click on the file you want a magnet for, and select Copy magnet link to clipboard.  Since magnet links are an open standard for all (peer-to-peer) applications, there are hash types in some magnets that DC++ cannot handle. It can only handle magnets that contain a tiger tree hash.

    An example link looks like:magnet:?xt=urn:tree:tiger:UXNWMYERN37HJNXB7V6KDJKZXMFBIQAGMDMYDBY&dn=DCPlusPlus-0.4032.exe.

    Note: if you experience error messages about magnet links in the System log when you start DC++, it means that DC++ is unable to register magnet link handler to itself. This signs that your DC++ has no appropriate access rights to the Windows registry.

    From DC++ version 0.800 you can add external Magnet links to DC++ using the File -> Quick Connect menu item.

    Originally submitted by GargoyleMT


    DC++ Change Log Related Entries:
    0.800: Allow Magnet links to be pasted in the "Quick connect" box (poy); Fix a crash when parsing messages with Magnet links (poy)
    0.780: Add magnet keyword search (thanks flow84)
    0.762: Magnet links are now produced with a size (xl) param
    0.760: Register in HKCU instead of HKLM to avoid UAC warnings; ditch magnet.exe (poy)
    0.708: Better magnet error message
    0.703: Magnet dialog fixed (thanks poy)
    0.671: Magnet registration fix (thanks, ullner and farcry)
    0.667:  Fixed magnet registration issue (thanks, garg)
    0.4032:  Added bitzi.com lookup and magnet link copy (thanks, garg);  Added (limited support for) magnet link handling (thanks, garg);  Magnet handler included in installer (thanks, garg and magnethandler author)

    Feedback received on this FAQ entry:
    • Is there a way to turn off the magnet links association entirely?

      2014-03-14 13:47:46

    by USR56K See Profile edited by eMTee See Profile
    last modified: 2012-11-06 14:16:55