我正在开发一个VS包,并且我需要实现的功能的一部分是将文件添加到当前打开的解决方案的解决方案项目中。如何以编程方式将文件添加到解决方案?
如果右键单击解决方案并选择添加>现有项目,这与手动执行的操作完全相同。然后在磁盘上选择一个文件。
我仔细看过DTE和DTE2接口,可以看到添加和操作项目的操作,但似乎没有任何添加单个文件的操作。
谢谢。
我正在开发一个VS包,并且我需要实现的功能的一部分是将文件添加到当前打开的解决方案的解决方案项目中。如何以编程方式将文件添加到解决方案?
如果右键单击解决方案并选择添加>现有项目,这与手动执行的操作完全相同。然后在磁盘上选择一个文件。
我仔细看过DTE和DTE2接口,可以看到添加和操作项目的操作,但似乎没有任何添加单个文件的操作。
谢谢。
好的,我意识到我可以只记录一个宏来捕获操作,然后检查VS宏IDE中的代码。
这样做的代码是。
DTE.ItemOperations.AddExistingItem(filePath);
要做到这一点,你需要访问项目的ProjectItems成员,并呼吁AddFromFile()
ProjectItem pi = project.ProjectItems.AddFromFile(filePath);
您需要AddFromFile
到ProjectItems
集合Project
http://msdn.microsoft.com/en-us/library/envdte.projectitems.addfromfile(v=vs.100).aspx
编辑:
添加到解决方案n,AddFromFile
针对Solution
如何在vstemplate中实际提供文件?可能吗? – tofutim 2013-12-11 10:36:53
@tofutim我不确定你的评论正在问什么。这个问题与VS模板没有任何关系。也许你需要开始自己的具体问题? – Martyn 2013-12-12 13:43:37