Vista и ProgramData

15
задан Marek Grzenkowicz 15 December 2015 в 21:39
поделиться

5 ответов

SHGetFolderPath () с CSIDL CSIDL_COMMON_APPDATA.

Read больше в http://msdn.microsoft.com/en-us/library/bb762181 (По сравнению с 85) .aspx

при необходимости в пути в пакетном файле можно также использовать %ALLUSERSPROFILE переменную среды %.

8
ответ дан 1 December 2019 в 03:35
поделиться

На самом деле SHGetFolderPath удерживается от использования.

SHGetKnownFolderPath должен использоваться вместо этого.

4
ответ дан 1 December 2019 в 03:35
поделиться

Существует большая сводка различных вариантов здесь: http://blogs.msdn.com/cjacks/archive/2008/02/05/where-should-i-write-program-data-instead-of-program-files.aspx

Где я должен записать данные программы вместо программных файлов?

Обновление кода распространенного приложения - это: "мое приложение раньше писало файлы в программные файлы. Было похоже на столь же хорошее место для помещения его как любой другой. Это уже имело название моего приложения на нем, и потому что мои пользователи были администраторами, это хорошо работало. Но теперь я вижу, что это не может быть столь же большим местом для засовывания вещей, как я когда-то думал, потому что с контролем учётных записей даже Администраторы, выполненные со стандартными подобными пользователю полномочиями большую часть времени. Так, куда я должен поместить свои файлы вместо этого?"

7
ответ дан 1 December 2019 в 03:35
поделиться

Можно использовать:

CString strPath;
::SHGetSpecialFolderPath(NULL, strPath.GetBuffer(1024), CSIDL_COMMON_APPDATA, FALSE);
1
ответ дан 1 December 2019 в 03:35
поделиться

См. статья Raymond Chen об этом конкретном вопросе .

Короче говоря Вы просите дыра в системе безопасности .

1
ответ дан 1 December 2019 в 03:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: