VSProject2 – rozhraní
Obsahuje informace týkající Visual Basic nebo Visual C# projektu.Object Objekt vrátí ji, když je projekt Visual Basic nebo Visual C# projektu.
Obor názvů: VSLangProj80
Sestavení: VSLangProj80 (v VSLangProj80.dll)
Syntaxe
'Deklarace
<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
Typ VSProject2 zveřejňuje následující členy.
Vlastnosti
Název | Popis | |
---|---|---|
BuildManager | Získá BuildManager objekt VSProject. | |
DTE | Získá objekt nejvyšší úrovně rozšiřitelnosti. | |
Events | Získá VSProjectEvents objekt, který umožňuje reagovat na události Imports, References, a BuildManager objekty. | |
Events2 | Získá VSProjectEvents2 objekt, který umožňuje reagovat na události Imports, References, BuildManager, a VSLangProjWebReferencesEvents objekty. | |
Imports | Získá Imports objekt přidružený k projektu.Pro projekty jazyka C# Imports je nastavena na Nothing ( nullodkaz null (Nothing v jazyce Visual Basic) odkaz). | |
Project | Získá obecného Project objekt přidružený Visual Basic nebo Visual C# projektu. | |
PublishManager | Získá PublishManager objekt, který chcete povolit jednou publikování. | |
References | Získá References kolekce projektu. | |
TemplatePath | Tato vlastnost se již nepoužívá v Microsoft Visual Studio 2005.Jako náhradu použijte GetProjectItemTemplate. | |
WebReferencesFolder | Získá ProjectItem objekt představující složky webové odkazy projektu.Pokud složka neexistuje, vrátí tato vlastnost Nothing ( nullodkaz null (Nothing v jazyce Visual Basic) odkaz). | |
WorkOffline | Označuje, zda je webový projekt práce online nebo offline.Při práci v režimu offline, vývoj pokračuje na úložiště offline souborů projektu tak, aby soubory projektu na serveru se nezmění. |
Nahoru
Metody
Název | Popis | |
---|---|---|
AddWebReference | Do projektu přidán odkaz na webovou službu.Novou podsložku referenční webové služby je přidána do složky webové odkazy projektu.Tato nová složka obsahuje několik položek projektu vztahující se k webové službě.Metoda vrátí ProjectItem objektu přidružené k nové složce webové služby. | |
CopyProject | Zkopíruje do nového umístění některých nebo všech webového projektu. | |
CreateWebReferencesFolder | Vytvoří složku webové odkazy k projektu. | |
Exec | Infrastruktura. Microsoft pouze pro vnitřní potřebu. | |
GenerateKeyPairFiles | Generuje soubor veřejného a soukromého klíče použít k vytvoření silného názvu pro sestavení. | |
GetUniqueFilename | Generuje jedinečný název souboru v rámci projektu. používá se k pojmenování nové položky projektu. | |
Refresh | Aktualizuje zobrazení projektu v Průzkumník řešení a aktualizuje odkazy. |
Nahoru
Poznámky
Projectje základní objekt rozšíření, obsahující informace o projektech libovolného jazyka.Object Vlastnost Project objekt vrátí objekt, jehož typ závisí na projektu jazyka.U Visual Basic a Visual C#, tento objekt je VSProject2 objektu.
Object Vlastnost vrátí Object datového typu.Datový objekt vrácený Object vlastnost může pak být explicitně převést na VSProject2.Následující příklad ukazuje, jak pomocí tohoto převodu CType funkce.PrjKind Se používá k testování pro typ projektu před převodem.
Příklady
Chcete-li spustit tento příklad jako doplněk, viz Postupy: Kompilace a spuštění příkladů kódu objektu automatizace.
Chcete-li zjistit, zda Visual Basic nebo Visual C# projekt inteligentní zařízení, použijte prjKindSDEVBProject a 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.");
}
}