如何创建基于 F# 的 Visual Studio 插件?

2023-12-07

即使安装了 F#,Visual Studio 2008(可能还有 2010)也仅提供 C#、VB.NET 和 C++ 的外接程序项目模板。

那么,如何创建基于 F# 的插件呢?

我尝试使用实现 IDTExtensibility2 的新类创建 F# 类库项目,设置正确的引用(EnvDTE、扩展性等),从 C# 加载项复制一些项目属性(主要是用于调试的命令行) ,并手动创建 .AddIn 清单文件,但没有成功。当 VS 启动时,我的加载项未在可用加载项中列出。

缺少哪些步骤?在某处进行某种 COM 注册?


我还没有尝试过这种确切的场景,但我最幸运的一般策略是:从 C# 模板开始,将 .csproj 重命名为 .fsproj 并更改<Import>将 s 替换为 F# 并替换<Compile>C# 代码与 F# 代码的组合,然后从那里开始。

这些模板通常包含用于构建/部署的各种重要逻辑,因此从 C# 的工作模板开始,然后针对 F# 进行调整。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何创建基于 F# 的 Visual Studio 插件? 的相关文章

随机推荐

  • Android 2.2 中的 BackupManager 和 BackupAgent

    我已经查看了文档和示例 BackupRestore 应用程序 并编写了自己的测试应用程序来实现android backupAgent 我延长了BackupAgent类 因为我主要关心的是能够从数据库备份数据 我似乎甚至无法让一个简单的概念验
  • 为什么在非最终类中使用普通 val

    如果课程不是最后一堂课 可能会延长 值有两种可能性 它可能被覆盖并且应该是惰性的 它可能不会被覆盖并且应该是最终的 如果 val 是最终的 您可以假设对它的所有计算都将通过类层次结构进行 如果 val 可能被覆盖 你应该声明它是惰性的 以免
  • 像内置 WP7 一样的图像/照片库

    我正在寻找适用于 Windows Phone 7 的照片库 它的外观和工作方式与内置照片查看器相同 使用轻拂操作幻灯片照片 使用捏合 拖动调整大小 当您轻拂图像时 您可以看到它滑动到下一个图像 并将列表捕捉到该图像 我已经为图像构建了调整大
  • 正则表达式包括字母数字和 _

    我正在尝试创建一个正则表达式来匹配字母数字字符和下划线 这是我的正则表达式 w s 我的印象是这个正则表达式意味着任何字母数字字符 w 下划线 和不 或空格 它是否正确 正则表达式被读取为实际匹配字符串中字符的模式 从左到右 因此您的模式实
  • 最大化直方图下的矩形区域

    我有一个具有整数高度和恒定宽度 1 的直方图 我想最大化直方图下的矩形区域 例如 答案是 6 3 2 使用 col1 和 col2 O n 2 蛮力对我来说很清楚 我想要一个 O n log n 算法 我试图按照最大递增子序列 O n lo
  • Angular4:ng-template 内的组件引用

    我是角度 4 的新手 我想获取 ng template 内组件 验证警报 的句柄
  • 将本机指针转换为 C++\CLI 托管对象引用?

    我有一个通过委托调用的回调 在其中 我需要处理从记录过程到达的缓冲区数据 通常 在非托管上下文中 我可以对 dwParam1 执行reinterpret cast 来获取对象引用 但在托管上下文中 如何将 DWORD PTR 转换为托管对象
  • 多线程场景中的 Microsoft.ACE.OLEDB.12.0 错误

    我在 x64 应用程序中使用Microsoft Access 数据库引擎 2010 Microsoft Office 2016 的一部分 用于处理 mdb 文件 但是 当前版本的 Microsoft Access Database Engi
  • 流程输出仅在流程完成后才可用

    我有一个 Runnable 它从外部调用的 exe 见下文 读取控制台输出并将其写入日志文件和 JTextArea 但在 exe 完全完成之前 我的 Runnable 不会在 JTextArea 中显示控制台输出 如何让它在发生时打印控制台
  • 从外部连接kafka的问题

    我正在使用 hortonwork Sandbox 作为 kafka 服务器 尝试使用java代码从eclipse连接kafka 使用此配置连接到生产者发送消息 metadata broker list sandbox hortonworks
  • 使用endswith读取文件列表在列表中找不到扩展名

    我试图让我的 python 脚本读取一个文本文件 其中包含带有扩展名的文件名列表 并在找到特定扩展名时打印出来 确切地说是 txt 文件 它读取文件并遍历每一行 我通过在 for 语句后放置一个简单的 打印行 进行测试 但当它在行中看到 t
  • Color_FormatSurface 实现

    是否有关于 Color FormatSurface AndroidOpaque 颜色格式的可用文档 我的视频编码器目前不支持这种格式 我应该添加该功能 但我找不到任何有关它的信息 任何帮助 将不胜感激 没有关于它的文档 因为它是不透明的 这
  • 在Azure DevOps中如何使用REST API触发发布?

    我在 Azure DevOps 中构建和发布管道 该管道包含三个不同的阶段 即分阶段 QA 和 PROD 因此 在 QA 槽中完成部署后 我想使用 REST API 触发 PROD 环境 那么 是否可以做同样的事情呢 在单个发布管道中不可能
  • Javascript Date() 构造函数不起作用

    我有一个问题 JavaScriptDate mm dd yyyy 构造函数不适用于 FF 对于 IE 来说效果很好 IE new Date 04 02 2008 gt Wed Apr 2 00 00 00 EDT 2008 FF2 new
  • Instagram OAuthException:您必须提供 client_id

    我一直在尝试在我的网络应用程序中使用 instagram API 的服务器端身份验证 我已按照以下位置提供的步骤进行操作Intagram 的 API 页面 但我不断收到错误you must provide a client id 代码是用n
  • 未捕获的引用错误:__ng_jsonp____req0_finished 未定义于

    我有一个 Angular 应用程序 并且也在使用 JSONP 这是我的服务 import Injectable from angular core import Http Response Headers RequestOptions fr
  • 如何返回列表中以“b”开头的第二个元素

    我有这个函数 其中包含包含字符串的列表 我必须找到此列表中以 b 开头的第二个元素 例如 second elemnt starting with b b a bb gt bb 使用a会更有效发电机 而不是通过迭代整个初始列表来构建以 b 开
  • IIS 7.5 + 为 RESTFul 服务启用 PUT 和 DELETE,无扩展

    我试图了解 IIS 7 5 如何处理 POST 和 PUT 请求 我正在使用 OpenRasta 框架编写 RESTful 服务 POST 操作可以正常工作 但对同一 URL 的 PUT 操作则不然 它返回如下错误 Detailed Err
  • 如何在64位汇编程序中使用RIP相对寻址?

    如何在 AMD64 架构的 Linux 汇编程序中使用 RIP 相对寻址 我正在寻找一个使用 AMD64 RIP 相对寻址模式的简单示例 Hello world 程序 例如 以下 64 位汇编程序可以正常工作 绝对寻址 text globa
  • 如何创建基于 F# 的 Visual Studio 插件?

    即使安装了 F Visual Studio 2008 可能还有 2010 也仅提供 C VB NET 和 C 的外接程序项目模板 那么 如何创建基于 F 的插件呢 我尝试使用实现 IDTExtensibility2 的新类创建 F 类库项目