有谁知道如何让我的nsis安装程序更新visual studio包含我的sdk路径的路径?
答案 0 :(得分:1)
创建批处理文件(.bat),在其中设置PATH变量(将SDK目录添加到PATH) - 这可能取决于您使用的Windows版本。 Visual Studio会自动搜索PATH。
然后简单地使用nsExec::ExecToStack
以安静模式运行此bat文件。
答案 1 :(得分:1)
在下一篇文章中,我假设您使用的是Visual Studio 2008。
如果要直接更改路径,则必须修改文件%LOCALAPPDATA%\ Microsoft \ VisualStudio \ 9.0 \ VCComponents.dat 。
无需将密钥写入注册表,因为目录保存在此处。
使用此NSIS代码将目录 C:\ YOUR DIRECTORY HERE 添加到其中:
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
要小心,因为有很多选择。 Ini通常看起来像这样:
[PLATFORM]
目录= Dir1中; Dir2中; $(VSVariable)路径
上面的示例将目录写入 Win32 和包含文件。看图了解它。
对于Visual Studio 2010,格式已更改(更改为XML): http://blogs.msdn.com/b/vsproject/archive/2009/07/07/vc-directories.aspx
答案 2 :(得分:0)
NSIS没有对VS的任何特定支持,但您可以使用ReadRegStr and WriteRegStr编辑任何注册表设置