VisualSVN Server provides an exe called VisualSVNServerHooks which has some command line configurable hooks but as best I can tell there's only a single pre-commit for checking the case sensitivity of file names and a single post-commit for sending an email notification. This seems like a bit of a wasted opportunity; does anyone know if there are any other hooks supported by the tool? Surely even a basic mandatory message hook? Obviously you can still source hook scripts independently of VisualSVN but it's always nice when there's an out of the box option.
That's it out-of-the-box, but the point of hooks are that you can write your own to do whatever you like. I guess it'd be nice to have a few more 'common' ones such as preventing empty log messages, preventing certain file name/extensions to be committed, etc.
A lot of hooks are written in perl, so I'd recommend sticking with that. Perl is easy to get installed, get strawberry perl, then extract just perl.exe and the perl.dll, you only need the rest of it if you're doing more complex things.
You can find a set of common hooks on the subversion site.
Currently VisualSVNServerHooks.exe has only most popular Subversion hooks. (You can see all supported options using VisualSVNServerHooks --help command)
I recommend you to send feature request to VisualSVN Team describing of hooks that you needed: http://www.visualsvn.com/support/feedback