上周三下午一个做产线改造的朋友给我打电话说他那台工控机上的博途V16突然启动不了了弹窗就一句话——找不到许可证step7。这台机器之前一直好好的项目能开、能编译前一天晚上系统自动更新重启之后就这样了。他第一反应是授权丢了翻出U盘插上去重插了一遍没用又想着是不是项目文件损坏差点把整个项目重装一遍。我让他先别动远程连过去看了十分钟问题其实很典型博途V16还在授权也还在坏掉的是中间那个负责“传话”的角色——Automation License Manager装的是V6.0版本太老跟V16的授权检测对不上话。最后的处理办法说出来简单得有点让人泄气把Automation License Manager V6.0卸干净重启装一遍V6.2再重启授权自己就回来了。整个过程不到二十分钟比重装博途省下大半天。这篇东西就是把这二十分钟里发生的事掰开揉碎讲清楚。如果你也是做电气自动化、PLC编程、产线调试这一行的手上有多台装了博途V13到V16不同版本的机器或者你正卡在“许可证明明买了、机器也认得出U盘、但软件就是说找不到”这种状态里下面的内容应该能直接用上。我会先讲清楚这套授权体系是怎么运转的、为什么会在这个节点上断掉再给一份可以照着抄的操作步骤最后把我和同行踩过的坑整理成一份速查表。不管你是刚入行的新手还是带过项目的老手看完至少能判断出问题出在哪一层不至于一上来就动重装这个“大手术”。1. 先把病根找准博途V16的许可证检测到底走了哪条链路1.1 三个角色主程序、授权管理器、授权载体很多人把“博途找不到许可证”理解成“授权文件丢了”其实这两件事不是一回事。博途的授权体系里至少有三个互相独立的角色任何一个环节出问题界面上给出的提示都差不多这也是为什么这个报错特别容易让人误判。第一个角色是博途主程序本身。它在启动阶段会做一次授权自检检查当前这台机器上有没有它需要的产品授权比如STEP 7 Basic、STEP 7 Professional、WinCC Comfort/Advanced、PLCSIM、Startdrive这些每一个都有独立的授权条目。注意博途自己并不直接去读U盘或者读硬盘上的密钥文件它只是向下面一层“发问”。第二个角色就是Automation License Manager业内一般简称ALM中文界面里叫“自动化授权管理器”。它是独立的组件有自己的安装包、自己的系统服务、自己的界面。它的职责是管理本机所有授权密钥的读出、写入、转移和状态显示。博途问它“有没有STEP 7 Professional的授权”它去查本机密钥库返回一个结果。这一层是整个链条里最脆弱的一环因为它跟操作系统版本、安装顺序、服务状态都强相关。第三个角色是授权载体也就是实际存放密钥的地方。可能是本机硬盘上的一个隐藏区域可能是一支专用的授权U盘也可能是网络上的浮动授权服务器。载体本身一般不坏除非物理损坏或者被误格式化。这三个角色的关系你可以理解成博途是拿着身份证去办事的人ALM是查验身份证的窗口授权载体是身份证本身。现在的情况是身份证好好的人也站在窗口前但窗口的工作人员换了一茬、业务规则更新了老窗口认不出新证件的防伪标记于是回了一句“查无此人”。1.2 老版本ALM为什么会在V16上“失灵”这个问题值得多说两句因为搞明白原因你以后遇到类似情况就能举一反三。ALM是一个跟着博途版本走的配套组件每个大版本的博途安装介质里都会自带一个当时验证过的ALM版本。V13、V14时期配的是更早的ALMV15、V15.1时期常见的是V5.0和V6.0之间的版本到了V16安装介质里带的通常是V6.0的某个修订版。问题就出在这里V6.0这个版本号底下其实有好几个内部修订早期修订对新格式授权条目的识别能力有限遇到后来签发的密钥、或者系统更新后加密组件发生变化的情况就会出现“能打开界面、能看到密钥列表、但博途读不到”的怪现象。更麻烦的是ALM的升级不是简单的“装个新版本覆盖”就完事。V6.0和V6.2在系统里注册的服务名称相同、安装目录相同、注册表键位也高度重叠直接覆盖安装有相当概率出现两个版本的文件混在一起的情况。表现出来就是ALM界面能打开但密钥列表是空的或者列表里有密钥状态显示“不可用”或者干脆界面一片空白点了没反应。这时候你再看博途那边报错依旧。还有一个容易被忽略的点ALM依赖一个后台服务来维持授权状态的实时读取。系统更新、杀毒软件清理、某些优化工具“精简开机项”都可能把这个服务的启动类型从自动改成手动甚至禁用。服务没起来ALM界面可能还能开因为界面进程是独立的但读授权就会失败。这种情况在笔记本上特别常见因为笔记本经常被各种管家类软件“优化”。1.3 报错出现的时间点和受影响范围判断问题层级看报错出现的时机很有用这是我在现场最常用的一个快速分诊方法。如果博途图标双击之后 splash 画面刚过、主界面还没出来就弹“找不到许可证step7”那基本可以锁定在授权检测这一层也就是ALM和授权载体的问题博途主程序本身大概率是好的。如果是主界面出来了打开项目、点编译或者点下载的时候才报错那要考虑的方向就多一些可能是项目里用到的某个选件比如某些工艺包、某些库缺少对应授权也可能是授权在会话过程中被其他程序抢占了。如果是打开某个特定项目才报错、新建空项目正常那更可能是项目关联了旧版本组件跟ALM版本关系不大。我朋友那台机器属于第一种启动即报错所有项目都打不开连“新建项目”都进不去。这种情况下受影响的范围其实是整套软件STEP 7用不了WinCC也起不来PLCSIM仿真更不用提基本上这台机器在问题解决前就是个摆设。对于赶工期的现场来说这个代价不小所以我一直建议做自动化的同行机器上至少保留一套能用的备用环境或者把关键授权和安装介质集中管理别等出事再找。2. 方案取舍为什么我最终选“卸V6.0、装V6.2”这条路2.1 我试过和不建议试的几种做法遇到这个报错网上能搜到的“偏方”不少我把常见的几种和我自己的实测结果列一下你可以对照着看避免走弯路。处理方式操作成本实际效果我的评价拔插授权U盘、换USB口几分钟偶尔有效仅限接触不良或供电不足值得先试成本最低重装博途V162到4小时多数情况无效因为问题不在博途本体不建议性价比极低手动改注册表指向授权路径半小时起风险高改错一处整个授权体系都乱强烈不建议直接装V6.2覆盖V6.0十几分钟有时能成但残留文件容易导致界面异常可以作为应急不推荐作为标准流程卸V6.0、重启、装V6.2、再重启二十分钟左右我实测多次都干净利落推荐作为标准处理流程系统还原到更新前视还原点而定有效但会丢其他软件的更新最后手段重装博途这条我特别想说一句。很多人一遇到授权问题就想着重装主程序觉得“大重装治百病”。但博途的安装包大、组件多装一遍动辄两三个小时装完还要重新配置、重新装选件、重新验证项目兼容性。更关键的是如果问题真的出在ALM这一层你把博途重装十遍也没用因为ALM是独立组件重装博途的过程中它可能压根不会被替换或者被替换成同一个有问题的版本。直接覆盖安装V6.2这个做法我也试过。有几次确实一次就成了但后续出现过ALM界面打开后密钥列表空白、需要手动刷新好几次才显示的情况。后来我拆开看安装目录里同时存在V6.0和V6.2的文件服务注册指向的是其中一个但界面加载的是另一个两边对不上。这种“表面好了、底下埋雷”的状态最坑人可能过两周又犯而且更难查。所以我现在一律走“先卸干净、再装新的”这条路多花五分钟省下后面一堆麻烦。2.2 版本对应关系与选型依据ALM的版本选择不是越新越好而是要跟你的博途版本、操作系统版本匹配。下面这张表是我根据这些年装过的机器整理的常见对应关系具体以你手上安装介质里自带的版本为准这里只作为判断参考。博途版本常见配套ALM版本备注V13 / V13 SP1V4.x 或更早老机器上常见升级系统时要特别注意V14 / V14 SP1V5.0 左右部分机器已开始用V6.0V15 / V15.1V5.0 至 V6.0过渡期版本比较杂V16V6.0 早期修订出问题的重灾区建议升到V6.2V17及以上V6.2 或更高新装机器一般不会踩这个坑选V6.2的理由很直接它对授权条目的识别范围比V6.0早期修订宽对较新操作系统的兼容性也更好同时向下兼容V15、V16这些版本。也就是说你把ALM升到V6.2机器上如果还装着V15.1一般也不受影响。这一点很重要因为很多做项目的机器上是多版本共存的V15.1跑老项目、V16跑新项目你不可能为了修V16把V15.1搞坏。至于操作系统64位系统上ALM的安装路径和32位不同卸载时的残留位置也不一样这个后面实操部分会细说。如果你机器上同时装过32位和64位的博途组件老机器上确实有这种情况那残留清理要更仔细一些。2.3 动手前的准备清单我不建议你一上来就点卸载。花五分钟做下面这几件事能避免很多“卸了装不回来”的尴尬。第一确认授权在哪。打开ALM界面看“授权”选项卡里列出的密钥记下产品名称和序列号后几位。如果密钥在U盘上确认U盘能被正常识别如果在本机记下大概位置。这一步的目的是万一后面出问题你知道自己要找回什么。第二关掉所有相关进程。博途主程序、PLCSIM、WinCC运行系统、以及任何可能占用授权管理服务的程序全部退出。任务管理器里搜一下有没有残留的授权相关进程有就结束掉。第三建一个系统还原点。这一步不是形式主义我见过卸载过程中系统蓝屏、回来之后授权服务起不来的情况。有还原点最坏情况还能退回去。第四准备好V6.2的安装包。来源可以是博途安装介质里的Support目录也可以是厂商发布的独立更新包。注意核对文件完整性安装包损坏导致的安装失败排查起来非常费劲。第五确认你有本机管理员权限。ALM的安装和卸载都要写系统目录、注册服务普通账户权限不够中途弹UAC而你又不是管理员会卡在半路。第六如果这台机器上有正在跑的项目先把项目文件备份到移动硬盘或者网络位置。虽然正常情况下卸载ALM不会动项目文件但现场情况复杂多一层保险不吃亏。提示如果你的机器开启了系统盘加密或者某些安全软件的“安装拦截”在卸载和安装ALM期间建议临时关闭装完再打开。这类拦截经常把服务的注册动作当成可疑行为拦掉表现就是“装完了但服务不存在”。3. 实操全过程从卸载到重装一步一步照着做3.1 卸载V6.0顺序和残留清理是关键第一步走正规卸载通道。控制面板里的“程序和功能”找到Automation License Manager右键卸载。不要直接删安装目录那样服务注册和注册表项会留在系统里后面装V6.2的时候大概率冲突。卸载过程中如果弹出“有程序正在使用该组件”说明还有进程没退干净。回到任务管理器找授权管理相关的进程结束掉再继续。实在找不到重启一次再卸这是最稳妥的做法。第二步卸载完成后必须重启。这一步很多人省掉觉得没必要。但ALM的服务在卸载时只是被标记为删除实际的文件句柄要等重启才释放。你不重启直接装V6.2安装程序检测到旧文件还在可能走“修复”逻辑而不是“全新安装”装完还是老样子。第三步重启后检查残留。打开文件资源管理器看两个位置一个是程序安装目录下公共文件里的授权管理文件夹另一个是系统盘的程序数据目录下对应的配置文件夹。如果还有残留手动删掉。删之前确认里面没有你自己的授权备份文件正常情况下授权不放在这两个位置但保险起见看一眼。第四步检查服务列表。用管理员身份打开命令行敲一行命令看看服务还在不在sc query Automation License Manager Service如果返回“指定的服务未安装”说明卸干净了。如果还能查到状态显示为已停止或者正在运行那就再执行一次删除sc delete Automation License Manager Service这条命令执行完再查一次确认服务没了。注意服务名要和系统里显示的完全一致包含空格所以命令里一定要加引号。第五步检查注册表。这一步有点进阶新手可以跳过但如果你之前覆盖安装过、或者装过多个版本的ALM建议看一眼。注册表编辑器里搜索“Automation License Manager”相关的键正常卸载后应该没有残留的版本信息键。有的话删掉但一定要先导出备份注册表改错的影响比想象中大。我在这步踩过一次坑某台机器上装过两个版本的ALM卸载V6.0之后注册表里还留着V6.2的版本号结果新装V6.2的时候安装程序以为已经装过了直接跳过安装最后服务没起来折腾了半天才反应过来。所以多版本共存过的机器残留检查这一步别省。3.2 安装V6.2路径、权限、重启三件事安装包准备好之后右键“以管理员身份运行”。这一步别偷懒直接双击权限不够会导致服务注册失败装完表面成功、实际不能用。安装路径一般保持默认就行不要改成带中文或者带空格的目录。我见过有人为了“整洁”把软件都装到一个中文名的文件夹里结果ALM的服务启动参数解析出错服务起不来。默认路径是最稳的。安装类型选“完整安装”。有些安装包会提供“仅安装客户端”之类的选项那是给网络浮动授权环境用的单机环境选了会导致本机读不到授权。安装过程中如果弹出防火墙或者安全软件提示一律允许。ALM的服务需要在本地回环上通信被拦掉就会出现“界面能开、读不到授权”的现象。安装完成后安装程序一般会提示重启。这次重启不要省。重启之后服务才会以新的配置启动。重启完打开服务列表看一眼授权管理服务的启动类型应该是“自动”状态是“正在运行”。如果不是手动改成自动并启动。如果服务启动失败先看系统事件查看器里的应用日志通常会有具体的错误码比如找不到模块、权限不足之类的。这类问题的处理方式后面速查表里会列。3.3 授权重新识别与博途端的验证服务起来之后打开ALM界面。正常情况下授权选项卡里会列出本机识别到的所有密钥条目状态显示为可用。如果列表是空的先点一下刷新如果还是空检查授权载体是不是插好了、U盘是不是被系统识别成了别的设备。如果你用的是本地授权密钥应该在列表里直接出现。如果之前授权是在旧版本ALM下写入的新版本一般能直接识别不需要重新写入。这一点可以放心卸载重装ALM不会清掉本机的授权数据授权存在独立的存储区域跟ALM程序本身是分开的。如果列表里有密钥但状态显示为不可用右键看一下属性通常会提示原因比如“密钥已过期”“密钥与本机不匹配”“密钥已被转移到其他机器”。这些提示分别对应不同的处理方式不能一概而论。授权识别正常之后打开博途V16。启动过程会比平时稍慢一点因为它在重新建立跟ALM的连接。进主界面之后先别急着开项目新建一个空项目随便加一个PLC设备然后点编译。能编过说明STEP 7的授权检测通过了。再进一步验证打开“帮助”菜单里的“关于”看一下产品信息里显示的授权状态。有些版本会在这里列出当前激活的授权条目和到期时间一目了然。如果编译能过但下载还是报错那问题就不在授权这一层了可能是通信设置、PLC型号不匹配、或者项目本身的问题需要另外排查。别把什么问题都往授权上套。4. 收尾排查装完还是报错怎么查4.1 按“服务—授权—程序”三层往下捋不是每次卸载重装都能一次成功我自己就遇到过装完V6.2、服务也起来了、授权也显示了但博途还是报错的情况。这种时候不要慌按层次往下捋很快能找到卡点。第一层看服务。命令行查一次服务状态确认是运行中。再打开服务管理器看启动类型是不是自动。有些机器上装完是手动重启之后没自动起来博途启动时服务不在自然读不到授权。第二层看授权管理器界面。能不能打开、能不能列出密钥、密钥状态是否可用。如果界面打不开说明ALM程序本身有问题可能要修复安装如果界面能开但列表空问题在授权载体或者服务通信如果列表有但状态异常问题在密钥本身。第三层看博途端的反馈。博途里有个“授权管理”的入口点进去会调用ALM看它显示的信息跟ALM界面是否一致。有时候两边显示不一样说明博途缓存的授权状态没刷新重启博途或者重启机器能解决。这三层捋下来基本能定位到具体是哪一环。我一般的顺序是先看服务再看ALM界面最后看博途因为从下往上查效率最高上面那层的表现往往是下面那层问题的结果。4.2 常见问题速查表下面这张表是我和同行这些年攒下来的覆盖了这类操作中最容易撞上的情况。遇到问题先对号入座能省不少时间。现象可能原因处理动作卸载时报“程序正在使用”授权服务或相关进程未退出任务管理器结束进程或重启后再卸装V6.2时报错误码1603权限不足或旧版本残留用管理员身份运行清理残留后重试装完服务不存在安全软件拦截了服务注册临时关闭拦截修复安装或重装ALM界面能开但一片空白版本文件混装界面加载错版本彻底卸载清残留重装授权列表有密钥但显示不可用密钥与本机不匹配或已过期查看密钥属性按提示处理博途仍报找不到许可证博途缓存未刷新重启博途必要时重启机器只有某些功能报错缺少对应选件授权核对项目用到的组件补齐授权换机器后授权失效单机授权绑定机器按许可方式做授权转移服务启动后又自动停止依赖服务未启动或文件损坏查事件日志修复安装授权U盘识别不稳定USB供电或接口问题换后置USB口避免用扩展坞4.3 几条容易被忽略的细节第一个细节系统时间。授权校验会读系统时间如果机器时间被改得离谱比如跳到几年后可能触发“授权过期”的误判。我遇到过一次一台长期不联网的工控机主板电池没电了每次开机时间都回到出厂日期结果授权时好时坏。换电池、校准时间之后就好了。这个坑很隐蔽因为报错信息不会告诉你是时间问题。第二个细节多版本共存。机器上同时装着V15.1和V16的时候两个版本共用同一个ALM。你把ALM升到V6.2V15.1一般也能正常用但如果V15.1是很老的修订版可能会出现兼容问题。这种情况我的建议是先确认V16能用再打开V15.1的项目验证一下有问题再单独处理别在装之前就把自己吓住。第三个细节虚拟机。有些人习惯在虚拟机里跑博途虚拟机快照回滚之后授权状态可能跟快照时间点对不上表现出来也是找不到许可证。这种情况的处理方式跟物理机不同简单卸载重装不一定管用因为授权载体可能是虚拟的USB设备。我的建议是虚拟机里尽量用浮动授权或者在做快照之前先把授权状态确认清楚。第四个细节别乱用“授权修复”工具。网上有些所谓的修复脚本原理是改注册表或者替换系统文件短期看着有效长期会把授权体系搞得更乱。这类工具我一次都没推荐过出了问题的机器反而更难救。5. 长期习惯让这类问题少发生5.1 版本台账与安装介质管理我现在接手的每台工控机都会在硬盘上留一个不起眼的文本文件记录这台机器装了什么版本的博途、什么版本的ALM、什么时间装的、授权是本地还是U盘、操作系统版本号。听起来很土但真出事的时候这份台账能让你在五分钟内判断出“是不是最近哪个更新引起的”而不是从头查起。安装介质也要留。博途的安装包动辄十几G很多人装完就删了等出问题想重装发现还得重新下载。我的做法是每装一个版本把安装介质里的ALM独立安装包单独拷出来按版本号命名集中放在一个移动硬盘里。这个东西体积不大关键时刻能救急。我那个硬盘里现在躺着从V4.x到V6.2一堆版本帮同行救过至少五六次场。另外系统更新要留个心眼。Windows的大版本更新之后授权类软件出问题的概率明显上升因为底层组件变了。我的习惯是更新之前先建还原点更新之后立刻打开博途验证一次确认没问题再继续用。花五分钟避免大麻烦。5.2 授权备份与机器迁移的正确姿势授权能不能备份这个问题问的人特别多。答案要分情况本地授权的密钥存储在独立区域不能像拷贝文件那样直接复制但ALM提供了正规的转移功能可以把授权从本机转移到U盘或者按许可协议允许的方式在机器之间移动。我的建议是新机器部署的时候优先考虑把授权放在专用U盘上机器本身不存授权。这样换机器、重装系统都不影响授权U盘插上就能用。缺点是U盘要保管好丢了麻烦优点是灵活特别适合经常跑现场的人。如果授权必须放在本机那就在装机完成、授权激活之后立刻做一次完整的系统备份镜像级别把这份备份单独存放。以后系统出问题恢复镜像比重新装软件、重新激活授权快得多也稳得多。迁移机器的时候先在旧机器上按正规流程把授权转移出来确认新机器识别正常之后再处理旧机器。顺序反了容易造成授权状态混乱两边都用不了。这个操作有次数限制别反复折腾转移之前想清楚。最后再分享一个我自己的习惯每次处理完这类授权问题我都会在机器的台账文件里补一行写清楚“某年某月某日因某某现象卸载ALM V6.0重装V6.2处理后正常”。日积月累这份记录就成了我自己的一本故障字典。下次再遇到类似现象翻一眼就知道大概率和上次是同一个原因不用重新推理一遍。这比任何排查手册都管用因为上面写的都是你自己机器上真实发生过的事。
阅读完成 · 觉得有帮助?