当前位置: 首页 > news >正文

28、F高级互操作性与类型提供程序详解

F#高级互操作性与类型提供程序详解

1. 托管包装器与COM风格API

在F#编程中,生成的.dll文件属于.NET程序集,可像其他.NET程序集一样,通过fsc.exe命令行开关-r来引用。若API文档不完善,可借助.NET Reflector等程序集浏览器了解API结构。

使用托管包装器时,由于COM模型规定了结构,这些程序集的结构可能有些特殊,与大多数.NET程序集的命名约定不同。程序集中的所有类都以Class后缀结尾,且每个类都有一个单独的接口,这是COM对象的要求。以下是使用Microsoft语音API包装器的示例:

open SpeechLib let main() = // 创建一个COM类的新实例 let voice = new SpVoiceClass() // 调用Speak方法,忽略结果 voice.Speak("Hello world", SpeechVoiceSpeakFlags.SVSFDefault) |> ignore do main()

如今,使用COM风格API比直接使用COM库并创建自己的包装器更为常见,因为许多供应商会随应用程序分发主互操作程序集,这些是预先创建的COM包装器,通常无需使用TlbImp.exe自行

http://www.jsqmd.com/news/132217/

相关文章:

  • BLiveChat终极指南:3步打造专业级B站直播弹幕系统
  • Photoshop批量导出终极指南:一键解决图层管理难题
  • 29、F 类型提供程序的使用与实践
  • 当原神遇上桌面智能:你的专属游戏数据管家
  • 如何将企业微信/钉钉接入anything-llm镜像实现智能问答
  • 企业级SLA服务承诺,Anything-LLM商业支持有哪些亮点?
  • Reagent深度性能调优:解决ClojureScript大型应用渲染瓶颈的实战指南
  • Mac版百度网盘下载速度优化方案与技术实现
  • 16、使用 Xamarin.Forms 构建跨平台应用
  • VLC多媒体播放器完整指南:轻松掌握高效使用技巧
  • HTML5游戏开发终极指南:如何快速构建跨平台游戏框架
  • 幻兽帕鲁存档修复终极指南:轻松解决跨服务器同步问题
  • 17、使用Xamarin.Forms构建跨平台应用程序的全面指南
  • RevokeMsgPatcher终极指南:Windows平台防撤回神器
  • 消息永不消失:微信防撤回补丁的终极使用手册
  • 通过51单片机串口通信实验完成远程插座开关控制
  • PowerToys中文版终极解决方案:彻底告别Windows效率瓶颈
  • 发现TouchGal Galgame社区:一个视觉小说爱好者的温暖家园
  • AI字幕生成工具:从手动打字幕到智能语音识别的效率革命
  • RevokeMsgPatcher终极指南:轻松实现微信QQ消息防撤回
  • 18、使用 Xamarin.Forms 构建跨平台应用程序
  • OmenSuperHub:暗影精灵笔记本的终极风扇控制解决方案
  • 百度网盘下载加速终极指南:macOS插件优化完整教程
  • BG3模组管理器完全指南:5分钟掌握博德之门3模组管理技巧
  • 3个实用技巧:彻底解锁索尼相机的隐藏功能
  • ASTRAL完整指南:从入门到精通物种树构建
  • DeepKE:颠覆性知识图谱构建工具一站式解决方案
  • BG3模组管理器深度精通:7步打造完美博德之门3模组体验
  • 19、在 Xamarin.Forms 中使用特定平台代码
  • 实战教程:abap2xlsx快速上手Excel生成全攻略