无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 5896|回复: 26
打印 上一主题 下一主题

[求助] RAR自解压运行删除注册表的批处理,提示操作成功,实际不生效

[复制链接]
跳转到指定楼层
1#
发表于 2020-8-6 11:13:41 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
已关UAC

很简单的一条命令,删除OEM信息reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation" /f

pause

pause调试用的


初次执行提示成功的,但注册表里的信息还在。

再次执行就提示找不到项或值,但注册表里的信息还在。

[url=]deloeminfo1.exe[/url]

deloeminfo1.exe

253.34 KB, 下载次数: 11, 下载积分: 无忧币 -2

2#
发表于 2020-8-6 11:42:06 | 只看该作者
本帖最后由 guies 于 2020-8-6 11:45 编辑

很簡單阿,Windows 10 只關UAC,執行時還是User權限阿。只是右鍵以系統管理員身份執行不提示而已,跟Win7完全不一樣。
這個自壓縮也沒勾選 要求以系統管理員存取。如果有勾選就是管理員身份執行了。

所以我真的很不建議Win10關UAC,若真的要關的話要由群組管理原則或註冊表關掉。

点评

我是管理员用户啊 差了UAC,就不需要右健操作的啊。 而且,不用RAR打包。直接运行是生效的!!!  详情 回复 发表于 2020-8-6 12:46
回复

使用道具 举报

3#
发表于 2020-8-6 11:59:53 | 只看该作者
32位自解压在64位系统运行么

点评

[attachimg]462957[/attachimg] 64位的winRAR 在64位WIN10上操作的  详情 回复 发表于 2020-8-6 12:43
回复

使用道具 举报

4#
发表于 2020-8-6 12:27:06 | 只看该作者
同意楼上观点
你实际删掉的估计是HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\OEMInformation

点评

不是很明白,我指定路径,他删别的?  详情 回复 发表于 2020-8-6 12:40
回复

使用道具 举报

5#
 楼主| 发表于 2020-8-6 12:40:14 | 只看该作者
hua_wuxin 发表于 2020-8-6 12:27
同意楼上观点
你实际删掉的估计是HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\OEMInform ...

不是很明白,我指定路径,他删别的?

点评

64位系统下,32位程序对注册表HKLM\SOFTWARE\xxx的操作,会被系统强制重定向到HKLM\SOFTWARE\WOW6432Node\xxx。 你的自解压是32位的。[attachimg]462959[/attachimg]  详情 回复 发表于 2020-8-6 13:26
回复

使用道具 举报

6#
 楼主| 发表于 2020-8-6 12:43:32 | 只看该作者
江南一根葱 发表于 2020-8-6 11:59
32位自解压在64位系统运行么


64位的winRAR

在64位WIN10上操作的
回复

使用道具 举报

7#
 楼主| 发表于 2020-8-6 12:46:04 | 只看该作者
guies 发表于 2020-8-6 11:42
很簡單阿,Windows 10 只關UAC,執行時還是User權限阿。只是右鍵以系統管理員身份執行不提示而已,跟Win7完 ...

我是管理员用户啊
关了UAC,就不需要右健操作的啊。
而且,不用RAR打包。直接运行是生效的!!!
回复

使用道具 举报

8#
发表于 2020-8-6 13:07:24 | 只看该作者
http://bbs.wuyou.net/forum.php?m ... &fromuid=126605


if exist %windir%\SysWOW64 (start addwim.exe)else (start addwim.cmd)



addwim.exe里的addwim.cmd与外面的addwim.cmd什么区别也没有,重点是压成自解压时选64位模块。我一开始用winrar打成自解压缩包提示找不到bcdedit命令,查了下是因默认自解包执行批处理命令是32位环境,重定向到SysWOW64里面去。想了个办法:将addwim.cmd压缩成64位自解包;用批处理判断是否存在SysWOW64,存在运行addwim.exe不存在运行addwim.cmd 。

点评

我在制作32位程序的时候遇到过,不过我用了个淫招,貌似可以绕过这个机制, mklink %temp%\cmd.exe C:\windows\system32\cmd.exe 然后用%temp%\cmd.exe 调用  详情 回复 发表于 2020-8-6 13:32
回复

使用道具 举报

9#
发表于 2020-8-6 13:26:20 | 只看该作者
疯狂の石头 发表于 2020-8-6 12:40
不是很明白,我指定路径,他删别的?

64位系统下32位程序对注册表HKLM\SOFTWARE\xxx的操作,会被系统强制重定向HKLM\SOFTWARE\WOW6432Node\xxx。

你的自解压是32位的。



点评

受教了。感谢!!下午再测一下!  详情 回复 发表于 2020-8-6 14:38
回复

使用道具 举报

10#
发表于 2020-8-6 13:32:27 | 只看该作者
liu_zhenfeng 发表于 2020-8-6 13:07
http://bbs.wuyou.net/forum.php?mod=redirect&goto=findpost&ptid=416395&pid=3859480&fromuid=126605

...

