gpt4 book ai didi

c# - 辅助功能 : Managed vs Unmanaged code

转载 作者:可可西里 更新时间:2023-11-01 11:10:17 25 4
gpt4 key购买 nike

我即将开始为 Windows(针对 XP 到 7)开发辅助功能项目,并希望就使用托管代码与非托管代码的优缺点提供一些建议。基本上,该软件需要能够从打开的窗口中读取文本、访问菜单,以及 JAWS 或其他屏幕阅读器等程序能够执行的其他常用功能。问题是,我可以使用 C# 执行此操作还是需要使用 C++?

在过去的两年里,我一直在开发大量 C# 代码,因此看来最快的入门方法是使用 System.Windows.Automation 命名空间。另一方面,我已经有一段时间没有做过太多 C++ 或 COM 编程了,在使用非托管代码之前必须花一些时间来刷新。

将 C# 代码用于辅助功能软件有哪些限制?它们是否严重到足以证明我有理由投入大量时间来更新我的 C++ 和 COM 技能,因为我遇到了很多使用托管代码不可能(或困难得多)的事情? Automation 命名空间是否与旧应用程序(不使用 .NET 或 WPF)兼容?

最佳答案

明确托管的代码

即使遇到您习惯使用 COM/unmanaged 的​​情况,您也可以对这些模块使用 COM/unmanaged。

.NET 提供托管和非托管代码之间的无缝互操作。与 .NET 4.0 和 C# 4.0 互操作甚至更好..

最重要的是,确保您设计的是松散耦合的系统,以便始终有空间插入采用完全不同技术的另一个模块。

只是我的两分钱..

关于c# - 辅助功能 : Managed vs Unmanaged code,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3181646/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com