Selon les ordinateurs, Windows n'est pas forcémment installé dans le même répertoire, bien que très souvent, ce soit c:\windows. Or, il est toujours préférable d'adapter son programme afin qu'il fonctionne sur la majorité des ordinateurs. Pour résoudre ce problème, nous faisons appel à la fonction GetWindowsDirectory.
char RepertoireWindows_str[256];
GetWindowsDirectory(RepertoireWindows_str, sizeof(RepertoireWindows_str));
AnsiString RepertoireWindows = RepertoireWindows_str;
La fonction GetWindowsDirectory nécessite une chaîne C : char *. Nous déclarons donc cette chaîne, assez large pour contenir un chemin (256 caractères sont largement suffisant, le répertoire Windows étant généralement dans la racine). La fonction GetWindowsDirectory prend cette chaîne-tampon en premier argument et sa taille en second, d'où le code
sizeof(RepertoireWindows_str)
. A la ligne suivante, nous récupérons le contenu de cette chaîne dans une AnsiString classique.