【发布时间】:2011-11-17 17:29:06
【问题描述】:
我正在使用 C# 和 VS2010 自动化打开 VS2010 解决方案。我打开这样的解决方案:
Type type = Type.GetTypeFromProgID("VisualStudio.DTE.10.0", true);
Object comObject = Activator.CreateInstance(type);
...
sol.Open(solution_full_path);
我遇到的问题是,当我创建VisualStudio.DTE.10.0 对象的实例时,它会从winlogon.exe 启动devenv.exe 进程,它看到的环境与我的应用程序完全不同。一些环境变量对于解析项目中设置的一些路径很重要。
有什么方法可以影响devenv.exe 进程的环境变量吗?有什么方法可以使用 VS2010 自动化接口注入环境/属性?
【问题讨论】:
-
这个问题可能需要更多的上下文;你在这一切中的最终目标是什么?回归测试?批量修改解决方案文件?不同的技术适用于不同的情况和类型的环境影响。也就是说,您可能需要查看 Machine.config,它可以提供适用于在特定机器上创建的所有实例的 Visual Studio 设置。
标签: c# visual-studio visual-studio-2010 com automation