win10下SendKeys报错,如何修改操作系统配置

很老的系统代码.net 1.1的,在win10下运行报错,查出来就是 SendKeys.SendWait("{Tab}"); 这行代码运行时报错了。

提示信息:
应用程序试图执行安全策略不允许的操作。此操作需要SecurityException。
若要授予该应用程序所需的权限,请与系统管理员联系,或使用Microsoft .Net 安全策略管理工具。

无法创建挂钩。

这是System.Windows.Forms的内置函数,打开1.1的mscorcfg.msc想要把System.Windows.Forms程序添加到权限集中的FullTrust中。
虽然这个DLL虽然在程序集缓存中,但想加到策略程序集的时候,就会报错“无法添加选定的程序集。程序集必须具有一个强名称(名称、版本和公钥)”

发布包在win7等其他系统运行正常,再修改代码重新编译发布很麻烦,求一个修改win10系统设置的解决方案,点数不够可以加。

如果用 base.ProcessDialogKey 改写了,请教一下SendKeys.Send("+" + "{TAB}");退格键如何处理?用base.ProcessDialogKey(Keys.Shift | Keys.Tab);好像不行

SendKeys因为安全等方面的顾虑在win10中被禁用了,但它在win7,win8上仍然有效,如果坚持要在win10上使用,你可能需要寻找替代方案.