http://msdn.microsoft.com/en-us/library/dd374131(v=vs.85).aspx In C this depends on whether UNICODE is set or not. As long as we don't have such a switch LPTSTR shouldn't be declared.
Commits pushed to master at https://github.com/D-Programming-Language/druntime https://github.com/D-Programming-Language/druntime/commit/a9bbb65ab0e69cfc25da76cdc2828af3ba083fcb fix issue 8132 - LPTSTR always aliases to LPSTR - set version=UNICODE - make LPTSTR alias depend on version(UNICODE) - fix usage of LPTSTR in CreateSemaphoreA/OpenSemaphoreA https://github.com/D-Programming-Language/druntime/commit/4b59883ba4b4b4f9e80a9c9a26aa7b4dc412657b Merge pull request #227 from dawgfoto/fix8132 fix issue 8132 - LPTSTR always aliases to LPSTR