去掉第三方弹框 2

我介绍过第一种去掉第三方弹框方式,就是利用API去掉,说白了就是模拟点击发送。

这种方法也是通常针对的是非NET动态库处理方式。

如果你使用NET的第三方控件或者插件的话,还有一种更好的方法,注入方法,确切的说应该是Hook(消息钩子)的方式。

为什么NET的第三方就可以,说白了还是以前强调过的,NET太垃圾了,随便一个反编译工具拿出来,你就想脱了外层包装的巧克力冰棒一样任人添。

正因为这样,除了你不想重写别人的代码,已经封装好的动态库,我还脱裤子放屁重新自己写一遍出来,就为了不弹出那些关于版权或者限制的弹框。

所以懒是有道理的,懒就得努力的解决当前的问题,让自己无后顾之忧。

首先嘛,当然是反编译了,但如果你有源码的话,可以查看源码,但既然有源码,你何不自己编译源码呢。

说白了,第三方库的源码重新编译得快慢取决于你想不想编译

下面就进入实际操作

有怎么一个库比如说DevExpress,人家是商业软件,每次打开弹出个版权警告,我觉得很合理,这个必须有。

去掉第三方弹框 2

但我看着就是烦,说实在的确实有点烦,网上都有破解了,怎么还会弹框。

这个弹框是代码触发的,破解的人估计没有找到这个界面,我是找到了,但人家就写在代码就是show窗体。

所以我们就由我说的那种方式来处理,这次我们会用到一个处理的动态库 Dotnetdetour,具体说明请参考原贴

那怎么处理呢,抄就对了,没事多抄一抄

通过各种CopyRight字眼你能定位到源码的位置

去掉第三方弹框 2

长得跟上面很像有没有,最终通过查找定位到了DevExpress.Utils.About命名空间下面AboutHelper类,不用我多说了吧

 [Monitor("DevExpress.Utils.About", "AboutHelper")]//你要hook的目标方法的名称空间,类名
  public static void Show(ProductInfo info, IWin32Window owner = null)//方法签名要与目标方法一致
{
            LogNet.LogInfo("弹框退散,吼~嘿~哈~");
}

当然在程序正常处理前还得加一句

DotNetDetour.Monitor.Install();

至于加在哪里,你爱加哪里加哪里,加对了,可以用,加不对,那就好好吃饭睡觉,不要成天想着玩游戏,有时间多看电影。

上一篇:关于解决DevExpress用DevExpress patch工具破解后经常弹出试用框的问题


下一篇:DevExpress WPF v20.2版本亮点放送——增强数据处理功能