我有一个使用dll的原生VC++项目(不在项目中).现在,我必须将dll放在"Windows用来查找DLL的搜索路径" 链接中
但我不希望dll位于exectuable或current或windows或system目录中.
所以我唯一的选择就是添加%PATH%环境变量的路径.
还有其他方法吗?
是否有一种优雅的方式(添加到PATH)?我应该在安装时这样做吗?如果我这样做,我应该担心吗?
总结我发现的所有技术:
如果您使用托管项目作为启动项目(实际上是我的情况),请使用Enviroment类
string temp ="myFullDirectoryPathToDll"; string temp2 = Environment.GetEnvironmentVariable("PATH")+";" + temp; Environment.SetEnvironmentVariable("PATH",temp2);
这个,我认为MSDN应该强调的是,仅在此过程中更改环境变量PATH.
在VS中调试时,appPath没有'工作'使用properties-> debug-> environment和merge环境变量 链接
如果你使用原生:做显式链接 - 对于简单的事情来说似乎很重要,也许在部署链接上使用appPath registery密钥 ,没有人有经过测试验证的答案