How to: 負載強制 VSPackage
VSPackages 通常會在其所附的功能,才能完成處理程序時,才載入。 不過,在某些情況下,VSPackage 可能必須強制另一個要載入的 VSPackage。 比方說,輕量級 VSPackage 可能會載入較大的 VSPackage 中程式設計的內容,並不是 CMDUIContext。
您可以使用LoadPackage方法,以強制載入的 VSPackage。
若要強制載入 VSPackage
插入這個程式碼複製到Initialize會強制載入另一個 VSPackage VSPackage 的方法:
Dim shell As IVsShell = TryCast(GetService(GetType(SVsShell)), IVsShell) If shell Is Nothing Then Return End If Dim package As IVsPackage = Nothing Dim PackageToBeLoadedGuid As Guid = GetType(PackageToBeLoaded).GUID shell.LoadPackage(PackageToBeLoadedGuid, package)
IVsShell shell = GetService(typeof(SVsShell)) as IVsShell; if (shell == null) return; IVsPackage package = null; Guid PackageToBeLoadedGuid = new Guid(Microsoft.PackageToBeLoaded.GuidList.guidPackageToBeLoadedPkgString); shell.LoadPackage(ref PackageToBeLoadedGuid, out package);
當初始化 VSPackage 時,它會強制PackageToBeLoaded載入。
穩固程式設計
強制載入不適用於 VSPackage 的通訊。 請改用 服務。