Итак, у меня есть 32-битная программа, которая должна проверить, существуют ли файлы. Однако местоположения (которые могут быть как из ярлыков, так и из реестра) часто используют строки среды. Я использую API ExpandEnvironmentStrings для их расширения, а затем проверяю, существует ли файл. Однако, поскольку это 32-разрядное приложение (примечание эмуляция строк окружения ), в некоторых случаях пути расширяются до неправильных местоположений. Поскольку я не знаю, являются ли указанные мной пути 32-битными или 64-битными, одно простое решение - просто расширить соответствующие строки среды (ProgramFiles и CommonProgramFiles), используя как 64-битные, так и 32-битные местоположения вручную. Тем не менее, это кажется немного хакерским. Есть ли лучший способ?