用途:tia-doctor 是面向 TIA Portal V21 及其模块化 Openness API 的手动、只读前置条件探测技能。仅在用户明确要求诊断、验证或调试本地 TIA Portal 自动化环境时使用。
主要能力:核心探测会检查常见 Siemens 安装路径下确切的 TIA Portal V21 可执行文件;V21 模块化 Public API 路径(PublicAPI\V21\net48);必需的模块化核心 Siemens.Engineering.Base.dll,以及文件/程序集版本证据和已安装的可选 Siemens.Engineering.* 模块;当前 Windows 用户是否属于 Siemens TIA Openness 本地组。注册表项仅作为补充证据,不能替代对确切 Portal 可执行文件或模块化核心程序集的检查。除非跳过,完整探测还会通过 py 或 python 检查 siemens_tia_scripting 是否可导入。
使用方式:完整探测运行 powershell.exe -NoProfile -ExecutionPolicy Bypass -File skills\tia-doctor\probe.ps1 -RequiredMajorVersion 21;仅检查 V21 C# Openness 核心(Python 不在范围内时)运行 powershell.exe -NoProfile -ExecutionPolicy Bypass -File skills\tia-doctor\probe.ps1 -RequiredMajorVersion 21 -SkipPython;任一命令加 -Json 可获得机器可读输出。
结果解读:pass 表示范围内的前置条件存在且可被静态探测使用;warn 表示可选探测未完成或非必需项缺失;fail 表示请求范围内必需的前置条件缺失或不可用。报告缺失项时应使用探测提供的修复文本,若结果已给出安装命令则不要自行编造。
限制:探测为只读,不得打开 TIA Portal、创建项目、将 Openness 程序集加载到当前进程、修改注册表键或组、安装工具或更改用户配置。静态存在性、版本元数据和组成员身份不能证明项目可被打开,也不能证明需要凭据的实时操作会成功。Python 是客户端/工具选择,并非直接使用 C# Openness 的前置条件;当该集成不在范围内时使用 -SkipPython。