1. TwinCAT 3与操作系统兼容性相关错误

1.1. Win11出现Hyper-V报错(0x1024)的解决方法

确定 Hyper-V 虚拟机监控程序是否正在运行

若要确定 Hyper-V 虚拟机监控程序是否正在运行,请按照下列步骤操作:

1.     在搜索框中,键入 msinfo32.exe

2.     选择系统信息

3.     在详细信息窗口中,找到以下条目:

已检测到虚拟机监控程序。 不会显示 Hyper-V 所需的功能。



可能原因:

此行为是设计使然。许多虚拟化应用程序依赖于大多数新式处理器上可用的硬件虚拟化扩展。它包括Intel VT-x和AMD-V。一次只能有一个软件组件使用此硬件。无法在虚拟化应用程序之间共享硬件。若要使用其他虚拟化软件,必须禁用Hyper-V虚拟机监控程序、Device Guard和Credential Guard。

如果要禁用Hyper-V虚拟机监控程序,请按照后续两个部分中的步骤操作。


操作方法:

一、禁用Hyper-V

1.可以在控制面板或使用Windows PowerShell禁用Hyper-V虚拟机监控程序。

   在控制面板中禁用Hyper-V

2.若要在控制面板中禁用Hyper-V,请执行以下步骤:

   ①在“控制面板”中,打开“程序和功能"”。

   ②选择"启用或关闭Windows 功能”。

   ③展开Hyper-V,展开 Hyper-v平台,然后清除"Hyper-V虚拟机监控程序"复选框。

2


二、在Power Shell中禁用Hyper-V

要使用windows PowerShell禁用Hyper-v,请按照以下步骤操作:

1.打开提升权限的PowerShell窗口。

2.运行以下命令:

3


三、禁用Device Guard和Credential Guard

可以使用注册表项或组策略禁用Device Guard和Credential Guard。若要执行此操作,请参阅管理Windows Defender Credential Guard。

配置 Credential Guard - Windows Security | Microsoft Learn

键盘同时按下Win+R键,输入“gpedit.msc”,进入本地组策略编辑器,禁用“打开基于虚拟化的安全”,然后重启

Device Guard

Device Guard2


四、禁用基于虚拟化的安全性

6


五、使用组策略禁用VBS

7

bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} loadoptions DISABLE-LSA-ISO,DISABLE-VBS

bcdedit /set vsmlaunchtype off

TC3可以正常激活运行后,msinfo32.exe方式查询到的系统信息状态


六、在CMD管理员模式中,用命令行关闭Hyper-V

以管理员身份打开终端 运行命令 bcdedit /set hypervisorlaunchtype off  重启电脑 Hyper-V 服务就关闭了

CMD


七、修改注册表禁用VBS

Win+R打开“运行框”,输入“regedit”,进入注册表,进入以下路径

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard

VBS


将EnableVirtualizationBasedSecurity的值,修改为0,没有的话创建DWORD32设置,然后重启

VBS2


八、内核隔离设置

具体步骤可参考文档:隔离内核设置

同时需要关闭Windows系统的内存完整性设置:https://tr.beckhoff.com.cn/mod/book/view.php?id=3046&chapterid=11749

九、使用Power Shell将hyper-V服务启用再禁用

打开Windows PowerShell管理员窗口


输入Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All启用hyper-V
之后再输入Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All禁用