Существует способ. Если вы используете настольную версию MS Project (Pro или Standard), то единственным вариантом, который у вас есть, является использование автоматизации OLE.
С помощью OLE Automation вы получите ссылку на экземпляр класса Application, который является ключевым классом в каждом приложении MS Office. Из приложения вы можете получить список открытых проектов с использованием коллекции Application.Projects
или даже получить текущий проект, используя Application.ActiveProject
.
Как только у вас есть ссылка на проект, вы можете получить доступ ко всем задачам проекта с использованием коллекции Project.Tasks
. (Список всех коллекций начинается с 1)
Большинство полей задач, таких как имя или дату начала доступны через свойства задачи: Task.Name = "something"
или Task.StartDate = "1/1/2001"
Во всяком случае вот ссылка: msdn.microsoft.com
Другой Если у вас есть Project Server, и вы хотите сделать все быстрее. В этом случае вы должны использовать PSI (Project Server Interface) - сбор веб-сервисов, которые предоставляют вам доступ к большинству функций Project Server.
MSDN имеет отличные статьи с образцами, как работать с проектами с использованием PSI, и вот ссылка: MSDN about PSI. Вы можете искать по ссылке, чтобы найти дополнительные статьи о других услугах, доступных через PSI.
спасибо за ответ. У вас есть пример кода .. :) – user1855575
Да, я делаю. Но какую технологию вы планируете использовать и образец того, что вы ожидаете увидеть? Вы знаете, что я не хочу публиковать здесь сотни строк кода, чтобы охватить все возможные случаи :) – melan
C# .net или vb.net сделают .. – user1855575