系统之家 - 系统光盘下载网站!

去除水印及弹窗工具 V1.3 免费版

  • 大小:877.89 KB
  • 语言:简体中文
  • 授权:免费软件
  • 星级评价 :
  • 软件分类:系统其它
  • 更新:2021-12-08
  • 支持系统:WinAll、Win10、Win7、WinXP
  • 安全检测: 360安全卫士 360杀毒 电脑管家
  • 标签 : 系统其它
  • 软件介绍
  • 相关专题
  • 相关教程
  • 下载地址
  • 特色推荐
  • 网友评论

  我们可以通过修改mui文件去除一些预览版显示字样,但是随着系统的版本越来越高,传统的修改MUI文件方法已经无效。这里就为大家带来一款全新的去除水印和弹窗的小工具,有需要的可以下载。

去除水印及弹窗工具

使用说明

  一、LoadStringW函数

  windows在窗体上显示的字符串大部分是从mui文件里提取,比如上面的① 里面,就是winver.exe的同名文件winver.exe.mui里提取。

去除水印及弹窗工具

  怎么取呢,就是通过user32.dll里的一个函数LoadStringW,可以去MSDN了解下这个函数的具体定义,各个参数分别代表什么。

  比如我要取出101中的“Windows”,通过代码实现就是:

  wchar_t lpBuff[128];

  HINSTANCE handle = LoadLibraryW(L“C:\\Windows\\System32\\zh-CN\\winver.exe.mui”);

  int ret = LoadStringW(handle,101,lpBuff,128);

  复制代码

  这个lpBuff缓冲就是放读取到“Windows”字样。

  知道这个原理,我们就可以对一些不想要的字符串进行拦截处理。比如这里,当读取资源102的时候,把“评估副本,过期时间”给清空掉。

  拦截方法大致是这样,具体代码看我的github。

  int WINAPI myLoadStringW(HINSTANCE hInt, UINT uid, LPWSTR lpBuffer, int sizeBuffer)

  {

  int res= DLoadStringW(hInt, uid, lpBuffer, sizeBuffer);

  if (uid == 102)

  {

  memset(lpBuffer, ‘\0’, sizeBuffer);

  }

  return res;

  }

  复制代码

  memset就是用来清空当读到资源id102的时候的内容。

  二、BrandingFormatStringForEdition函数

  图中的②处的一整套字符串也是通过上面的LoadStringW从shell.dll.mui中读取。

去除水印及弹窗工具

  但是与上面不同的是这里带了个变量:“%WINDOWS_LONG%”,这个就是用来获取Windows版本名称的。从哪里来的呢,通过调试发现是从winbrand.dll的函数BrandingFormatStringForEdition调用而来。

  过程就是:上代码

  wchar_t lpBuffer[128] = L“%WINDOWS_LONG%”;

  wchar_t* result = BrandingFormatStringForEdition)(lpBuffer, EditionId, 128);

  复制代码

  这里的EditionId就是平时说的skuid,版本ID,你想显示什么都可以在这个EditionId上动手脚。

  但这里只是想把“Insider Preview”字样去掉:

  wchar_t* WINAPI myBrandingFormatStringForEdition(const wchar_t* lpBuffer, int EditionId, unsigned int size)

  {

  wchar_t* res = pBrandingFormatStringForEdition(lpBuffer, EditionId, size);

  if (wcsstr(res, L“ Insider Preview”) != 0)

  {

  //省略替换的代码

  }

  return res;

  }

  复制代码

  类似的还有“%MICROSOFT_COMPANYNAME% %WINDOWS_GENERIC%”、“%WINDOWS_COPYRIGHT%”等等。

  三、去除过期时间字样

  剩下就是图中的③,日期加时间。

  与时间有关的函数就那么几个:FileTimeToSystemTime、FileTimeToLocalFileTime、GetTickCount、GetDateFormat、GetTimeFormat这些。

  不管它的通过什么算法获取过期时间或者怎么判断系统当前是否已经过期,你总得定义输出的格式。只要把GetDateFormat、GetTimeFormat拦住,你怎么修改格式都可以。甚至消除掉:

  int WINAPI myGetDateFormatW(LCID Locale, DWORD dwFlags, const SYSTEMTIME* lpDate, LPCWSTR lpFormat, LPWSTR lpDateStr, int cchDate)

  {

  int res = DGetDateFormatW(Locale, dwFlags, lpDate, lpFormat, lpDateStr, cchDate);

  memset(lpDateStr, ‘\0’, cchDate);

  return res;

  }

  复制代码

相关专题

  • 可以免费去水印的软件
2022可以免费去水印的软件 真正免费去水印软件大全

可以免费去水印的软件 更多+

2022可以免费去水印的软件,真正免费去水印软件大全,小编今天为大家推荐一下可以免费去水印的软件,用户们能够轻松的去除图片和视频的水印,需要的赶快来看看吧。

下载地址

  • PC版

特色推荐

厂商其他下载

  • 电脑版
  • 安卓版
  • iOS版

发表评论

0

没有更多评论了

评论就这些咯,让大家也知道你的独特见解

立即评论

以上留言仅代表用户个人观点,不代表系统之家立场

其他版本

更多+

最新软件

热门系统推荐

官方交流群 软件收录

去除水印及弹窗工具正在下载,用户还下载了

关闭