我们可以通过修改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可以免费去水印的软件,真正免费去水印软件大全,小编今天为大家推荐一下可以免费去水印的软件,用户们能够轻松的去除图片和视频的水印,需要的赶快来看看吧。
MindLine官方最新版是一款很棒的思维导图,该软件不仅界面很简洁,功能一目了然,方便用户展开操作。在MindLine官方最新版中,用户可以便捷地扩张分支,只需要点击加号,然后输入相应的文字,长...
千鹿设计助手集成AI功能,可轻松对接多款设计软件,帮助用户快速生成设计师需要的图像内容,缩短手动设计、编辑图像和处理日常任务的时间,显著提升工作效率。千鹿设计助手界面简洁明了,操作轻...
快手直播伴侣是一款功能多样的直播辅助软件,可以帮助主播进行一系列的直播活动。快手直播伴侣提供电商、游戏、团购等多种直播场景,满足更多主播的直播需求。软件界面简洁明了,操作轻松易上手...
易谱ziipoo是专业的乐谱制作软件,拥有乐谱自动排版、动态分谱查看等不同功能,让您可以轻松制作乐谱。易谱ziipoo还提供了乐谱制作播放、字体样式调整以及节拍小节编辑功能,满足您不同的乐谱调...
斗鱼PC客户端具有个性化弹幕样式、实时录制直播、画中画播放等功能,并支持用户与主播实时互动,带给用户全新的直播体验。斗鱼PC客户端提供了英雄联盟、绝地求生、王者荣耀等热门游戏直播内容,...
UpdatePack7R2(Win7更新补丁包)是一款专为Win7用户设计的更新离线补丁包,它汇聚了自发布以来的所有官方Windows更新,包含累积更新、安全补丁等。这些更新可以提供系统的稳定性、性能和安全性改...
发表评论
共0条
评论就这些咯,让大家也知道你的独特见解
立即评论以上留言仅代表用户个人观点,不代表万象系统之家立场