找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 5575|回复: 18

[文本处理] 查看文件 FriendlyTypeName 对应 字符串脚本的讨论和后续开发!

[复制链接]
发表于 2026-9-23 17:05:25 | 显示全部楼层 |阅读模式
本帖最后由 jiavip 于 2026-9-23 17:46 编辑

近段时间鄙人都在玩注册表嘛!
多番研究发现程序文件里的,FriendlyTypeName 对应 字符串!
如 :
@notepad.exe,-470 得出的是。。“新建文本文档“
@powershell.exe,-108  = 使用 PowerShell 运行
@powershell.exe,-102 = Windows PowerShell ISE (x86)
@powershell.exe,-101  = Windows PowerShell ISE
那么,有没有办法写一个脚本来获取 文件里的FriendlyTypeName字符串呢?
或者有什么程序工具可以列出程序里的 FriendlyTypeName字符串?
我知道 一些个 EXE 资源提取 &查看 &修改工具可以做到!
但是那样太复杂了,,,,
我的意思是,,搞个专项工具?或脚本?,,
至于怎么查看  @mspaint.exe,-59419 =  BMP 图像  鄙人用的是很笨的办法。
新建一个注册表项,可以指定位置,或指定文件后缀,,
然后用  @isoburn.exe,-352 表达默认值,然后,在该后缀的文件
或位置上 点击右键 即可得出对应的 "Windows 光盘映像刻录机" 字符


-------------------扔一个鄙人临时写的样板吧!-------------代码,使劲的敲啊敲,,,,
  1. @Echo off
  2. Echo. 输入 DEL 删除 “查看FriendlyTypeName字符”注册表,不分大小写。
  3. Echo.输入你要查看的文件格式如 @notepad.exe,-470 或 @shell32.dll,-12708
  4. Set/p d=..........................:
  5. if "%d%"=="" Set d=@notepad.exe,-470
  6. if /i "%d%"=="del" REG DELETE "HKEY_CLASSES_ROOT\DesktopBackground\Shell\jiavip" /f & Pause>Nul & Exit
  7. Reg add "HKEY_CLASSES_ROOT\DesktopBackground\Shell\jiavip" /f /v "MUIVerb" /t REG_EXPAND_SZ /d "查看FriendlyTypeName字符"
  8. Reg add "HKEY_CLASSES_ROOT\DesktopBackground\Shell\jiavip" /f /v "SubCommands" /t REG_SZ /d ""
  9. Reg add "HKEY_CLASSES_ROOT\DesktopBackground\Shell\jiavip\Shell\jiavip" /f /ve /t REG_EXPAND_SZ /d "%d%"
  10. cls
  11. Echo.好了回到系统桌面点击右键,
  12. Echo.会有一个 “查看FriendlyTypeName字符”的项,
  13. Echo.它的子项里显示的字符,
  14. Echo.就是对于的 FriendlyTypeName 字符。
  15. Pause>Nul
复制代码


-------------------存 ANSI 编码,XXXXXXX.BAT--


那么延续上面的问题,有什么工具或脚本可以 枚举出 程序里全部的 FriendlyTypeName 字符呢?
各位大神门,往这个方向,给点思路和例子,,,,呗!
或直接扔成品也可以啊。别让老小一个人瞎琢磨。,,,,
或有大神开发一个  这个新方向的程序工具,,,》》》》》??》》?》??》?
发表于 2026-9-23 21:24:49 | 显示全部楼层

参考:字符串资源

办公软件WPS的JSA中读取库文件的字符串资源
https://www.bathome.net/thread-95138-1-1.html
 楼主| 发表于 2026-9-23 21:38:33 | 显示全部楼层
cutebe 发表于 2026-9-23 21:24
办公软件WPS的JSA中读取库文件的字符串资源
https://www.bathome.net/thread-95138-1-1.html ...

你们都喜欢把代码写得那么复杂和臃肿吗?
我向来写代码  都是怎么简化怎么来,,,,

  1. @Echo off
  2. Echo.输入你要查看的文件格式如 @notepad.exe,-470 或 @shell32.dll,-12708
  3. Set/p d=..........................:
  4. if "%d%"=="" Set d=@notepad.exe,-470
  5. Title "%d% FileDescription 字段"
  6. Echo.你输入的是..........:%d%
  7. Echo.对应的字符串是:
  8. Powershell -c "Add-Type 'using System;using System.Runtime.InteropServices;using System.Text;public class ISH{[DllImport(\"shlwapi.dll\",CharSet=CharSet.Unicode)]static extern int SHLoadIndirectString(string s,StringBuilder o,uint c,IntPtr p);public static string R(string s){var b=new StringBuilder(1024);SHLoadIndirectString(s,b,1024,IntPtr.Zero);return b.ToString();}}';[ISH]::R('%d%')"
  9. Pause>Nul & Exit
复制代码



我改写的AI代码,,
核心命令一行过,,,,
现在问题还是卡在,,,
如何优化,枚举 程序文件里所有的字符串呢??????
,,,
,,,,
,,,,,
都出来讨论讨论呗,,,,
还是希望有大神写个小程序,直接获取所有字符串,,,,,,?
发表于 2026-9-24 08:23:37 | 显示全部楼层
一行过,对于楼主来说挺好的,请继续坚持,不抛弃不放弃,加油。
如果我和火箭专家辩论说,你火箭不行,燃料不好,应该烧柴,最好烧煤,煤还得精选,水洗煤不行。但凡那个火箭专家正眼看我一下,他就输了。
发表于 2026-9-24 08:36:39 | 显示全部楼层
早期和精简版JSA不能直接调用WinAPI。能直接调用API的代码应该会比较简单。
发表于 2026-9-24 17:53:16 | 显示全部楼层
本帖最后由 went 于 2026-9-24 17:56 编辑

