2010-01-22 2 views
0

Приложение, с которым я работаю, записывает в папку User \ Application Data на XP и папку AppData \ Roaming в Vista. На одной из машин Vista папка AppData \ Roaming отсутствует. В результате некоторые функции приложения не работают. Перед тем, как вы столкнулись с таким сценарием? Я не уверен, что делать в этом случае. Могу ли я создать папку AppData \ Roaming?AppData Роуминг Папка отсутствует в Vista

Благодаря jbsp72

ответ

0

Если вы жестко прописывать эти пути, вы должны использовать переменные окружения вместо.

На рассматриваемой машине откройте командную строку (WinKey + R> cmd> Enter) и введите echo %appdata% и нажмите Enter. Он должен вернуть путь данных приложения для текущего пользователя.

... о, и использовать переменные окружения, заменить, например c:\Program Files\MyProgram\data с %programfiles%\MyProgram\data

Есть много списков их доступными, на которых в http://vistaonwindows.com/environment_variables.html

+0

Я не жесткого кодирования пути , Я читаю их из реестра (если я не ошибаюсь, SHGetFolder() делает это). Путь, который я получаю, это AppData \ Roaming, но папка отсутствует в системе. – jbsp72

+0

... но реестр сообщает вашему приложению, что это папка для использования? Существуют ли другие пользователи в этой системе и есть ли они AppData \ Roaming в своих каталогах ': \ Users'? Как насчет пользователя по умолчанию? – Jay

+0

Имеет ли Vista альтернативные соединения, такие как Win 7, под ': \ Users \ \ Application Data'? Если да, можете ли вы, скажем, «: \ Users \ \ Application Data \ Microsoft'? – Jay

Смежные вопросы