无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: mdyblog
打印 上一主题 下一主题

[更新376#2825]PECMD2012.1.80.13_Win32_64.多窗口多线程.裸机系统2.3.3.1+18M酷M...

    [复制链接]
17251#
发表于 2022-6-20 22:59:49 | 只看该作者
回复

使用道具 举报

17252#
发表于 2022-6-21 10:30:44 | 只看该作者
SED来查找字符串的位置时,如果要查找的字符串是个变量而且包含\&,要怎么处理才能正常运行呢?
比如:
  1. ENVI &HWID=PCI\VEN_15AD&CC_0108
  2. SED *ni &Astr=?,%&HWID%,,%&AllContent%
复制代码


点评

set^ EnviMode=1 set^ ForceLocal=1 set AllContent=PCI\VEN_15AD&CC_0108&SUBSYS_85051043&REV_09 set HWID=PCI\VEN_15AD&CC_0108 set a=+-*&\/|.,^?[] sed -ex b=0,{.},\\\001,a sed -ex c=0,{[%b%]},\\\001  详情 回复 发表于 2022-6-21 12:12
回复

使用道具 举报

17253#
发表于 2022-6-21 11:18:57 | 只看该作者
file命令移动文件,如果有同名文件,能不能弹出提示
回复

使用道具 举报

17254#
发表于 2022-6-21 12:12:12 | 只看该作者
Anson4 发表于 2022-6-21 10:30
用SED来查找字符串的位置时,如果要查找的字符串是个变量而且包含\和&,要怎么处理才能正常运行呢?
比如 ...

set^ EnviMode=1
set^ ForceLocal=1
set AllContent=PCI\VEN_15AD&CC_0108&SUBSYS_85051043&REV_09
set HWID=PCI\VEN_15AD&CC_0108
set a=+-*&\/|.,^?[<()>]
sed -ex b=0,{.},\\\001,a
sed -ex c=0,{[%b%]},\\\001,HWID
sed -ex -ex -ni Astr=?,c,,AllContent
mess. [%Astr%][%c%]

点评

谢谢5大回复! 我看不太懂,好像用 SED -ni c=0,\\,\\\\\\,%HWID% 可以起作用。上面代码中-ex起什么作用呢?PECMD的帮助里还有-e也不知道起什么作用。 我现在的需求有了点变化,具体步骤如下: 1. 用DEVI指令  详情 回复 发表于 2022-6-22 22:22
回复

使用道具 举报

17255#
发表于 2022-6-22 22:22:03 | 只看该作者
本帖最后由 Anson4 于 2022-6-22 22:23 编辑
527104427 发表于 2022-6-21 12:12
set^ EnviMode=1
set^ ForceLocal=1
set AllContent=PCI\VEN_15AD&CC_0108&SUBSYS_85051043&REV_09

谢谢5大回复!
我看不太懂,好像用 SED -ni c=0,\\,\\\\\\,%HWID% 可以起作用。

上面代码中-ex起什么作用呢?PECMD的帮助里还有-e也不知道起什么作用。

随着不断折腾,现在的需求有了点变化,需要具体操作步骤如下:
1. 用DEVI指令获取某硬件的所有ID
2. 读取驱动包中的.inf文件内容到变量,比如 &AllContent
3. 用SED指令在%&AllContent%查找步骤一获取到的ID(最好是能一次查找多个ID,能做到在%&AllContent%每一行的末尾匹配更好
下面附上获取到的兼容ID以及.inf文件
iaStorAC.7z (3.52 KB, 下载次数: 5)
  1. PCI\VEN_8086&DEV_467F&SUBSYS_86941043&REV_00
  2. PCI\VEN_8086&DEV_467F&SUBSYS_86941043
  3. PCI\VEN_8086&DEV_467F&CC_010400
  4. PCI\VEN_8086&DEV_467F&CC_0104

  5. PCI\VEN_8086&DEV_467F&REV_00
  6. PCI\VEN_8086&DEV_467F
  7. PCI\VEN_8086&CC_010400
  8. PCI\VEN_8086&CC_0104
  9. PCI\VEN_8086
  10. PCI\CC_010400&DT_9
  11. PCI\CC_010400
  12. PCI\CC_0104&DT_9
  13. PCI\CC_0104
复制代码



点评

需求太专业,你设想的逻辑和实际需求相差甚远。 你的需求,只有自己创建索引,去操作匹配索引,其他都行不通。  详情 回复 发表于 2022-6-23 00:01
1.我写那段代码的意思是,将sed的所有运算符都加上\ 2.-ex的意思是后面接的是变量名,而不是变量 3.你这个需求太专业了,也许红毛或M大才能解答。就目前我所知的inf,里面千奇百怪,想完全读取出来,太费脑子了  详情 回复 发表于 2022-6-22 22:36
回复

使用道具 举报

17256#
发表于 2022-6-22 22:36:14 | 只看该作者
Anson4 发表于 2022-6-22 22:22
谢谢5大回复!
我看不太懂,好像用 SED -ni c=0,\\,\\\\\\,%HWID% 可以起作用。

1.我写那段代码的意思是,将sed的所有运算符都加上\
2.-ex的意思是后面接的是变量名,而不是变量
3.你这个需求太专业了,也许红毛或M大才能解答。就目前我所知的inf,里面千奇百怪,想完全读取出来,太费脑子了

点评

谢谢! 我大致总结了一下,在.inf文件的每一行的行尾匹配硬件ID,看起来是比较稳妥的了。  详情 回复 发表于 2022-6-22 22:40
回复

使用道具 举报

17257#
发表于 2022-6-22 22:40:07 | 只看该作者
527104427 发表于 2022-6-22 22:36
1.我写那段代码的意思是,将sed的所有运算符都加上\
2.-ex的意思是后面接的是变量名,而不是变量
3.你 ...

谢谢!
我大致总结了一下,在.inf文件的每一行的行尾匹配硬件ID,看起来是比较稳妥的了。

点评

不用吧,获取本机未驱动硬件id,然后搜索inf文件,查找所在行,判断行号,不需要把inf读入变量  详情 回复 发表于 2022-6-23 08:18
回复

使用道具 举报

17258#
发表于 2022-6-23 00:01:44 | 只看该作者
本帖最后由 红毛樱木 于 2022-6-23 07:29 编辑
Anson4 发表于 2022-6-22 22:22
谢谢5大回复!
我看不太懂,好像用 SED -ni c=0,\\,\\\\\\,%HWID% 可以起作用。


需求太专业,设想的逻辑和实际需求相差甚远。
你的需求,只有自己创建索引,去操作匹配索引,其他都行不通。
回复

使用道具 举报

17259#
发表于 2022-6-23 08:18:43 | 只看该作者
Anson4 发表于 2022-6-22 22:40
谢谢!
我大致总结了一下,在.inf文件的每一行的行尾匹配硬件ID,看起来是比较稳妥的了。

不用吧,获取本机未驱动硬件id,然后搜索inf文件,查找所在行,判断行号,不需要把inf读入变量

点评

试了一下,inf文件不读入变量而是直接搜索,以及判断行号,没得结果,应该是方法不对。 请给个例子!  详情 回复 发表于 2022-6-23 08:56
回复

使用道具 举报

17260#
发表于 2022-6-23 08:21:44 | 只看该作者
可以用多线程对每个硬件id分别进行inf查找

点评

请问 谁的电脑 开机BIOS 支持鼠标, 测试 下面这些MBT 格式化 的菜单 支持 鼠标操作。 看看 鼠标键盘是否操作正常。 https://wwi.lanzoup.com/b08bqmgpe [/backcolor] 密码:67ey[/backcolor]  详情 回复 发表于 2022-6-29 17:33
回复

使用道具 举报

17261#
发表于 2022-6-23 08:56:17 | 只看该作者
826773297 发表于 2022-6-23 08:18
不用吧,获取本机未驱动硬件id,然后搜索inf文件,查找所在行,判断行号,不需要把inf读入变量

试了一下,inf文件不读入变量而是直接搜索,以及判断行号,没得结果,应该是方法不对。
请给个例子!

点评

最好还是读到内存,然后lpos读取行数  详情 回复 发表于 2022-6-23 10:06
法1:先读到内存, 在FORX *NL READ %&CurDir%\Memu.LST,**,&&VA FORX *NL &VA,&&Vi, {* MESS. [%&Vi%] } 法2: 依次读取每行 READ %&CurDir%\Memu.LST,-1,&&NUM SET &I=0 LOOP #%&I%  详情 回复 发表于 2022-6-23 10:05
回复

使用道具 举报

17262#
发表于 2022-6-23 10:05:52 | 只看该作者
Anson4 发表于 2022-6-23 08:56
试了一下,inf文件不读入变量而是直接搜索,以及判断行号,没得结果,应该是方法不对。
请给个例子!

法1:先读到内存, 在FORX *NL

READ %&CurDir%\Memu.LST,**,&&VA
FORX  *NL  &VA,&&Vi,
{*   MESS. [%&Vi%]
}

法2:
依次读取每行

READ %&CurDir%\Memu.LST,-1,&&NUM
SET &I=0

LOOP #%&I%<%&NUM%,
{*
  CALC #&I=%&I%+1
  READ %&CurDir%\Memu.LST,%&I%,&&Vi
   MESS. [%&Vi%]
}

点评

谢谢! 我还以为能像DOS指令那样获取行号:FIND.exe /n  详情 回复 发表于 2022-6-23 10:48
回复

使用道具 举报

17263#
发表于 2022-6-23 10:06:52 | 只看该作者
Anson4 发表于 2022-6-23 08:56
试了一下,inf文件不读入变量而是直接搜索,以及判断行号,没得结果,应该是方法不对。
请给个例子!

最好还是读到内存,然后lpos读取行数
回复

使用道具 举报

17264#
发表于 2022-6-23 10:07:19 | 只看该作者
搜索到行号就等于存在,直接调用就行
回复

使用道具 举报

17265#
发表于 2022-6-23 10:48:25 | 只看该作者
826773297 发表于 2022-6-23 10:05
法1:先读到内存, 在FORX *NL

READ %&CurDir%\Memu.LST,**,&&VA

谢谢!
我还以为能像DOS指令那样获取行号:FIND.exe /n

点评

READ后,再LPOS能获取行号的吧  详情 回复 发表于 2022-6-23 14:48
回复

使用道具 举报

17266#
发表于 2022-6-23 14:48:01 | 只看该作者
Anson4 发表于 2022-6-23 10:48
谢谢!
我还以为能像DOS指令那样获取行号:FIND.exe /n

READ后,再LPOS能获取行号的吧

点评

谢谢!  发表于 2022-6-26 10:50
回复

使用道具 举报

17267#
 楼主| 发表于 2022-6-29 17:33:13 | 只看该作者
本帖最后由 mdyblog 于 2022-6-29 22:20 编辑

请问 谁的电脑  开机BIOS  本身就支持鼠标操作, 测试 下面这些MBT 格式化 的菜单   支持 鼠标操作。
多个UDM分区。 看看 鼠标键盘是否操作正常。
https://wwi.lanzoup.com/b08bqmgpe  密码:67ey

正常效果:





点评

BIOS支持鼠标: [attachimg]503905[/attachimg] 鼠标插在主板后面USB2.0口 实测Legacy模式不支持鼠标: [attachimg]503907[/attachimg] UEFI模式有鼠标图标出现,但不能移动: [attachimg]503906[/att  详情 回复 发表于 2022-6-30 22:38
好家伙,把鼠标支持上了  详情 回复 发表于 2022-6-29 19:14
回复

使用道具 举报

17268#
发表于 2022-6-29 19:14:40 | 只看该作者
mdyblog 发表于 2022-6-29 17:33
请问 谁的电脑  开机BIOS  支持鼠标, 测试 下面这些MBT 格式化 的菜单   支持 鼠标操作。
多个UDM分区。  ...

好家伙,把鼠标支持上了

点评

一般的笔记本电脑, 都支持。、 发现有些 新机器, BIOS 很 高级, 开机BIOS本身就是鼠标操作的。 这种, UEFI-UDM菜单 是支持鼠标的; 但是, BIOS-UDM菜单 反倒 H6版不支持鼠标操作 。  详情 回复 发表于 2022-6-29 19:51
回复

使用道具 举报

17269#
 楼主| 发表于 2022-6-29 19:51:27 | 只看该作者
826773297 发表于 2022-6-29 19:14
好家伙,把鼠标支持上了

一般的笔记本电脑, 都支持。、

发现有些 新机器, BIOS 很 高级, 开机BIOS本身就是鼠标操作的。 这种, UEFI-UDM菜单 是支持鼠标的; 但是, BIOS-UDM菜单 反倒 H6版不支持鼠标操作 。

回复

使用道具 举报

17270#
发表于 2022-6-30 21:26:57 | 只看该作者
支持了
回复

使用道具 举报

17271#
发表于 2022-6-30 22:38:51 | 只看该作者
本帖最后由 527104427 于 2022-6-30 22:43 编辑
mdyblog 发表于 2022-6-29 17:33
请问 谁的电脑  开机BIOS  本身就支持鼠标操作, 测试 下面这些MBT 格式化 的菜单   支持 鼠标操作。
多个 ...

BIOS支持鼠标:


鼠标插在主板后面USB2.0口,用 MBROSTool6.26.11F-12x8664-20220405H6测试鼠标.7z测试

实测Legacy模式不支持鼠标:



UEFI模式有鼠标图标出现,但不能移动:




点评

https://wwi.lanzoup.com/b08bqmgpe 密码:67ey 试试 13A ~13D  详情 回复 发表于 2022-6-30 23:18
回复

使用道具 举报

17272#
 楼主| 发表于 2022-6-30 23:18:51 | 只看该作者


https://wwi.lanzoup.com/b08bqmgpe  密码:67ey

试试 13A ~13D

点评

A版: Legacy 鼠标能动。UEFI鼠标不行 B版: Legacy 鼠标键盘都不能动。UEFI鼠标不行 C版: Legacy 鼠标能动。UEFI鼠标不行 D版: Legacy 鼠标能动。UEFI鼠标不行  详情 回复 发表于 2022-7-1 00:31
回复

使用道具 举报

17273#
发表于 2022-7-1 00:31:15 | 只看该作者
mdyblog 发表于 2022-6-30 23:18
https://wwi.lanzoup.com/b08bqmgpe  密码:67ey

试试 13A ~13D

A版: Legacy 鼠标能动。UEFI鼠标不行
B版: Legacy 鼠标键盘都不能动。UEFI鼠标不行
C版: Legacy 鼠标能动。UEFI鼠标不行
D版: Legacy 鼠标能动。UEFI鼠标不行

点评

请测试下 13E BIOS鼠标键盘是否正常。 (EFI还没改,就不重复测试了)  详情 回复 发表于 2022-7-1 12:11
谢谢!!!! 在这类机器上, Lagacy鼠标终于能动了。 UEFI鼠标不动, 那倒是奇怪。 看来出现新情况了。  详情 回复 发表于 2022-7-1 06:58
回复

使用道具 举报

17274#
 楼主| 发表于 2022-7-1 06:58:16 | 只看该作者
527104427 发表于 2022-7-1 00:31
A版: Legacy 鼠标能动。UEFI鼠标不行
B版: Legacy 鼠标键盘都不能动。UEFI鼠标不行
C版: Legacy 鼠 ...

谢谢!!!!
在这类机器上, Lagacy鼠标终于能动了。

UEFI鼠标不动, 那倒是奇怪。 看来出现新情况了。
回复

使用道具 举报

17275#
 楼主| 发表于 2022-7-1 12:11:20 | 只看该作者
527104427 发表于 2022-7-1 00:31
A版: Legacy 鼠标能动。UEFI鼠标不行
B版: Legacy 鼠标键盘都不能动。UEFI鼠标不行
C版: Legacy 鼠 ...

请测试下 13E BIOS鼠标键盘是否正常。
(EFI还没改,就不重复测试了)

点评

BIOS鼠标正常 但格式化时弹出一个提示:(我事先用DG清空所有分区了) [attachimg]503930[/attachimg] [attachimg]503931[/attachimg]  详情 回复 发表于 2022-7-1 12:41
回复

使用道具 举报

17276#
发表于 2022-7-1 12:41:57 | 只看该作者
mdyblog 发表于 2022-7-1 12:11
请测试下 13E BIOS鼠标键盘是否正常。
(EFI还没改,就不重复测试了)

BIOS鼠标正常


但格式化时弹出一个提示:(我事先用DG清空所有分区了)



点评

请测试下 EFI 菜单鼠标。 主菜单下, 按 c 进命令行。 执行: mouse_test 再稍微动下鼠标(看看是否出动态位置消息)。 不要把上面信息顶走了。 截图上来, 我分析下。 大概这样: [attachimg]503966[/attach  详情 回复 发表于 2022-7-1 23:22
分区太小: 0  详情 回复 发表于 2022-7-1 15:34
回复

使用道具 举报

17277#
 楼主| 发表于 2022-7-1 15:34:09 | 只看该作者
本帖最后由 mdyblog 于 2022-7-1 15:35 编辑

分区太小: 0
空间分完了吧。

回复

使用道具 举报

17278#
 楼主| 发表于 2022-7-1 22:03:10 | 只看该作者
本帖最后由 mdyblog 于 2022-7-1 22:57 编辑

支持鼠标的菜单模板G4D.7z: 支持鼠标的菜单模板G4D.7z (766.52 KB, 下载次数: 5)

主题目录 theme/ 可以整体放在任意位置。
图标可以是动画 (多帧PNG, 可用GIF转)。

效果:



回复

使用道具 举报

17279#
 楼主| 发表于 2022-7-1 23:22:16 | 只看该作者
本帖最后由 mdyblog 于 2022-7-1 23:29 编辑

请测试下 EFI 菜单鼠标。
主菜单下, 按  c 进命令行。 执行:
mouse_test
再稍微动下鼠标(看看是否出动态位置消息)。 不要把上面信息顶走了。
截图上来, 我分析下。
大概这样:


红线 下面部分是  动态位置调试消息

另外, 看看 EFI-BIOS中是否有鼠标的选项。 是不是退出BIOS时 禁止了鼠标; 或进BIOS才启动鼠标,默认需要单独设置才能有鼠标。

点评

[attachimg]503971[/attachimg] BIOS中没发现鼠标选项  详情 回复 发表于 2022-7-1 23:47
回复

使用道具 举报

17280#
发表于 2022-7-1 23:47:14 | 只看该作者
本帖最后由 527104427 于 2022-7-1 23:54 编辑
mdyblog 发表于 2022-7-1 23:22
请测试下 EFI 菜单鼠标。
主菜单下, 按  c 进命令行。 执行:
mouse_test



BIOS中没发现鼠标选项







点评

请测试下 MBROSTool-070101.7z 请测试下 EFI 菜单鼠标。 主菜单下, 按 c 进命令行。 执行: mousectl 再稍微动下鼠标(看看是否出动态位置消息)。 不要把上面信息顶走了。 截图上来, 我分析下。 大概  详情 回复 发表于 2022-7-2 04:37
检测到3个鼠标了。 东动鼠标, 下面没有冒出 鼠标位置信息吗? 电脑有触摸板吗? 有的话, 试试 触摸板。 多换几个 鼠标试试。 多换几个 口 试试。  详情 回复 发表于 2022-7-2 02:36
RGB灯,那么费电,一看就知道是土豪  详情 回复 发表于 2022-7-2 00:30
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-25 02:26

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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