无忧启动论坛

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

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

    [复制链接]
18961#
发表于 2024-5-19 00:32:00 | 只看该作者
Anson4 发表于 2024-5-18 23:30
老版本MSTR -delims:} 没问题的,最近几天的版本没试过。

<(-2)->这个写法的原因,MSTR -delims:}还是没问题的

点评

加强了。 多个, 可以放在第一位了。  详情 回复 发表于 2024-5-19 05:02
回复

使用道具 举报

18962#
发表于 2024-5-19 00:39:45 | 只看该作者
mdyblog 发表于 2024-5-18 19:26
新版 测试 通过 CODE *jm 向量运算
示例\ 有  CALC-向量.WCS  CODE-向量处理.WCS

用新版这个写法比我之前的方法效率高了一多半了
但要调用8000次HMAC函数,所以想要问一下有什么写法能加快调用,减少内存占用
CALL $--qd --16 --ret:&&ret Bcrypt.dll,*这个是预先加载dll可以加快调用是吗
HMAC函数如下
  1. _SUB HMAC
  2.     ENVI &&passphrase=%~1
  3.     ENVI &&salt=%~2
  4.     ENVI &&keylen=%~3
  5.     ENVI &&iterations=%~4
  6.     ENVI &&digest=%~5

  7.     ENVI$# &&passphrase=%&&passphrase%
  8.     ENVI-addr &&passphrase_p;&&passphrase_size=&&passphrase
  9.    
  10.     ENVI$# &&salt=%&&salt%
  11.     ENVI-addr &&salt_p;&&salt_size=&&salt
  12.    
  13.     ENVI$# &&hAlg=*%&ptrlen% 0
  14.     ENVI$# &&hHash=*%&ptrlen% 0
  15.     ENVI &&BCRYPT_ALG_HANDLE_HMAC_FLAG=0x00000008
  16.     CALL $--qd --16 --ret:&&ret Bcrypt.dll,BCryptOpenAlgorithmProvider,*&&hAlg,$%&&digest%,#0,#%&&BCRYPT_ALG_HANDLE_HMAC_FLAG%

  17.     ENVI?ptr &&hAlg=&&hAlg
  18.     CALL $--qd --16 --ret:&&ret Bcrypt.dll,BCryptCreateHash,#%&&hAlg%,*&&hHash,#0,#0,#%&&passphrase_p%,#%&&passphrase_size%,#0

  19.     SET?ptr &hHash=&hHash
  20.     CALL $--qd --16 --ret:&&ret Bcrypt.dll,BCryptHashData,#%&&hHash%,#%&&salt_p%,#%&&salt_size%,#0
  21.    
  22.     SET$# &hashSize=*4 0
  23.     SET$# &resultSize=*4 0
  24.    
  25.     SET$# &hashObjectSize=*4 0
  26.     CALL $--qd --ret:&&ret Bcrypt.dll,BCryptGetProperty,#%&hAlg%,$ObjectLength,*&hashObjectSize,#4,*&resultSize,#0
  27.    
  28.     CALL $--qd --ret:&&ret Bcrypt.dll,BCryptGetProperty,#%&hAlg%,$HashDigestLength,*&hashSize,#4,*&resultSize,#0
  29.    
  30.     ENVI?int &&hashSize=&&hashSize
  31.     ENVI$# &&hashValue=*%&&hashSize% 0
  32.    
  33.     CALL $--qd --ret:&&ret Bcrypt.dll,BCryptFinishHash,#%&&hHash%,*&&hashValue,#%&&hashSize%,#0
  34.     CALL $--qd --ret:&&ret Bcrypt.dll,BCryptDestroyHash,#%&&hHash%

  35.     CALL $--qd --ret:&&ret Bcrypt.dll,BCryptCloseAlgorithmProvider,#%&&hAlg%,#0
  36.    
  37.     GETF &&hashValue,0#*,&&hashValue
  38.     ENVI-ret %6=%&hashValue%
  39.    
  40. _END
复制代码




点评

对如红毛大师说的, 先加载dll获取句柄(-LoadLibrary),和函数地址(-GetProcAddress), 后面循环直接用 函数地址 调用。 最后释放 DLL句柄  详情 回复 发表于 2024-5-19 11:14
先 然后再  详情 回复 发表于 2024-5-19 01:05
回复

使用道具 举报

18963#
发表于 2024-5-19 01:05:04 | 只看该作者
泮安宁 发表于 2024-5-19 00:39
用新版这个写法比我之前的方法效率高了一多半了
但要调用8000次HMAC函数,所以想要问一下有什么写法能加 ...

