Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
När du har anslutit VSPackage till automation kan du hämta egenskaperna och metoderna genom att anropa GetObject metoden på _DTE objektet och skicka en sträng som representerar det objekt som du vill hämta.
Hämta projektobjekt
Följande är två kodexempel som visar hur en automationskonsument hämtar projektautomatiseringsobjekten. Information om hur du hämtar DTE-objektet finns i Så här hämtar du referenser till DTE- och DTE2-objekten.
Sub DoAutomation()
Dim MyProjects As Projects
MyProjects = DTE.GetObject("AcmeProject")
End Sub
void DoAutomation(void)
{
CComQIPtr<Projects> pMyPkg; // Use an IDispatch-derived object type.
pMyPkg = pDTE->GetObject("AcmeProjects");
// The '=' performs a Query Interface.
// Assumes pDTE is already available as a global.
// Use pMyPkg to access your projects object's properties and methods.
}
Nu kan du använda standardprojektobjekten som ingår i en specifik VSPackage för att flytta ned hierarkimodellen.
I följande kodexempel visas hur du hämtar ett anpassat objekt som är en egenskap av en anpassad projekttyp.:
Dim MyPrj As Project
Dim MyPrjItem As ProjectItem
Dim objMyObject as MyExtendedObject
MyPrj = MyProjects.Item(1) 'use the Projects collection to get a project
objMyObject = MyPrj.Object 'You call .Object to get to special Project
'implementation
objMyObject.MySpecialMethodOrProperty
Följande kod visar namnen på alla egenskaper i alternativet Allmänt i Visual Studio-miljön på verktygsmenyn :
dim objDTE
dim objEnv
set objDTE = CreateObject("VisualStudio.DTE")
set objEnv = objDTE.Properties("Environment", "General")
for each obj in ObjEnv
MsgBox obj.Name
Next