• 解决`SQLyog Trial`试用到期的问题(提供一个脚本解决方案)


    本文将总结SQLyog Trial试用到期的问题。

    其实解决起来很简单,就是将SQLyog相关注册表删掉即可

    一、要删除的注册表项

    Win+R打开运行,输入regedit回车,打开注册表
    HKEY_CURRENT_USER\SOFTWARE路径下,找到{d58cb4b1-47f3-45cb-a209-f298d0c3f756} 这个一串字符串的项
    (不确定大家的是否都一样,自己找找,找到包含InD110、InU值的)

    在这里插入图片描述
    删除这个项,即可解决问题

    二、写了个脚本干这个事儿

    每过14天都要手动删除一下这个,好像也还能接受,但我还是写了一个脚本来完成这项工作。
    直接上脚本内容(bat脚本

    @echo off
    
    title batch script for SQLyog
    
    REM 以管理员身份运行(开启后每次运行该脚本生成的快捷方式都会闪一下)
    REM %1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c "^&chr(34)^&"%~0"^&chr(34)^&" ::","%cd%","runas",1)(window.close)&&exit
    
    
    REM 请改为你本地SQLyog安装位置
    set sqlyog_dir=E:\Program Files\SQLyog Trial
    set sqlyog_app=%sqlyog_dir%\SQLyog.exe
    
    REM SQLyog注册表key,可能跟你的不一样,如果不一样,请替换为你的
    set sqlyog_reg_key=HKEY_CURRENT_USER\SOFTWARE\{d58cb4b1-47f3-45cb-a209-f298d0c3f756}
    
    if "%1"=="shortcut" (
    	call :delete_reg_key
    	call :start_sqlyog
    ) else (
    	call :create_shortcut
    )
     
    exit /b
    
    
    :delete_reg_key
    
    	REM 判断注册表是否存在,如果存在删除注册表项
    	reg query %sqlyog_reg_key%
    	if %errorlevel%==0 (
    	  reg delete %sqlyog_reg_key% /f
    	)
    	goto :EOF
    
    
    :create_shortcut
    
    	REM 快捷方式信息
    	set shortcut_name=SQLyog.lnk
    	set shortcut_folder=%UserProfile%\Desktop
    	set shortcut_path=%shortcut_folder%\%shortcut_name%
    	set shortcut_description=This is a shortcut created for the bat script, the script is mainly to delete the registry key about the trial period.
    
    	REM 判断快捷方式是否存在,如果不存在则创建之,存在则不创建
    	for %%I in ("%shortcut_path%") do (set existing_shortcut=%%~fI)
    
    	if exist "%existing_shortcut%" (
    		goto :EOF
    	)
    
    	REM 通过SQLyog.exe获取SQLyog的icon
    	set icon_file=%sqlyog_app%
    	set icon_index=0
    	set working_dir=%sqlyog_dir%
    	set the_scene=shortcut
    
    	REM 获取当前脚本的绝对路径
    	set script_path=%~f0
    
    	REM 开始菜单路径
    	set start_menu_dir=%ProgramData%\Microsoft\Windows\Start Menu\Programs
    
        REM 为当前脚本创建快捷方式(为了便于设别,且美观,设置快捷方式的图标为SQLyog的icon)
    	powershell -Command "$WshShell = New-Object -ComObject WScript.Shell; $Shortcut = $WshShell.CreateShortcut('%shortcut_path%'); $Shortcut.TargetPath = '%script_path%'; $Shortcut.WorkingDirectory = '%working_dir%'; $Shortcut.Arguments = '%the_scene%' ; $Shortcut.IconLocation = '%icon_file%,%icon_index%'; $Shortcut.Description = '%shortcut_description%'; $Shortcut.Save()"
    
    	REM 将创建的快捷方式,copy一份到开始菜单(需要管理员权限运行才能成功copy)
    	echo F | xcopy "%shortcut_path%" "%start_menu_dir%\%shortcut_name%" /y
    	
    	goto :EOF
    
    	
    :start_sqlyog
    
    	REM 启动应用程序并退出脚本
    	start "" "%sqlyog_app%"
    	
    	goto :EOF
    	
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78

    解释说明:
    1)理论上脚本放在任何位置都行,但建议放到SQLyog安装目录下;
    2)脚本有两处需要修改的地方:

    • SQLyog安装路径set sqlyog_dir=E:\Program Files\SQLyog Trial,修改为你自己的;
    • 注册表keyset sqlyog_reg_key=HKEY_CURRENT_USER\SOFTWARE\{d58cb4b1-47f3-45cb-a209-f298d0c3f756},如果跟我的不一样,修改为你自己的;

    3)脚本首次运行,会在当前用户桌面创建一个快捷方式,该快捷方式是链接到该脚本的,只是快捷方式的icon使用了SQLyog的icon。另外,如果你需要在【开始-菜单】也创建快捷方式,你需要以管理员的身份运行该脚本,否则可能创建不成功;
    4)快捷方式创建完成后,每次打开快捷方式,都会先去删除SQLyog的注册表项,然后再启动SQLyog程序,所以每次打开SQLyog程序,都是14天的试用期。

    三、最后

    其实也可以仅写一个删除注册表的脚本,然后配置到【任务计划程序】中,定期执行删除任务

    @echo off
    
    REM SQLyog注册表key,可能跟你的不一样,如果不一样,请替换为你的
    set sqlyog_reg_key=HKEY_CURRENT_USER\SOFTWARE\{d58cb4b1-47f3-45cb-a209-f298d0c3f756}
    
    REM 判断注册表是否存在,如果存在删除注册表项
    reg query %sqlyog_reg_key%
    if %errorlevel%==0 (
      reg delete %sqlyog_reg_key% /f
    )
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    关于如何创建定时任务,可参考:Windows 下创建定时任务执行Python脚本
    虽然文章是拿Python脚本举例,方法都是相通的,要学会举一反三

  • 相关阅读:
    [watevrCTF-2019]Cookie Store
    scala(自学-4)
    什么软件支持汇总和计算员工业绩
    CAdUiPaletteSet创建后乱码 2023/10/17 下午11:25:07
    Mysql事务隔离级别与MVCC(多版本并发控制)
    聚苏丹红Ⅲ膜/磺化聚醚醚酮膜/ SiO2/Ag纤维复合材料修饰多巴胺的研究
    跨界电商、游戏技与代理IP的关联
    HelpLook AI 升级!一键生成SEO设置关键要素
    不堆概念、换个角度聊多线程并发编程
    【观察】智能产业加速,为何AI算力要先行?
  • 原文地址:https://blog.csdn.net/B11050729/article/details/132844131