先加载dll获取句柄
  1. CALL $--ret:&&hBcrypt ,-LoadLibrary,^%^SystemROOT%\System32\Bcrypt.dll
  2. ENVI> &hBcrypt=*
复制代码


然后再使用dll句柄
  1. _SUB HMAC
  2.     ENVI &&passphrase=%~1
  3.     ENVI &&salt=%~2
  4.     ENVI &&keylen=%~3
  5.     ENVI &&iterations=%~4
  6.     ENVI &&digest=%~5

  7.     ENVI$# &&passphrase=%&&passphrase%
  8.     ENVI-addr &&passphrase_p;&&passphrase_size=&&passphrase
  9.    
  10.     ENVI$# &&salt=%&&salt%
  11.     ENVI-addr &&salt_p;&&salt_size=&&salt
  12.    
  13.     ENVI$# &&hAlg=*%&ptrlen% 0
  14.     ENVI$# &&hHash=*%&ptrlen% 0
  15.     ENVI &&BCRYPT_ALG_HANDLE_HMAC_FLAG=0x00000008
  16.     CALL $--qd --16 --ret:&&ret %&hBcrypt%,BCryptOpenAlgorithmProvider,*&&hAlg,$%&&digest%,#0,#%&&BCRYPT_ALG_HANDLE_HMAC_FLAG%

  17.     ENVI?ptr &&hAlg=&&hAlg
  18.     CALL $--qd --16 --ret:&&ret %&hBcrypt%,BCryptCreateHash,#%&&hAlg%,*&&hHash,#0,#0,#%&&passphrase_p%,#%&&passphrase_size%,#0

  19.     SET?ptr &hHash=&hHash
  20.     CALL $--qd --16 --ret:&&ret %&hBcrypt%,BCryptHashData,#%&&hHash%,#%&&salt_p%,#%&&salt_size%,#0
  21.    
  22.     SET$# &hashSize=*4 0
  23.     SET$# &resultSize=*4 0
  24.    
  25.     SET$# &hashObjectSize=*4 0
  26.     CALL $--qd --ret:&&ret %&hBcrypt%,BCryptGetProperty,#%&hAlg%,$ObjectLength,*&hashObjectSize,#4,*&resultSize,#0
  27.    
  28.     CALL $--qd --ret:&&ret %&hBcrypt%,BCryptGetProperty,#%&hAlg%,$HashDigestLength,*&hashSize,#4,*&resultSize,#0
  29.    
  30.     ENVI?int &&hashSize=&&hashSize
  31.     ENVI$# &&hashValue=*%&&hashSize% 0
  32.    
  33.     CALL $--qd --ret:&&ret %&hBcrypt%,BCryptFinishHash,#%&&hHash%,*&&hashValue,#%&&hashSize%,#0
  34.     CALL $--qd --ret:&&ret %&hBcrypt%,BCryptDestroyHash,#%&&hHash%

  35.     CALL $--qd --ret:&&ret %&hBcrypt%,BCryptCloseAlgorithmProvider,#%&&hAlg%,#0
  36.    
  37.     GETF &&hashValue,0#*,&&hashValue
  38.     ENVI-ret %6=%&hashValue%
  39.    
  40. _END
复制代码


点评

好的,明天试试  详情 回复 发表于 2024-5-19 01:23
回复

使用道具 举报

18964#
发表于 2024-5-19 01:08:53 | 只看该作者
泮安宁 发表于 2024-5-18 20:15
这个好
新版MSTR还是有问题,是我写的有问题吗,但在老版本上可以获得花括号内部值
------------------ ...

<(-2)->

后面这个-是啥意思啊? 还没用过这种用法,说明书里也没有看明白

点评

就是 n=-2 倒数第二个开始全部  详情 回复 发表于 2024-5-19 05:06
从这个位置开始后面所有  详情 回复 发表于 2024-5-19 01:21
回复

使用道具 举报

18965#
发表于 2024-5-19 01:21:23 | 只看该作者
红毛樱木 发表于 2024-5-19 01:08
后面这个-是啥意思啊? 还没用过这种用法,说明书里也没有看明白

从这个位置开始后面所有

点评

那这样就是你代码不对了,PECMD没有问题  详情 回复 发表于 2024-5-19 01:53
回复

使用道具 举报

18966#
发表于 2024-5-19 01:23:03 | 只看该作者

好的,明天试试
回复

使用道具 举报

