一、概述

首先,ViEmu试用版在安装时会记录安装的时间,用于判断是否已经过了限制的时间,这个时间记录在注册表中

以本人的机器(WIN7X64)为例,它记录在

HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{B9CDA4C6-C44F-438B-B5E0-C1B39EA864C4}的InprocServr32中,其值为

{1E26DF1F-98A2-A32A-F628-91FDEA8AF123}

(注,这两个ID在对于不同的ViEmu版本,在不同的机器上可能是不一样的)

这里有两个ID,一个我们称之为目录ID,在本文的例子中,其值为{B9CDA4C6-C44F-438B-B5E0-C1B39EA864C4},这个应该是与ViEmu的版本有关,对于某个特定的版本,这个值是一定的,

第二个我们称之为时间ID,在本文的例子中,其值为{1E26DF1F-98A2-A32A-F628-91FDEA8AF123},这里边就记录了安装的时间

二、方法

知道了这两个ID,那么解除30天限制的方法就很简单了,

第一个方法是解析出编码的机制,这样就能了解时间ID的真实含义,进而对其修改,实现解除限制的目的

第二个方法更简单粗暴,直接位的系统,应为:HKEY_CLASSES_ROOT\CLSID\{目录ID})

(注:网上还有其它文章提到,在删除该注册表项时需要同时删除C:\Users\用户名\AppData\Local\Identities目录下一个名称里带{}的文件夹,这个可以尝试一下,

本人没有进行这一操作)

