VSProjectEvents2.BuildManagerEvents (Propiedad)
Obtiene un objeto BuildManagerEvents que proporciona acceso a los eventos de BuildManager.
Espacio de nombres: VSLangProj80
Ensamblado: VSLangProj80 (en VSLangProj80.dll)
Sintaxis
'Declaración
ReadOnly Property BuildManagerEvents As BuildManagerEvents
BuildManagerEvents BuildManagerEvents { get; }
property BuildManagerEvents^ BuildManagerEvents {
BuildManagerEvents^ get ();
}
abstract BuildManagerEvents : BuildManagerEvents with get
function get BuildManagerEvents () : BuildManagerEvents
Valor de propiedad
Tipo: BuildManagerEvents
Un objeto BuildManagerEvents.
Comentarios
Los eventos BuildManagerEvents se utilizan para hacer un seguimiento de los cambios realizados en los elementos del proyecto asociados a herramientas personalizadas. El evento DesignTimeOutputDirty indica que se agregó o se modificó un elemento de proyecto. El evento DesignTimeOutputDeleted indica que se eliminó un elemento de proyecto. Para obtener más información, vea BuildManager.
Ejemplos
Este ejemplo conecta los métodos de control de eventos a los eventos DesignTimeOutputDeleted y DesignTimeOutputDirty para un proyecto concreto utilizando el objeto Events. Para obtener más información sobre cómo se ejecutan ejemplos de macros, vea Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización.
Abra un proyecto de Visual Basic o Visual C# antes de ejecutar estas macros.
' Macro Editor
' Connects events in a Visual Basic or Visual C# project.
Imports VSLangProj
Imports VSLangProj80
Sub ConnectEvents()
Dim proj As Project = DTE.Solution.Projects.Item(1)
Dim vsproj As VSProject2 = CType(proj.Object, VSProject2)
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
En los dos ejemplos siguientes se utiliza la propiedad de enlace tardío VBBuildManagerEvents para conectar con eventos de proyecto de Visual Basic. Utilice la propiedad CSharpBuildManagerEvents para conectar con eventos de Visual C#. Para obtener más información sobre los objetos de evento específicos, vea Objetos de evento (específicos para tipos de proyectos).
Existen también dos métodos de enlace tardío para controlar eventos del objeto BuildManager. El primer método permite controlar eventos para un proyecto en particular y necesita la instrucción Option Strict Off para compilarse. El parámetro para VBImportsEvents es opcional. Si se invalida, se reciben eventos para todos los proyectos de Visual Basic de la solución. Este método devuelve un error si el parámetro para la llamada VBBuildManagerEvents no es de tipo Project. Para obtener más información sobre los objetos de evento específicos, vea Objetos de evento (específicos para tipos de proyectos).
' 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
El segundo método de enlace tardío permite responder a eventos para todos los proyectos de la solución. Este método no ofrece ningún medio para filtrar los eventos de un solo proyecto en particular. Se compilará con 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
Seguridad de .NET Framework
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea Utilizar bibliotecas de código que no es de plena confianza.
Vea también
Referencia
VSLangProj80 (Espacio de nombres)