将DLL库引用添加到VSX中的项目

时间:2013-11-28 13:15:01

标签: c# reference code-generation vsx

我想通过代码创建一个新项目,并为我的项目添加一些dll引用。

这是我的代码

System.Type type = System.Type.GetTypeFromProgID("VisualStudio.DTE.9.0");
object obj = System.Activator.CreateInstance(type, true);
EnvDTE.DTE dte = (EnvDTE.DTE)obj;
Solution2 sln = (Solution2)dte.Solution;
sln.Create(@"C:\tmp", "TestSolution");
string templatePath = sln.GetProjectTemplate("WindowsApplication.zip", "CSharp");
sln.AddFromTemplate(templatePath, @"C:\tmp\Project", "TestProject", false);
Project proj = sln.Projects.Item(1);
VSProject2 vsproj = (VSProject2)proj.Object;
vsproj.References.Add(@"C:\testfile.dll");
vsproj.Refresh();
sln.SaveAs("TestSolution");

但是当我打开项目并查看“引用”时,没有添加任何Testfile.dll。我做错了什么?

2 个答案:

答案 0 :(得分:1)

您似乎需要save project

  

proj.Save();

保存解决方案之前。

我用msvs2010尝试过,所以我不确定msvs2008是否相同。

答案 1 :(得分:0)

试试这个:

 sln.Projects[0].References.Add(@"C:\testfile.dll");
相关问题