(注2:第一种方法比较复杂,需要解析出编码对应的代码,有兴趣的话可以再尝试,下文中只介绍第二种方法

三、步骤

现在,我们只需要找到目录ID的具体值就可以了

首先,我们需要找到所ViEmu的VSHub.dll,目录ID记录在这个DLL文件里边,要找到这个文件可以用以下几种方法:

1:将下载的ViEmuVS2010-3.0.??.vsix后缀名改为zip,用压缩软件打开后,即可在压缩包中找到该DLL

2:若已经安装完成,在本地硬盘中查找VSHub.dll即可,WIN7系统下,该文件一般在C:\Users\用户名\AppData\Local\Microsoft\VisualStudio\10.0\Extensions\SymnumSystems SLU\ViEmu\3.0.?? 里

第二,使用Reflector(.net的反编译器,可以在网上下载)打开该DLL,找到VSHub命名空间下的Hub类,找到Initialize(RegistryKey)方法并点击进入,在对应的代码中,找到 ViEmuProt.InitializeLicenseStuff(this.m_productData);这一句代码,如下图所示:

(注:Initialize这个方法是在ViEmuTen.dll 中的ViEmuTenPackage类的Initialize方法中被调用的,这个是VS的插件机制,这里不再详述)

第三步:点击进入ViEmuProt.InitializeLicenseStuff这个方法,找到其中的vep_WriteTrialPeriodControlItemsIfFirstTime(_productData)函数,如下图所示(这个函数就是写注册表的函数)

第四步,再次点击进入该函数,如下图:

红色框所示的函数即为写注册表的函数,可以看到,这个CreateSubKey(name)函数中对应的name参数就是我们需要的目录ID,那么这个ID是怎么来的呢?

可以看到,这个参数是通过函数的第一条语句得到的(图中蓝色框)

(注:图中紫色框即为编码的机制,如果对上文提到的第一种方法有兴趣,可以从这里进入对应的代码,研究一下)

第五步:

点击进入GenerateTrialControlRegKeyName(_productData)函数(上图蓝框),如下图所示:

VS插件对应的product是0,所以,目录ID就是最下边那个{B9CDA4C6-C44F-438B-B5E0-C1B39EA864C4}

ViEmu For VS2010 3.0 解除30天限制的方法的更多相关文章

  1. ViEmu 3.6.0 过期 解除30天限制的方法

    下载:链接: http://pan.baidu.com/s/1c2HUuWw 密码: sak8 删除下面2个地方 HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{B9CDA4 ...

  2. NVIDIA-docker报错:docker-ce (= 5:18.09.0~3-0~ubuntu-xenial) but 18.06.0~ce~3-0~ubuntu is to be installed

    报错: The following packages have unmet dependencies: nvidia-docker2 : Depends: docker-ce (= 5:18.09.0 ...

  3. VS2010 项目属性的默认包含路径设置方法

    VS2010 项目属性的默认包含路径设置方法 分类: c++小技巧2014-01-10 10:16 1358人阅读 评论(0) 收藏 举报 c++ 有两种方法可以设置vs2010的默认包含路径 方法一 ...

  4. 64位win2003/win2008系统IIS6.0/7.5配置PHP的方法

    64位win2003/win2008系统IIS6.0/7.5配置PHP的方法 32位的win2003系统配置PHP,估计很多人都已经驾轻就熟了,不过当遇到64位的系统时,估计又会遇上新的问题了.本文记 ...

  5. C# 7.0 新特性2: 本地方法

    本文参考Roslyn项目中的Issue:#259. 1. C# 7.0 新特性1: 基于Tuple的“多”返回值方法 2. C# 7.0 新特性2: 本地方法 3. C# 7.0 新特性3: 模式匹配 ...

  6. XP/Win7下QTP11循环试用30天的破解方法

    XP/Win7下QTP11循环试用30天的破解方法. XP下:1.找到以下路径:C:\Documents and Settings\All Users\Application Data\SafeNet ...

  7. JIRA 6.0.1 (ZIP Archive)最新破解方法,绝对可用

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

  8. 关于github 0.6.2版本的使用方法

    貌似做为一名前端开发人员,没听过使用过github,node,vue就像落伍一样,本人也是在前端自摸自爬的路上越走越远了,经常在群里听大神们讨论vue,github,node,好生羡慕,没人教,没人带 ...

  9. ionic3.0--angular4.0 引入第三方插件库的方法

    ionic3.0 引入第三方插件 (swiper),方法很多,现详细说明下官方推荐(typings)做法. 1.全局安装Typings 1. npm install -g typings  2.搜索你 ...

随机推荐

  1. 浙江工商大学15年校赛I题 Inversion 【归并排序求逆序对】

    Inversion Time Limit 1s Memory Limit 131072KB Judge Program Standard Ratio(Solve/Submit) 15.00%(3/20 ...

  2. Week2(9月16日):动手做个简单的例子

    Part I:提问  =========================== 1.什么是ASP.NET MVC? 2.MVC的英文? 3.什么是模型? 4.什么是控制器? 5.什么是视图? 6.ASP ...

  3. oracle中if/else

    oracle中if/else功能的实现的3种写法   1.标准sql规范 一.单个IF 1. if a=... then ......... end if; 2. if a=... then .... ...

  4. 原生app与web app的比较

    http://www.2ee9.com/news/news_show_36_237.html http://zhidao.baidu.com/link?url=7lWq2tgqiMiDmsRd54hO ...

  5. 05-OC多态

    目录: 一.继承的缺陷 二.为什么使用继承 三.组合和聚合 四.多态 回到顶部 一.继承的缺陷 1 提高了程序的复杂度,维护性和扩展性低 2 破坏了类的封装性 回到顶部 二.为什么使用继承 1 代码复 ...

  6. NET Core 构成体系

    NET Core 构成体系 简析 .NET Core 构成体系 Roslyn 编译器 RyuJIT 编译器 CoreCLR & CoreRT CoreFX(.NET Core Librarie ...

  7. gethostbyname()函数说明

    gethostbyname()函数说明——用域名或主机名获取IP地址 包含头文件    #include <netdb.h>    #include <sys/socket.h> ...

  8. SDK Hello world(直接使用SDK封装)

    前言 将代码拆分了一下, 如果处理更多的消息也不怕看的眼花 SDK编程就是对各种Windows消息的处理 实验工程 /// @file exam_1.cpp /// @brief 查阅本地MSDN,  ...

  9. HDU4707:Pet(DFS)

    Problem Description One day, Lin Ji wake up in the morning and found that his pethamster escaped. He ...

  10. 基于visual Studio2013解决C语言竞赛题之0801信息输出

     题目