VSProject2 (Interfaz)
Contiene la información específica de un proyecto de Visual Basic o Visual C#. El objeto Object lo devuelve cuando se trata de un proyecto de Visual Basic o Visual C#.
Espacio de nombres: VSLangProj80
Ensamblado: VSLangProj80 (en VSLangProj80.dll)
Sintaxis
'Declaración
<GuidAttribute("B1042570-25C6-424A-B58B-56FA83AA828A")> _
Public Interface VSProject2 _
Inherits VSProject
[GuidAttribute("B1042570-25C6-424A-B58B-56FA83AA828A")]
public interface VSProject2 : VSProject
[GuidAttribute(L"B1042570-25C6-424A-B58B-56FA83AA828A")]
public interface class VSProject2 : VSProject
[<GuidAttribute("B1042570-25C6-424A-B58B-56FA83AA828A")>]
type VSProject2 =
interface
interface VSProject
end
public interface VSProject2 extends VSProject
El tipo VSProject2 expone los siguientes miembros.
Propiedades
Nombre | Descripción | |
---|---|---|
BuildManager | (Se hereda de VSProject). | |
BuildManager | Obtiene el objeto BuildManager para VSProject. | |
DTE | (Se hereda de VSProject). | |
DTE | Obtiene el objeto de extensibilidad de nivel superior. | |
Events | (Se hereda de VSProject). | |
Events | Obtiene un objeto VSProjectEvents que permite responder a eventos de los objetos Imports, References y BuildManager. | |
Events2 | Obtiene un objeto VSProjectEvents2 que permite responder a eventos de los objetos Imports, References, BuildManager y VSLangProjWebReferencesEvents. | |
Imports | (Se hereda de VSProject). | |
Imports | Obtiene el objeto Imports asociado al proyecto.Para proyectos de C#, la propiedad Imports se establece en Nothing (una referencia nullreferencia null (Nothing en Visual Basic)). | |
Project | (Se hereda de VSProject). | |
Project | Obtiene el objeto Project genérico asociado al proyecto de Visual Basic o Visual C#. | |
PublishManager | Obtiene un objeto PublishManager que permite hacer clic una vez realizada la publicación. | |
References | (Se hereda de VSProject). | |
References | Obtiene la colección de References del proyecto. | |
TemplatePath | (Se hereda de VSProject). | |
TemplatePath | Esta propiedad está desusada en Microsoft Visual Studio 2005.Utilice GetProjectItemTemplate en su lugar. | |
WebReferencesFolder | (Se hereda de VSProject). | |
WebReferencesFolder | Obtiene el objeto ProjectItem que representa la carpeta Referencias web del proyecto.Si la carpeta no existe, esta propiedad devuelve Nothing (una referencia nullreferencia null (Nothing en Visual Basic)). | |
WorkOffline | (Se hereda de VSProject). | |
WorkOffline | Determina si un proyecto web trabaja en línea o sin conexión.Cuando trabaja sin conexión, el desarrollo continúa en un almacén sin conexión de los archivos de proyecto, por lo que los archivos situados en el servidor no se modifican. |
Arriba
Métodos
Nombre | Descripción | |
---|---|---|
AddWebReference(String) | (Se hereda de VSProject). | |
AddWebReference(String) | Agrega al proyecto una referencia a un servicio Web.Se agrega una nueva subcarpeta con una referencia a un servicio Web a la carpeta Referencias web del proyecto.Esta nueva carpeta contiene otros elementos de proyecto relacionados con el servicio Web.El método devuelve el objeto ProjectItem asociado a la nueva carpeta de servicio Web. | |
CopyProject(String, String, prjCopyProjectOption, String, String) | (Se hereda de VSProject). | |
CopyProject(String, String, prjCopyProjectOption, String, String) | Copia un proyecto web, parcial o totalmente, a una nueva ubicación. | |
CreateWebReferencesFolder() | (Se hereda de VSProject). | |
CreateWebReferencesFolder() | Crea la carpeta Referencias web para el proyecto. | |
Exec(prjExecCommand, Int32, Object, Object%) | (Se hereda de VSProject). | |
Exec(prjExecCommand, Int32, Object, Object%) | Infraestructura. Sólo para uso interno de Microsoft. | |
GenerateKeyPairFiles(String, String) | (Se hereda de VSProject). | |
GenerateKeyPairFiles(String, String) | Genera un archivo de clave pública o privada que se emplea para formar un nombre seguro para el ensamblado. | |
GetUniqueFilename(Object, String, String) | (Se hereda de VSProject). | |
GetUniqueFilename(Object, String, String) | Genera un nombre de archivo único en el proyecto que se usa para asignar nombre a los nuevos elementos del proyecto. | |
Refresh() | (Se hereda de VSProject). | |
Refresh() | Actualiza la apariencia del proyecto en el Explorador de soluciones, así como las referencias. |
Arriba
Comentarios
Project es un objeto de extensibilidad general que puede contener información sobre proyectos de cualquier lenguaje. La propiedad Object del objeto Project devuelve un objeto cuyo tipo depende del lenguaje del proyecto utilizado. En el caso de Visual Basic y Visual C#, ese objeto es un objeto VSProject2.
La propiedad Object devuelve un tipo de datos Object. A continuación, el objeto de datos devuelto por la propiedad Object puede convertirse explícitamente en VSProject2. En el ejemplo siguiente se muestra esta conversión mediante la función CType. PrjKind se usa para probar el tipo del proyecto antes de la conversión.
Ejemplos
Para ejecutar este ejemplo como complemento, vea Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización.
Para determinar si un proyecto de Visual Basic o de Visual C# es un proyecto para dispositivos inteligentes, utilice prjKindSDEVBProject y prjKindSDECSharpProject.
[Visual Basic]
Imports VSLangProj
Imports VSLangProj2
Imports VSLangProj80
Public Sub OnConnection(ByVal application As Object,_
ByVal connectMode As ext_ConnectMode, ByVal addInInst _
As Object, ByRef custom As Array) Implements _
IDTExtensibility2.OnConnection
applicationObject = CType(application, DTE2)
addInInstance = CType(addInInst, AddIn)
VSProject2Example(applicationObject)
End Sub
Sub VSProject2Example(ByVal dte As DTE2)
Dim aProject As Project
Dim aVSProject2 As VSProject2
aProject = applicationObject.Solution.Projects.Item(1)
MsgBox(aProject.Kind & aProject.Name)
If (aProject.Kind = PrjKind.prjKindVBProject) Or_
(aProject.Kind = PrjKind.prjKindCSharpProject) Then
aVSProject2 = CType(applicationObject.Solution.Projects.Item(1).Object, _
VSProject2)
MsgBox(aVSProject2.Project.FullName)
Else
MsgBox("The first project is not a Visual Basic or C# _
project.")
End If
End Sub
[C#]
// To use Messabox.Show, a reference to Windows.Forms is required.
using System.Windows.Forms;
using VSLangProj;
using VSLangProj2;
using VSLangProj80;
public void OnConnection(object application, ext_ConnectMode
connectMode, object addInInst, ref Array custom)
{
applicationObject = (DTE2)application;
addInInstance = (AddIn)addInInst;
VSProject2Example((DTE2)applicationObject);
}
public void VSProject2Example(DTE2 dte)
{
Project aProject = null;
VSProject aVSProject2 = null;
aProject = applicationObject.Solution.Projects.Item( 1 );
MessageBox.Show( aProject.Kind + aProject.Name);
if ( ( aProject.Kind == PrjKind.prjKindVBProject ) |
( aProject.Kind == PrjKind.prjKindCSharpProject ) )
{
aVSProject2 = ( ( VSProject )
(applicationObject.Solution.Projects.Item( 1 ).Object ) );
MessageBox.Show( aVSProject2.Project.FullName);
}
else
{
MessageBox.Show( "The first project is not a Visual Basic or C# project.");
}
}