【发布时间】:2019-04-04 11:01:38
【问题描述】:
我不使用 VSIX 进行集成(支持旧的 VS 和 SSMS)。安装程序将所有 dll 放入“程序文件”,并将 pkgdef 和清单放入特定文件夹。目前 VS2019 显示我的扩展使用“已弃用 API”的消息。
带有来自 docs.microsoft.com 的消息的图像,但它是相同的。
我完成了这些步骤:
- 我创建了 asyncPackage(现在为空)。
- 添加了 Microsoft.VisualStudio.Component.CoreEditor 到 vsixmanifest
- 使用来自here 的代码生成catalog.json 和manifest.json
我的包看起来是这样(构造函数现在是空的)
[PackageRegistration(UseManagedResourcesOnly = true, AllowsBackgroundLoading = true)]
[InstalledProductRegistration("#110", "#112", "7.1.7", IconResourceID = 115)]
[ProvideMenuResource("MyMenus.ctmenu", 1)]
[ProvideAutoLoad(GuidList.ShellInitialized, PackageAutoLoadFlags.BackgroundLoad)]
[ProvideAutoLoad(VSConstants.UICONTEXT.NoSolution_string, PackageAutoLoadFlags.BackgroundLoad)]
[System.Runtime.InteropServices.Guid(GuidList.guidMyPkgString)]
public sealed class MyPackage : AsyncPackage {
但 VisualStudio 一次又一次地显示有关已弃用 API 的消息。我错过了什么? VS 在加载包时检查什么?
编辑:我创建了 AsyncPackage,添加了属性,更新了 VsixV3 的集成文件。为什么VS同步加载扩展?
【问题讨论】:
-
什么信息-请显示!!
-
@ErikEJ 添加了带有消息的图像。我也有。
-
您是否点击了“了解更多”链接?
-
@ErikEJ 它让我看到文章"Synchronously autoloaded extensions"。
-
目前仍在苦苦挣扎,因为我无法重现您的问题。就像您在上面分享的步骤一样,我无法弄清楚您的项目是什么样的。您的扩展程序适用于什么功能?正如你上面提到的,它是一个空包,那么你的扩展是如何工作的,也许这就是问题的原因。
标签: visual-studio-extensions vsix vs-extensibility