After two days of trying to resolve this issue.
VS 2012: All good (just disabled IIS)
VS 2013: 0x80004005: Unspecified error
VS 2015: 0x80004005: Unspecified error
IIS Express via command line: Error cannot find "My documents\IIS Express\config\applicationhost.config"
Solution:
Copied applicationhost.config AND redirection.config from %programfiles%\IIS Express\config\templates\PersonalWebServer\ into the "IIS Express\config" folder under My Documents.
Make sure you copy the redirection.config file, it WILL NOT warn you about this, just fail with the obscure 0x80004005 error. Had to monitor file I/O to track it down.
Also open applicationhost.config in notepad and make sure that the %IIS_BIN%\AppServer\empty_wwwroot folder is WRITEABLE, most likely this folder is under "%programfiles%\IIS Express" and thus not writeable by default.
Also quite possible you need to set %IIS_BIN% yourself to "%programfiles%\IIS Express".
So:
Make sure %IIS_BIN% is set
Make sure you have BOTH config files copied into the config folder
Make sure the wwwroot is writeable
- Make sure the "empty_wwwroot" referenced in the .config matches the x86 / x64 setting in Visual Studio (VS uses x86 by default, can be changed to x64 under Project settings => Web Projects)