EnvDTE - добавление папок, добавление проектов
От: Хнык Россия  
Дата: 20.08.09 15:20
Оценка:
При попытке добавить папку в проект получаю ошибку, что данная операция не поддерживается. При всём этом, на кодепроджекте выложен код, который заявляется как рабочий:

//path is a list of folders from the root of the project.
public void AddFolder(string NewFolder, List<string> path) {
ProjectItems pi = project.ProjectItems;
for (int i = 0; i < path.Count; i++) {
pi = pi.Item(path[i]).ProjectItems;
}
pi.AddFolder(NewFolder,
EnvDTE.Constants.vsProjectItemKindPhysicalFolder);
}

Этот код работает только для папок имеющихся на диске и включённых в решение. Виртуальные папки и папки не включённые в решение не поддерживаются.
Как это можно обойти?

Второй вопрос, как в папки в решении добавить проект? Следующий код добавляет проект в решение, но уровня указать не даёт.

_solution.AddFromTemplate(templatePath, _projectFullPath, _projectName, false);

Добавление проекта в папку указанным ниже путём невозможно — разрешено только для членов проекта.

project.ProjectItems.AddFromTemplate(templatePath, _projectFullPath + _projectName);

Помогите кто чем сможет
Мну думает. Значит. Ага.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.