Where does uTorrent save the file skipped/priority settings?

From what I can see with BEncode Editor the selection doesn't appear to be stored in the resume.dat, settings.dat, nor torrent file itself.

It could have been in the .part or .ut! files, but with a new unstarted download those files don't exist yet and still the selection is saved.

I'm working on a small tool dealing with resume.dat content, but I'd like to find info on the file selection as well.

PS If the information is stored in an unknown binary somewhere, but it is clear that it's there, that would be valuable information as well.

  • A possible settings hook would be the registry tree entry for utorrent or it's unique application id. – Gigamegs Jan 17 '12 at 7:05

I can't say for sure which file the information is stored in (I would have suggested resume.dat if you hadn't excluded it already), but a quick run with Process Monitor showed a lot of promise.

edit: In response to your comment, I assume you haven't worked with Process Monitor before. So let me give a little detail about what I did.

First of all, start Process Monitor. Then start µTorrent and perform a change on the priority of a file (or whatever change you want to know more details about). Then close µTorrent.
You will now have captured thousands of events in Process Monitor.
Try to find an instance of uTorrent in the list, right-click it and select "Include uTorrent.exe". This will create a new filter, which will hide every event not generated by uTorrent.exe.

You could now proceed to hide certain actions. For example, if you right-click some "TCP Send" or "UDP Receive" events, you can select to hide those (be aware that the column under which you perform the right-click has an effect on the contents of your context menu).

Creating those filters will allow you to quickly drill down to the action you're interested in.

I, personally, was left with a few CreateFile calls to the µTorrent related files in my roaming profile and several access actions to Internet Explorer caches (which is due to the web related functionality in µTorrent I assumed).

I would assume you have far deeper knowledge of what you're expecting to see and what you're interested in, but I'm sure Process Monitor will reveal the information you're looking for.

| improve this answer | |
  • Interesting, care to share the juicy stuff? – mtone Jan 27 '12 at 21:40
  • The bounty - better use it than loose it. I haven't had the chance to look into it yet, but I this will likely prove very useful. Thanks. – mtone Feb 2 '12 at 2:23
  • @mtone If you want me to go into more detail (possibly at a later time), I will :) – Der Hochstapler Feb 2 '12 at 10:02

I was mistaken, after finding nothing of use in the process monitor, I compared resume.dats after changing a priority and noticed it is indeed saved in the resume.dat file, under the PRIO key (binary data).

There's as many bytes as there are files, and the order match the default order in uTorrent (which I'm assuming is the order the files appear in the .torrent file). For each byte, the hexadecimal value can be:

  • 04: Low priority
  • 08: Normal
  • 0C: High Priority
  • 00: Do not download

Edit: Confirmed: A byte mask containing indicating which files have what priority, each byte representing one file. The order of the bytes is the same as the order found in the .torrent file.

Yeah... now it was easy to find that post!

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.