我在制作32位程序的时候遇到过,不过我用了个淫招,貌似可以绕过这个机制,
mklink %temp%\cmd.exe C:\windows\system32\cmd.exe
然后用%temp%\cmd.exe 调用

评分

参与人数 1无忧币 +1 收起 理由
liu_zhenfeng + 1

查看全部评分

回复

使用道具 举报

11#
发表于 2020-8-6 14:14:18 | 只看该作者

其實從 Windows 8 開始關UAC就已經不是真正的管理員了


点评

你这是把UAC调到最低,不是关闭。 组策略关闭才是真的关闭。  详情 回复 发表于 2020-8-6 14:44
回复

使用道具 举报

12#
 楼主| 发表于 2020-8-6 14:38:06 | 只看该作者
hua_wuxin 发表于 2020-8-6 13:26
64位系统下,32位程序对注册表HKLM\SOFTWARE\xxx的操作,会被系统强制重定向到HKLM\SOFTWARE\WOW6432Node ...

受教了。感谢!!下午再测一下!
回复

使用道具 举报

13#
 楼主| 发表于 2020-8-6 14:44:12 | 只看该作者
guies 发表于 2020-8-6 14:14
其實從 Windows 8 開始關UAC就已經不是真正的管理員了

你这是把UAC调到最低,不是关闭。

组策略关闭才是真的关闭。

关闭UAC.jpg (408.08 KB, 下载次数: 103)

关闭UAC.jpg
回复

使用道具 举报

14#
发表于 2020-8-6 14:48:21 | 只看该作者
你的批处理多加一行,调用下64位reg.exe做删除就可以了。自解压继续保持为32位可以在32位和64位系统下通用。
if exist %SystemRoot%\Sysnative\reg.exe %SystemRoot%\Sysnative\reg.exe delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation" /f

注意上面是一行(被论坛排版强制换行了),delete后有空格。你原本的reg delete语句删除的是WOW6432Node下的OEMInformation,也是必要的,要保留。

点评

还有个疑问。如果我选上了64位的RAR自解压呢  详情 回复 发表于 2020-8-6 15:54
也就是说,调用64位的REG.EXE 才不会被强制得定向到WOW3264NODE是吧  详情 回复 发表于 2020-8-6 14:53
回复

使用道具 举报

15#
 楼主| 发表于 2020-8-6 14:53:53 | 只看该作者
hua_wuxin 发表于 2020-8-6 14:48
你的批处理多加一行,调用下64位reg.exe做删除就可以了。自解压继续保持为32位可以在32位和64位系统下通用 ...

也就是说,调用64位的REG.EXE
才不会被强制得定向到WOW3264NODE是吧

点评

是  发表于 2020-8-6 15:21
回复

使用道具 举报

16#
 楼主| 发表于 2020-8-6 15:54:49 | 只看该作者
hua_wuxin 发表于 2020-8-6 14:48
你的批处理多加一行,调用下64位reg.exe做删除就可以了。自解压继续保持为32位可以在32位和64位系统下通用 ...

还有个疑问。如果我选上了64位的RAR自解压呢

点评

if exist那行此时条件不成立,后面的……reg.exe delete不执行 然后你原来的reg delete这时就是调用的64位reg.exe了,会删除你原本想删的地方,但WOW6432Node下的OEMInformation就没管了。  详情 回复 发表于 2020-8-6 16:16
回复

使用道具 举报

17#
发表于 2020-8-6 16:16:32 | 只看该作者
本帖最后由 hua_wuxin 于 2020-8-6 16:19 编辑
疯狂の石头 发表于 2020-8-6 15:54
还有个疑问。如果我选上了64位的RAR自解压呢

if exist那行此时条件不成立,后面的……\reg.exe delete不执行

然后你原来的reg delete这时就是调用的64位reg.exe了,会删除你原本想删的地方,但WOW6432Node下的OEMInformation就没管了。

回复

使用道具 举报

18#
发表于 2020-8-6 17:02:37 | 只看该作者


PE的話,我是用這一條,讓32(64)位元的程式如果找不到會自動去64(32)位元找,因為64PE通常32位元的System不會放太多.exe
  1. reg add "HKLM\SYSTEM\ControlSet001\Control\Session Manager\Environment" /f /v "Path" /t REG_EXPAND_SZ /d "%%SystemRoot%%\system32;%%SystemRoot%%;%%SystemRoot%%\System32\Wbem;%%SystemRoot%%\SysWOW64;%%SystemRoot%%\sysnative;"
复制代码
如果是系統的話,我則是↓這樣子,32位元和64位元不管哪個執行,全部都可用。
  1. Windows Registry Editor Version 5.00

  2. [HKEY_LOCAL_MACHINE\SOFTWARE\Radmin\v3.0\Server]
  3. "HideTrayIcon"=dword:00000001
  4. "LicenseText"="There is unlimited license"

  5. [HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Radmin\v3.0\Server]
  6. "HideTrayIcon"=dword:00000001
  7. "LicenseText"="There is unlimited license"
复制代码






回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-27 04:48

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表