IVsSolution.GetProjectOfProjref – metoda (String, IVsHierarchy, String, VSUPDATEPROJREFREASON )
Vrací hierarchii pro referenční řetězec zadaný projekt.
Obor názvů: Microsoft.VisualStudio.Shell.Interop
Sestavení: Microsoft.VisualStudio.Shell.Interop (v Microsoft.VisualStudio.Shell.Interop.dll)
Syntaxe
int GetProjectOfProjref(
string pszProjref,
out IVsHierarchy ppHierarchy,
out string pbstrUpdatedProjref,
VSUPDATEPROJREFREASON[] puprUpdateReason
)
int GetProjectOfProjref(
String^ pszProjref,
[OutAttribute] IVsHierarchy^% ppHierarchy,
[OutAttribute] String^% pbstrUpdatedProjref,
array<VSUPDATEPROJREFREASON>^ puprUpdateReason
)
abstract GetProjectOfProjref :
pszProjref:string *
ppHierarchy:IVsHierarchy byref *
pbstrUpdatedProjref:string byref *
puprUpdateReason:VSUPDATEPROJREFREASON[] -> int
Function GetProjectOfProjref (
pszProjref As String,
<OutAttribute> ByRef ppHierarchy As IVsHierarchy,
<OutAttribute> ByRef pbstrUpdatedProjref As String,
puprUpdateReason As VSUPDATEPROJREFREASON()
) As Integer
Parametry
- pszProjref
[v] Ukazatel na existující projekt referenční řetězec, popřípadě.Může být null.
- ppHierarchy
[výstup] Ukazatel IVsHierarchy rozhraní podle odkazu na projekt.
- pbstrUpdatedProjref
[výstup] Ukazatel na řetězec referenční aktualizovaný projekt.
- puprUpdateReason
[výstup] Identifikovat popisující důvod změny v projektu odkaz na řetězec.Seznam puprUpdateReason hodnoty, viz VSUPDATEPROJREFREASON.
Vrácená hodnota
Type: System.Int32
Pokud metoda uspěje, vrací S_OK.Pokud se nezdaří, vrátí kód chyby.
Poznámky
Podpis COM
Z vsshell.idl:
HRESULT IVsSolution::GetProjectOfProjref(
[in] LPCOLESTR pszProjref,
[out] IVsHierarchy **ppHierarchy,
[out] BSTR *pbstrUpdatedProjref,
[out] VSUPDATEPROJREFREASON *puprUpdateReason
);
Existují dva scénáře pro tuto metodu:
Odkaz na projekt sleduje při přejmenování projektu do jednoho řešení.Při pokusu o svázat s odkazem na projekt projektu GUID prvním voláním pokusu o GetProjectOfGuid.Pokud toto volání úspěšný a byl přejmenován projektu, pak referenční aktualizovaný projekt slouží také pro klienta.
Projekty jsou přidány do nové řešení a odkaz na projekt je stále schopen zavazovat.Pokud identifikátor GUID svázat, je učiněn pokus o vyhledání projektu pomocí názvu typu informací.Pokud se to podaří, je vrácena referenční aktualizovaný projekt, který zahrnuje nový projekt.
Obsah odkazu na projekt jsou neprůhledné klientovi.Však na podporu těchto dvou scénářů pro naše interní implementace, musíme mít projekt referenční řetězec, který se skládá z následujících informací:
Identifikátor GUID přiřazena a udržovaný soubor řešení projektu
Projekt typu (nebo název)
Následuje popis jak na GetProjectOfProjref metoda se používá pro podporu operací a přetažení:
CF_VSPROJECTITEMS a CF_VSPROJECTS formáty schránky použít DROPFILES struktury stejným způsobem jako CF_HDROP nebo CF_PRINTERS.Data za takto DROPFILES struktura je seznam double zakončený Projref řetězce.Spotřebitel operace přetažení, můžete použít rozhraní API systému Windows DragQueryFile zkoumat data DROPFILES struktury.CF_VSPROJECTSFormát je nabízena, když Projref řetězce určit projekty jako celek, je *pitemid == VSITEMID_ROOT.CF_VSPROJECTITEMS Formát je nabízena, když Projref řetězce určit jednu nebo více položek jednotlivých projektů.Buď CF_VSPROJECTS nebo CF_VSPROJECTITEMS by měly být nabídnuty, ale nikdy oba.
Viz také
IVsSolution – rozhraní
Microsoft.VisualStudio.Shell.Interop – obor názvů
Zpátky na začátek