导出字符串资源
resource.exe
resource -enum -type string -file Notepad.exe

评分

参与人数 1技术 +1 收起 理由
jiavip + 1 感谢分享

查看全部评分

 楼主| 发表于 2026-9-24 18:19:19 | 显示全部楼层
went 发表于 2026-9-24 17:53
导出字符串资源
resource.exe
resource -enum -type string -file Notepad.exe

找的就是这样的工具,,,,谢了!,,,
 楼主| 发表于 2026-9-24 19:23:50 | 显示全部楼层
went 发表于 2026-9-24 17:53
导出字符串资源
resource.exe
resource -enum -type string -file Notepad.exe

用了那么久才发现,大神是作者,,,,,膜拜一哈哈。。。

试用了一小会  运行 resource -enum -type icon -file shell32.dll > shell32.dll.icon.txt
得出 2439 行 从1 到 id=2444        type=icon        ICON
有点蒙,据我多次提取shell32.dll 图标的经验,,,,
shell32.dll 文件好像才只有 328 个左右的图标(鄙人WIN10 22H2系统是328个)其他系统略有不同,不过也就这个数量上下
是读取的方位出错还是读取的点不同呢?

而运行  resource -enum -type icon -file explorer.exe 也是有225 行的 1 到 id=225  type=icon       ICON
而 explorer.exe 内部好像也只有 22个 图标而已。

暂不知 resource -enum -type bitmap -file shell32.dll 是什么调用读取,大神可以详解一下吗?,,,,
发表于 2026-9-24 19:40:53 | 显示全部楼层
本帖最后由 went 于 2026-9-24 19:42 编辑

icon类型代码枚举的是RC_ICON,单一尺寸
RT_GROUP_ICON可以枚举图标组,有多个尺寸,你应该是想枚举这个
https://learn.microsoft.com/zh-cn/windows/win32/menurc/resource-types
 楼主| 发表于 2026-9-24 20:03:13 | 显示全部楼层
went 发表于 2026-9-24 19:40
icon类型代码枚举的是RC_ICON,单一尺寸
RT_GROUP_ICON可以枚举图标组,有多个尺寸,你应该是想枚举这个
https ...

额,鄙人没那么远大的格局,也用不到那么大的格局,,

老朽只是曾做过会重启电脑网管,
会用 壮语 & 粤语 & 汉语 熟练读出10个阿拉伯数字,(国际语英,法,俄)就念不利索。
会默写26个英文字母,但他们无序的站在一起,就认不出几个,
,,,
,,,,
,,,,
现一个拿着扳手换灯泡的中登电工。,,,,,,,
发表于 2026-9-24 23:26:24 | 显示全部楼层
jiavip 发表于 2026-9-24 20:03
额,鄙人没那么远大的格局,也用不到那么大的格局,,

老朽只是曾做过会重启电脑网管,

现在支持导出字符串和图标资源了,图标组也可https://gitee.com/wentlis/resource/releases/tag/1.1
 楼主| 发表于 2026-9-25 02:22:16 | 显示全部楼层
went 发表于 2026-9-24 23:26
现在支持导出字符串和图标资源了,图标组也可https://gitee.com/wentlis/resource/releases/tag/1.1 ...

极致用法,,,,,,,,看到了很多平时不怎么注意的参数和描述,,,,


  1. @Echo off
  2. (For /r "C:\Windows\System32" %%i in (*.exe) do (Echo.&Echo.%%i&Echo.&resource -enum -type string -file "%%i"))>%~dp0System32.txt
  3. Start/Max "" %~dp0System32.txt
  4. Pause > Nul
复制代码



好多平时不知道的隐藏参数都跳出来了,,,

兄弟写的这程序,好玩,有用。。。用这程序开个新帖吧!这好程序,别蒙尘了,,
发表于 2026-9-25 11:39:56 | 显示全部楼层
    从本坛第三方可下载 strings.exe (http://bcn.bathome.net/tool/strings.exe 落地可用)
    这是微软官方提供的一个免费工具,用于提取二进制文件(如 *.exe, *.dll 等)中明文存在的 ascii 或 unicode 字符串,原本是为弥补 find/findstr/grep/... 等第三方工具查找二进制文件所含字符串的限制
    无命令行参数运行会显示全部可选参数用法
    不采用 -n 参数设置,会将默认长度 >= 3 的所有目标字符串提取,屏显或被管道后续处理...
    可直接访问 https://learn.microsoft.com/zh-cn/sysinternals/downloads/strings 了解更多有关免费工具,strings.exe 仅是微软官方提供的 Sysinternals 套件之一。
 楼主| 发表于 2026-9-26 17:23:26 | 显示全部楼层
went 发表于 2026-9-24 23:26
现在支持导出字符串和图标资源了,图标组也可https://gitee.com/wentlis/resource/releases/tag/1.1 ...

resource -enum -type gicon -file Explorer.exe
恩,试用了 1.1版
小建议 ,要能显示图标尺寸就更好了,,,
毕竟 有些尺寸的图标才可以替换到 快捷方式 等,,,,
发表于 2026-9-27 15:06:50 | 显示全部楼层
jiavip 发表于 2026-9-26 17:23
resource -enum -type gicon -file Explorer.exe
恩,试用了 1.1版
小建议 ,要能显示图标尺寸就更好了 ...

已添加尺寸显示
注意 1.gicon是图标组,会有多个尺寸 2.id也可能为字符串,使用时不区分大小写
下载最新1.2版本https://gitee.com/wentlis/resource/releases
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-10-14 07:04

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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