В следующем тексте я предполагаю, что вы используете Visual Studio 2008.
Если вы хотите напрямую изменить пути, вы должны изменить файл % LOCALAPPDATA% \ Microsoft \ VisualStudio \ 9.0 \ VCComponents.dat .
Нет необходимости записывать ключи в реестр, потому что каталоги сохраняются здесь.
Используйте этот код NSIS для добавления каталога C: \ ВАШ ДИРЕКТОР ЗДЕСЬ в него:
Function Write
SetShellvarContext current
ReadIniStr $0 "$LOCALAPPDATA\Microsoft\VisualStudio\9.0\VCComponents.dat" "VC\VC_OBJECTS_PLATFORM_INFO\Win32\Directories" "Include Dirs"
WriteIniStr "$LOCALAPPDATA\Microsoft\VisualStudio\9.0\VCComponents.dat" "VC\VC_OBJECTS_PLATFORM_INFO\Win32\Directories" "Include Dirs" "$0;C:\YOUR DIRECTORY HERE"
IfErrors Error NoError
Error:
MessageBox MB_OK "Cound not write!"
NoError:
FunctionEnd
Будьте осторожны с этим, потому что есть много вариантов.
Ини обычно выглядит так:
[ПЛАТФОРМА]
Каталоги = Dir1; dir2; $ (VSVariable) путь
Приведенный выше пример записывает каталог в Win32 и Включая файлы . Посмотрите на картинку, чтобы понять это.
Для Visual Studio 2010 формат был изменен (на XML):
http://blogs.msdn.com/b/vsproject/archive/2009/07/07/vc-directories.aspx