给那些已经看过VS2010的人提问.为了让他们的加载项在VS2010下工作,加载开发人员必须做出多大的改变?
我正在尝试使用Visual Studio 2010扩展,我需要处理IMouseProcessor公开的事件.
据我所知,我应该创建一个IMouseProcessorProvider并导出使用MEF,以便Visual Studio可以自动获取它.
我创建了这个类:
[Export(typeof(IMouseProcessorProvider))]
[ContentType("code")]
internal sealed class MouseProcessorFactory : IMouseProcessorProvider
{
public IMouseProcessor GetAssociatedProcessor(IWpfTextView wpfTextView)
{
return new MouseProcessor();
}
}
Run Code Online (Sandbox Code Playgroud)
当我运行Visual Studio的实验实例时,我的扩展在扩展管理器中可见.但我的自定义鼠标处理器提供商从未被调用过.我错过了什么/我做错了什么?
我有一个带有几个命令的VS2010 VSIP包,这些命令被添加到javascript编辑器的上下文菜单中,我正在使用
<Group guid="guidPrettyJsCmdSet" id="ContextMenuGroup" priority="0x0600">
<Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_CODEWIN"/>
</Group>
Run Code Online (Sandbox Code Playgroud)
但它只适用于C#文件,如何让它适用于.js文件?
我正在为VS2010中的UML序列图构建一个命令扩展,并且需要一个在当前解决方案中实现特定接口的类型列表.如何从扩展程序访问类型和程序集信息?到目前为止,我的所有尝试都刚刚列出了在原始扩展项目中加载的程序集,而不是VS当前正在编辑的程序集.
我下载了Ook!source,打开.csproj并以调试模式运行它.VS实验实例按预期启动,但现在我无法弄清楚如何获取空白代码文件,所以我实际上可以尝试写入Ook!我没看到"Ook!" 在任何项目模板中.
此外,如果有人有链接到Ook!视频教程,我很感激.似乎无法再找到它了.
我无法为网站项目项添加上下文菜单条目.
如何重现问题:
转到vsct文件并将该groups部分替换为:
<Group guid="guidVSPackage1CmdSet" id="MyMenuGroup" priority="0x0600">
<Parent guid="guidSHLMainMenu" id="IDM_VS_MENU_TOOLS"/>
</Group>
<Group guid="guidVSPackage1CmdSet" id="MyMenuGroup" priority="0x0600">
<Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_PROJNODE"/>
</Group>
<Group guid="guidVSPackage1CmdSet" id="MyMenuGroup" priority="0x0600">
<Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_ITEMNODE"/>
</Group>
<Group guid="guidVSPackage1CmdSet" id="MyMenuGroup" priority="0x0600">
<Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_FOLDERNODE"/>
</Group>
<Group guid="guidVSPackage1CmdSet" id="MyMenuGroup" priority="0x0600">
<Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_SOLNNODE"/>
</Group>
Run Code Online (Sandbox Code Playgroud)我确信这一定是可能的,因为NuGet有一个网站项目项的条目.遗憾的是,我无法从NuGet源代码中提取该段代码.
我正在编写一个Visual Studio扩展/加载项,我想找到当前解决方案中从项目创建的所有程序集的名称.
我没有任何技术限制 - 我可以使用DTE,MEF或任何其他完成工作的人.
现在的情况
我创建了一个带有附加向导的自定义项目模板,该向导将询问用户一些选项,它将生成一些代码(例如:INIT方法,一些对象初始化).我通过VSIX项目部署了这一切,一切都很好.
目标
我还有一个空的VS包.所以我的问题是:如何将模板和向导导入包中?因为我希望以后能够使用菜单项等更新包.
问题
网上关于如何创建和扩展VS Package的信息很少.我按照本教程.但是我已经创建了一个基本的Project模板,因为我不知道如何扩展它,我认为使用向导导入已经创建的Project模板要容易得多.
换一种说法
我希望我的最终产品与C++ win32控制台应用程序(出现在c ++部分中相同.点击时 - 向导支持用户使用他的偏好生成新项目),但也适用于C#.
额外信息
我读到在新版本的VS和Mac中不推荐使用Add ins.因此我选择了VS Package Project System(比自定义模板更具可扩展性).我看到了一个关于A Project SubType的解释(又名ProjectFlavor - 允许你自定义或调整Visual Studio项目系统的行为)但我没有找到任何教程或样本,除了项目的托管包框架(对我来说太复杂了).
右键单击visual studio解决方案资源管理器时,如何为"添加"菜单项添加子菜单?
我必须添加一个子菜单项,右键单击visual studio解决方案并移动到该菜单中的Add选项.
我正在尝试使用.vsct(vs package).请帮我提出宝贵的建议