Definitivamente no puede asumir que: Windows podría instalarse en una letra de unidad diferente o en un directorio diferente. En un trabajo anterior, PC Windows se instaló en D: \ WINNT, por ejemplo.
La respuesta corta es usar la llamada API GetSystemDirectory(), que devolverá la ruta que está buscando.
La respuesta más larga es preguntar: ¿realmente necesita saber esto? Si lo está usando para copiar archivos en el directorio de Windows, le sugiero que pregunte si realmente quiere hacer esto. No se recomienda copiar en el directorio de Windows, ya que puede estropear otras aplicaciones muy fácilmente. Si está utilizando la ruta para encontrar archivos DLL, ¿por qué no simplemente confía en el sistema operativo para encontrar el adecuado sin dar una ruta? Si está buscando fragmentos de los archivos del sistema operativo, considere: ¿eso va a funcionar en el futuro? En general, es mejor no buscar explícitamente en el directorio de Windows si desea que su programa funcione en futuras versiones de Windows.
Voto esta respuesta. El mío ha obtenido más votos de otros, pero definitivamente este es mucho más completo e informativo. Ohad42, considere marcar esta como la respuesta aceptada. – vmarquez
Gracias David, siento que me tomó tanto tiempo aceptar la respuesta. –