18967#
发表于 2024-5-19 01:53:11 | 只看该作者
泮安宁 发表于 2024-5-19 01:21
从这个位置开始后面所有

那这样就是你代码不对了,PECMD没有问题
回复

使用道具 举报

18968#
 楼主| 发表于 2024-5-19 05:02:56 | 只看该作者
泮安宁 发表于 2024-5-19 00:32
这个写法的原因,MSTR -delims:}还是没问题的

加强了。  多个<n->, <n->可以放在第一位了。
回复

使用道具 举报

18969#
 楼主| 发表于 2024-5-19 05:06:22 | 只看该作者
红毛樱木 发表于 2024-5-19 01:08
后面这个-是啥意思啊? 还没用过这种用法,说明书里也没有看明白

就是  <n->
n=-2
倒数第二个开始全部
回复

使用道具 举报

18970#
 楼主| 发表于 2024-5-19 05:07:32 | 只看该作者
Anson4 发表于 2024-5-18 23:30
老版本MSTR -delims:} 没问题的,最近几天的版本没试过。

网上哪个 老版本。 你爸截图发过啦。 下载来看看。

点评

PECMD2012.1.88.05.94Stable-220728WMSTR -delims:{ &&TmpGUID=%&MSG% //项 {a71f2dad-2a65-11eb-91b1-1c872c654b5a} 成功创建。 [attachimg]541794[/attachimg]  详情 回复 发表于 2024-5-19 12:02
回复

使用道具 举报

18971#
 楼主| 发表于 2024-5-19 07:03:16 | 只看该作者
泮安宁 发表于 2024-5-18 23:23
找了半天发现还是MSTR的问题,以前全是MSTR -delims:} &&uuid=%&&uuid%这样写的,现在要全部改过来了{:1_ ...

用 F版。
用  -term
ENVI &&uuid={5e1a4204-00ee-4bb2-ba8a-74a41b136dbc}
MSTR -term  -delims:{ &&uuid=<2->%&&uuid%   //{5e1a4204-00ee-4bb2-ba8a-74a41b136dbc}
MESS %&&uuid%
MSTR -term -delims:} &&uuid=<(-2)->%&&uuid%  //{5e1a4204-00ee-4bb2-ba8a-74a41b136dbc}
MESS %&&uuid%


点评

好的  详情 回复 发表于 2024-5-19 10:04
回复

使用道具 举报

18972#
 楼主| 发表于 2024-5-19 07:04:17 | 只看该作者
hhh333 发表于 2024-5-18 19:54
消息框是否按钮不好看处理没有?

试试 F版
回复

使用道具 举报

18973#
发表于 2024-5-19 07:08:21 | 只看该作者
又搞通宵?太给力了,马上试
回复

使用道具 举报

18974#
发表于 2024-5-19 10:04:41 | 只看该作者
mdyblog 发表于 2024-5-19 07:03
用 F版。
用  -term
ENVI &&uuid={5e1a4204-00ee-4bb2-ba8a-74a41b136dbc}

好的
回复

使用道具 举报

18975#
 楼主| 发表于 2024-5-19 11:14:37 | 只看该作者
泮安宁 发表于 2024-5-19 00:39
用新版这个写法比我之前的方法效率高了一多半了
但要调用8000次HMAC函数,所以想要问一下有什么写法能加 ...

对如红毛大师说的, 先加载dll获取句柄(-LoadLibrary),和函数地址(-GetProcAddress), 后面循环直接用 函数地址 调用。
最后释放 DLL句柄
回复

使用道具 举报

18976#
发表于 2024-5-19 12:02:15 | 只看该作者
本帖最后由 Anson4 于 2024-5-19 12:04 编辑
mdyblog 发表于 2024-5-19 05:07
网上哪个 老版本。 你爸截图发过啦。 下载来看看。

PECMD2012.1.88.05.94Stable-220728W
MSTR -delims:{ &&TmpGUID=<2>%&MSG%        //项 {a71f2dad-2a65-11eb-91b1-1c872c654b5a} 成功创建。
另外,能不能强化一下MSTR指令,使之能同时使用两个或者多个分隔符。



点评

另外,能不能强化一下MSTR指令,使之能同时使用两个或者多个分隔符。 --------------------- 具体什么效果。 拿个例子吧。  详情 回复 发表于 2024-5-19 13:48
这个比较新了。效果和前几个版本一样的: [attachimg]541795[/attachimg]  详情 回复 发表于 2024-5-19 13:47
回复

使用道具 举报

18977#
 楼主| 发表于 2024-5-19 13:47:46 | 只看该作者
Anson4 发表于 2024-5-19 12:02
PECMD2012.1.88.05.94Stable-220728W
MSTR -delims:{ &&TmpGUID=%&MSG%        //项 {a71f2dad-2a65-11e ...

这个比较新了。效果和前几个版本一样的:


回复

使用道具 举报

18978#
 楼主| 发表于 2024-5-19 13:48:45 | 只看该作者
Anson4 发表于 2024-5-19 12:02
PECMD2012.1.88.05.94Stable-220728W
MSTR -delims:{ &&TmpGUID=%&MSG%        //项 {a71f2dad-2a65-11e ...

另外,能不能强化一下MSTR指令,使之能同时使用两个或者多个分隔符。
---------------------
具体什么效果。
拿个例子吧。

点评

比如用下面两条指令就能得到%&GUID%等于“a71f2dad-2a65-11eb-91b1-1c872c654b5a”: ENVI &MSG=项 {a71f2dad-2a65-11eb-91b1-1c872c654b5a} 成功创建。 MSTR -delims:{} &GUID=%&MSG%  详情 回复 发表于 2024-5-19 14:00
回复

使用道具 举报

18979#
发表于 2024-5-19 14:00:43 | 只看该作者
mdyblog 发表于 2024-5-19 13:48
另外,能不能强化一下MSTR指令,使之能同时使用两个或者多个分隔符。
---------------------
具体什么 ...

比如用下面两条指令就能得到%&GUID%等于“a71f2dad-2a65-11eb-91b1-1c872c654b5a”:
ENVI &MSG=项 {a71f2dad-2a65-11eb-91b1-1c872c654b5a} 成功创建。
MSTR -delims:{} &GUID=<2>%&MSG%

点评

PECMD-MSTR多界符-泮安宁.7z ENVI &MSG=项 {a71f2dad-2a65-11eb-91b1-1c872c654b5a} 成功创建。 MSTR -delims:{} &GUID=%&MSG% MSTR -term -delims:{} &GUID2=%&MSG% //保留分节符 MESS. GUID[%&GUID%] GUID2  详情 回复 发表于 2024-5-19 16:53
ENVI &MSG={a71f2dad-2a65-11eb-91b1-1c872c654b5a} MSTR * &a=2,36,&GUID MESS. %&GUID%@ 固定长度的还不如直接指定长度截取了  详情 回复 发表于 2024-5-19 16:40
回复

使用道具 举报

18980#
发表于 2024-5-19 16:40:55 | 只看该作者
Anson4 发表于 2024-5-19 14:00
比如用下面两条指令就能得到%&GUID%等于“a71f2dad-2a65-11eb-91b1-1c872c654b5a”:
ENVI &MSG=项 {a71 ...

ENVI &MSG={a71f2dad-2a65-11eb-91b1-1c872c654b5a}
MSTR * &GUID=2,36,&MSG
MESS. %&GUID%@


固定长度的还不如直接指定长度截取了

点评

长度并不固定  详情 回复 发表于 2024-5-19 16:56
回复

使用道具 举报

18981#
 楼主| 发表于 2024-5-19 16:53:01 | 只看该作者
Anson4 发表于 2024-5-19 14:00
比如用下面两条指令就能得到%&GUID%等于“a71f2dad-2a65-11eb-91b1-1c872c654b5a”:
ENVI &MSG=项 {a71 ...

PECMD-MSTR多界符-泮安宁.7z

ENVI &MSG=项 {a71f2dad-2a65-11eb-91b1-1c872c654b5a} 成功创建。
MSTR -delims:{} &GUID=<2>%&MSG%
MSTR -term -delims:{} &GUID2=<2>%&MSG%  //保留分节符
MESS. GUID[%&GUID%] GUID2[%&GUID2%]

//GUID[a71f2dad-2a65-11eb-91b1-1c872c654b5a] GUID2[{a71f2dad-2a65-11eb-91b1-1c872c654b5a}]

点评

经测试,效果很好! 另外,麻烦M大看看以下几个问题能不能有所改善:  详情 回复 发表于 2024-5-19 17:21
回复

使用道具 举报

18982#
发表于 2024-5-19 16:56:51 | 只看该作者
红毛樱木 发表于 2024-5-19 16:40
ENVI &MSG={a71f2dad-2a65-11eb-91b1-1c872c654b5a}
MSTR * &GUID=2,36,&MSG
MESS. %&GUID%@

长度并不固定
回复

使用道具 举报

18983#
发表于 2024-5-19 17:21:35 | 只看该作者
mdyblog 发表于 2024-5-19 16:53
PECMD-MSTR多界符-泮安宁.7z

ENVI &MSG=项 {a71f2dad-2a65-11eb-91b1-1c872c654b5a} 成功创建。

经测试,效果很好!

另外,麻烦M大看看以下几个问题能不能有所改善:
18634楼 http://bbs.wuyou.net/forum.php?m ... page=622#pid4947612
18874# http://bbs.wuyou.net/forum.php?m ... extra=&page=630


回复

使用道具 举报

18984#
 楼主| 发表于 2024-5-19 17:27:13 | 只看该作者
Anson4 发表于 2023-6-12 20:55
整理一下 18536 楼反馈的问题:
PECMD2012.1.88.05.94Stable-230422 版本,对于某些磁盘的0x07分区被手动 ...

这人真狡猾。  改成0x42 迷惑人。

点评

是啊,会导致整块磁盘的都不能识别。  详情 回复 发表于 2024-5-19 17:29
回复

使用道具 举报

18985#
发表于 2024-5-19 17:29:15 | 只看该作者
mdyblog 发表于 2024-5-19 17:27
这人真狡猾。  改成0x42 迷惑人。

是啊,会导致整块磁盘的分区都不能识别。
回复

使用道具 举报

18986#
发表于 2024-5-19 17:31:40 | 只看该作者
好像制作启动U盘的工具,经常会出现通过修改引导分区的ID来隐藏分区的做法。
回复

使用道具 举报

18987#
发表于 2024-5-19 17:37:43 | 只看该作者
新版F,虚拟机中出错不能工作。硬盘上查找h3pe\winpe.ini乱套,出错
回复

使用道具 举报

18988#
 楼主| 发表于 2024-5-19 17:46:42 | 只看该作者
Anson4 发表于 2024-5-15 15:35
在使用过程中遇到几个问题,请M大帮忙看看该怎么解决。

问题如下:

3、GROU 控件设置为禁用时,其文字没有变成灰色,具体参看帖子末尾的示例。
----------------
变了呀:

点评

这就奇怪了,我用 PECMD2012.1.88.05.94Stable-220728W 测试,在 Win7/8.1/10/11 上测试都不能变灰,会是什么原因呢?  详情 回复 发表于 2024-5-19 17:55
回复

使用道具 举报

18989#
发表于 2024-5-19 17:55:43 | 只看该作者
mdyblog 发表于 2024-5-19 17:46
3、GROU 控件设置为禁用时,其文字没有变成灰色,具体参看帖子末尾的示例。
----------------
变了呀: ...

这就奇怪了,我用 PECMD2012.1.88.05.94Stable-220728W 测试,在 Win7/8.1/10/11 上测试都不能变灰,会是什么原因呢?

点评

这和系统设置有关。 是否变灰, 是系统的事。 关掉 XP视觉, 就变灰了, 否则不变。  详情 回复 发表于 2024-5-19 18:59
回复

使用道具 举报

18990#
发表于 2024-5-19 18:05:34 | 只看该作者
本帖最后由 hhh333 于 2024-5-19 18:28 编辑

1、F版32位在win7正常系统中运行是这样的:

因此32位PE中就直接出内存不能为读的错误直接重启了


2、F版64位可以运行
pe中运行MOUN-udm -findboot -CurDrvR -mall -mhide -mnorhide -u+ -udfs -nbrd -udimg:H3PE/OP.IMG -udimg:udext.img -Checkfile:H3PE/WINPE.INI -Checkfile:BOOT/H3_3PEIN.WIM -ret:&&v \\.\PhysicalDrive* B-
以前版本应该是这样:

但新版是空白。
因此全乱套了。
脚本原码: INI-H3.7z (17.18 KB, 下载次数: 7)





点评

试了F2版返回也是这种形式: [attachimg]541877[/attachimg] 那我 改 下 G2, 放开 MSTR = 这种 , 你试试。  详情 回复 发表于 2024-5-21 06:39
为什么 我调试 , 都是这样形式。 就一个S: 是你ISO理自带的PECMD.EXE, 换了好多个,都是如此。  详情 回复 发表于 2024-5-20 23:10
F2 版 , MSTR -term 恢复原来的样子。 可以正常启动。  详情 回复 发表于 2024-5-19 22:41
MSTR -term 开关的原因  详情 回复 发表于 2024-5-19 22:03
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-6-2 14:34

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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