IVsSolutionBuildManager.GetProjectDependencies 方法
返回给定层次结构依赖项的列表。
命名空间: Microsoft.VisualStudio.Shell.Interop
程序集: Microsoft.VisualStudio.Shell.Interop(在 Microsoft.VisualStudio.Shell.Interop.dll 中)
语法
声明
Function GetProjectDependencies ( _
pHier As IVsHierarchy, _
celt As UInteger, _
<OutAttribute> rgpHier As IVsHierarchy(), _
<OutAttribute> pcActual As UInteger() _
) As Integer
int GetProjectDependencies(
IVsHierarchy pHier,
uint celt,
IVsHierarchy[] rgpHier,
uint[] pcActual
)
参数
- pHier
类型:Microsoft.VisualStudio.Shell.Interop.IVsHierarchy
[in] 为 IVsHierarchy 对象的指针。
- celt
类型:System.UInt32
[in] 指定 celt。
- rgpHier
类型:array<Microsoft.VisualStudio.Shell.Interop.IVsHierarchy[]
[in, out] 指定要生成的项目。
- pcActual
类型:array<System.UInt32[]
[out, optional] 对项的数量的指针。
返回值
类型:System.Int32
如果方法成功,则返回 S_OK。如果失败,它会返回一个错误代码。
备注
COM 签名
从 vsshell.idl:
HRESULT IVsSolutionBuildManager::GetProjectDependencies(
[in] IVsHierarchy *pHier,
[in] ULONG celt,
[in, out, size_is(celt)] IVsHierarchy *rgpHier[],
[out, optional] ULONG *pcActual
);
返回给定层次结构依赖项的列表。
您应在调用 GetProjectDependencies 之前调用 CalculateProjectDependencies ,如果您不确定的,如果依赖项调用是最新的。 CalculateProjectDependencies 将强制项目依赖项重新计算。
应两次,第一次调用此方法与 celt= 0 和 rgpHier= nullnull 引用(在 Visual Basic 中为 Nothing),获取在 pcActual的大小,然后单击第二次是在发行列表获取之后项目。
方法如下执行 (错误检查省略):
ULONG ulActual;
hr = pIVsSolutionBuildManager->GetProjectDependencies(pHier, 0, NULL, &ulActual)
// allocate memory to hold the hierarchy pointers
IVsHierarchy** rgpIVsHierarchy = (IVsHierarchy**) ::CoTaskMemAlloc(ulActual * sizeof(IVsHierarchy *));
memset(rgpIVsHierarchy, 0, sizeof(IVsHierarchy*)*ulActual);
// now get the hierarchy pointers
ULONG ulActual2;
hr = pIVsSolutionBuildManager->GetProjectDependencies(pHier, ulActual, rgpIVsHierarchy, &ulActual2);
// use the pointers here
// release the hier pointers
// release the memory
::CoTaskMemFree(rgpIVsHierarchy);
.NET Framework 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。