CTEX中的Win Edt xx过期,总是弹框的解决方法

由于要编辑中文的tex,尝试了几个不同版本的CTEX,结果都没有解决中文编译错误的问题,还将原来不会过期的Win Edt 7环境破坏了。恢复到原来的版本后,总是提示Win Edt 7过期,要购买授权。

试了网上提到的各种解决方案,都无法搞得,比如

    1、注册机,patch方法,直接无法识别WinEdt.exe。

    2、修改Exit.edt文件,加入删除注册表项的操作,不成功。但是这是搞成功的基础,网上有的都删的不彻底。    

    3、直接在注册表里面删除Win Edt和Win Edt 7两个key及下面的串。删完了,第一次运行可以,再运行就会回到老现象。

结合上面的尝试,发现结合2和3就应该能解决问题,3是不能自动化,要自己手动删,浪费时间。2是删的不彻底。有了这个概念后,剩下的就是在2的基础上,尽量删干净。

    首先,手动删除注册表里面Win Edt和Win Edt 7两个key及下面的串。

    然后,运行Win Edt,退出

    然后,查看注册表里面Win Edt和Win Edt 7两个key及下面的串,将其写到Exit.edt里面。

    用下面的代码删除串,以Win Edt 7的Install Root为例

IfStr("%@('HKEY_CURRENT_USER','Software','Code')", "", "=",>
     "RegDeleteKey('HKEY_CURRENT_USER', 'Software\', 'WinEdt 7');>
      DeleteFile('%B\WinEdt.skd');", "");
  RegDeleteKey('HKEY_CURRENT_USER', 'Software\', 'WinEdt 7');
    用下面的代码删除key,以Win Edt 7为例
IfStr("%@('HKEY_CURRENT_USER','Software\WinEdt 7','Code')", "", "=",>
     "RegDeleteValue('HKEY_CURRENT_USER', 'Software\WinEdt 7', 'Install Root');>
      DeleteFile('%B\WinEdt.skd');", "");
  RegDeleteValue('HKEY_CURRENT_USER', 'Software\WinEdt 7', 'Install Root');

    重复上面的代码,将删除所有相关的key和串的代码都加到Exit.edt中。为了保险起见,在End前后都加上这些删除代码。

    最后,运行Win Edt 7,退出。

    再打开试试,世界一下子清净了很多。退出,进入注册表看看,所有的项都没有了~~


注1:仅在CTX 2.9.2 + Win Edt 7.0测试,其他版本请谨慎使用。

注2:本文仅进行测试。为了正常使用,享受正版软件的相关功能和官方的技术支持,请购买授权。请务必支持正版,尊重知识产权。

你可能感兴趣的:(软件试用)