I'm a C/C++/C# developer and mostly Windows user.
While I'm happy with Mercurial, there are some pitfalls under Windows and especially in the working environment I'm using it. I tried to address them with some extensions:
TimestampExtension - saves and restores timestamps for user-defined files (.hgtimestamp) by means of command (hg timestamp) and hooks (preprecommit and postupdate).
CasestopExtension - stops commiting case-folding collisions by means of a precommit hook.
MakewritableExtension - interactively removes read-only flag from accessed files.