Use variadic templates to replace swprintf.
Microsoft's treatment of %s/%S made it non-portable