c# - 如何在 .NET Standard 2.0 中使用 System.Windows.Forms.SendKeys
问题描述
我正在.NET Standard 2.0 中开发一个类库,它应该使用按键来控制其他一些应用程序。我需要在 .NET Standard 2.0 中编写库,因为我有两个将使用该库的客户端应用程序,一个在 .NET Framework 4.8 中,一个在 .NET 5 中,它们都支持 System.Windows.Forms.SendKeys。
解决这个问题的正确方法是什么?
解决方案
如果以某种方式必须(而且很难到达这里),请使用反射来定位类System.Windows.Forms.SendKeys
并调用调用。
最有可能的是,您最好为net40
(或者.net48
可能无关紧要)构建并netcoreapp3.0
使用<targetframeworks>
. 看起来像这样
<propertygroup>
...
<targetframeworks>netcoreapp3.0;net40</targetframeworks>
</propertygroup>
调用者选择正确的 dll 并且它可以工作。
现在是困难的部分;您仍然可以在netstandard2.0
没有实现的情况下进行参考 dll 定位,并且派生包仍然可以解析;但最终的可执行文件必须是这两个(或更新的)之一,否则它将无法运行。
推荐阅读
- email - Mahara 未发送欢迎电子邮件
- unit-testing - 如果流中有多个 GetItem(),如何模拟 AWS DynamoDB?
- .htaccess - 在共享虚拟主机上部署 symfony 应用程序时禁止 403
- arrays - 如果行匹配,则将列添加到具有来自另一个数组中某个位置的值的数组
- python - 'file' 是什么意思
"' 代表 python 调试器和回溯? - r - 我如何模拟首先选择随机玩家,然后重复该序列?
- java - 有没有一种简单的方法可以从 Java 中相同接口的多个实现创建级联函数?
- c# - 如何在 .NET 中列出支持的 C# 语言版本
- c# - 在我的 Mac m1 终端中找不到 dotnet 命令
- reactjs - 动态更改 animateCamera 俯仰和缩放属性不起作用