VSProjectEvents.BuildManagerEvents - свойство
Обновлен: Ноябрь 2007
Возвращает объект BuildManagerEvents, предоставляющий доступ к событиям BuildManager.
Пространство имен: VSLangProj
Сборка: VSLangProj (в VSLangProj.dll)
Синтаксис
'Декларация
ReadOnly Property BuildManagerEvents As BuildManagerEvents
'Применение
Dim instance As VSProjectEvents
Dim value As BuildManagerEvents
value = instance.BuildManagerEvents
BuildManagerEvents BuildManagerEvents { get; }
property BuildManagerEvents^ BuildManagerEvents {
BuildManagerEvents^ get ();
}
function get BuildManagerEvents () : BuildManagerEvents
Значение свойства
Тип: VSLangProj.BuildManagerEvents
Возвращает объект BuildManagerEvents.
Заметки
События BuildManager применяются для отслеживания изменений элементов проекта, связанных с настраиваемыми инструментами. Идентификатор DesignTimeOutputDirty указывает, что элемент проекта был добавлен или изменен. Идентификатор DesignTimeOutputDeleted указывает, что элемент проекта был удален. Дополнительные сведения см. в разделе BuildManager.
Примеры
В данном примере показано подключение метода обработки событий к событиям DesignTimeOutputDeleted и DesignTimeOutputDirty для конкретного проекта с помощью объекта Events.
' Macro Editor
' Connects events in a Visual Basic or Visual C# project.
Imports VSLangProj
Sub ConnectEvents()
Dim proj As Project = DTE.Solution.Projects.Item(1)
Dim vsproj As VSProject = CType(proj.Object, VSProject)
Dim buildman As BuildManagerEvents = vsproj.Events.BuildManagerEvents
AddHandler buildman.DesignTimeOutputDeleted, AddressOf OutputDeleted
AddHandler buildman.DesignTimeOutputDirty, AddressOf OutputDirty
End Sub
Sub OutputDeleted(ByVal moniker As String)
MsgBox("Output " & moniker & " was deleted.")
End Sub
Sub OutputDirty(ByVal moniker As String)
MsgBox("Output " & moniker & " is dirty.")
End Sub
В двух следующих примерах для подключения к событиям проекта Visual Basic используется свойство VBBuildManagerEvents с поздней привязкой. Для подключения к событиям Visual C# используется свойство CSharpBuildManagerEvents.
Также существует два метода с поздней привязкой для обработки событий объекта BuildManager. Первый метод позволяет обрабатывать события для определенного проекта, и для компиляции ему необходима оператор Option Strict Off. Параметр для VBImportsEvents ― необязательный. Если его опустить, будут получены события всех проектов Visual Basic в решении. Данный метод возвращает ошибку, если параметр для вызова VBBuildManagerEvents имеет тип, отличный от Project.
' Macro editor
Option Strict Off
Imports VSLangProj
Dim WithEvents buildEvents As BuildManagerEvents
Sub ConnectProjectBuildManagerEvents()
Dim proj As Project = DTE.Solution.Projects.Item(1)
buildEvents = DTE.Events.VBBuildManagerEvents(proj)
End Sub
Public Sub buildEvents_DesignTimeOutputDeleted(ByVal bstrOutputMoniker _
As String) Handles buildEvents.DesignTimeOutputDeleted
MsgBox(bstrOutputMoniker)
End Sub
Второй метод с поздней привязкой позволяет отвечать на события для всех проектов решения. В данном методе отсутствует фильтрация событий по конкретным проектам. Он будет компилироваться с Option Strict On.
' Macro editor
Imports VSLangProj
Dim WithEvents buildEvents As VSLangProj.BuildManagerEvents
Sub ConnectAllBuildManagerEvents()
buildEvents = CType(DTE.Events.GetObject("VBBuildManagerEvents"), _
BuildManagerEvents)
End Sub
Public Sub buildEvents_DesignTimeOutputDeleted(ByVal bstrOutputMoniker _
As String) Handles buildEvents.DesignTimeOutputDeleted
MsgBox(bstrOutputMoniker)
End Sub
Разрешения
- Полное доверие для непосредственно вызывающего метода. Этот член не может быть использован частично доверенным кодом. Дополнительные сведения см. в разделе Использование библиотек из не вполне надежного кода.