无忧启动论坛

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

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

    [复制链接]
14641#
 楼主| 发表于 2019-12-2 05:46:08 | 只看该作者
红毛樱木 发表于 2019-12-1 22:59
CALL可以调用内置DLL了,
有没有办法判断内置DLL文件是否存在,比如:
IFEX %&MyName%#100|EXEDATA,MESS  ...

GETF 取头2字节。 为空就判没有。

点评

好主意  详情 回复 发表于 2019-12-2 06:02
回复

使用道具 举报

14642#
发表于 2019-12-2 06:02:58 来自手机 | 只看该作者
mdyblog 发表于 2019-12-2 05:46
GETF 取头2字节。 为空就判没有。

好主意
回复

使用道具 举报

14643#
 楼主| 发表于 2019-12-2 07:37:59 | 只看该作者
本帖最后由 mdyblog 于 2019-12-2 07:39 编辑
红毛樱木 发表于 2019-12-2 01:15
后面m解释了原因,EXEC =就是这个样子的

好像, PE 可能就是在原理上机制不全。MS在内部做了一些限制。

以前在某个PE上, 也出现  启动时, 这种 机制不全的问题。 进桌面就正常了。目前为发现的问题, 涉及  多进程 的  进程通信  的机制 不全。

点评

看下15206#的测试,正常系统下测试的。  详情 回复 发表于 2019-12-2 08:06
回复

使用道具 举报

14644#
发表于 2019-12-2 08:06:29 来自手机 | 只看该作者
mdyblog 发表于 2019-12-2 07:37
好像, PE 可能就是在原理上机制不全。MS在内部做了一些限制。

以前在某个PE上, 也出现  启动时, 这 ...

看下15206#的测试,正常系统下测试的。

点评

15206 ??  详情 回复 发表于 2019-12-2 10:28
回复

使用道具 举报

14645#
 楼主| 发表于 2019-12-2 10:28:22 | 只看该作者
红毛樱木 发表于 2019-12-2 08:06
看下15206#的测试,正常系统下测试的。

15206  ??

点评

14634#  详情 回复 发表于 2019-12-2 11:39
回复

使用道具 举报

14646#
发表于 2019-12-2 11:39:11 来自手机 | 只看该作者
mdyblog 发表于 2019-12-2 10:28
15206  ??

14634#
回复

使用道具 举报

14647#
 楼主| 发表于 2019-12-2 13:53:25 | 只看该作者
本帖最后由 mdyblog 于 2019-12-2 15:31 编辑
红毛樱木 发表于 2019-11-30 22:38
主要是你没重现出来BUG,让M大搞半天没看明白。
和我前面说的一样的情况,
主程序跑完了,没东西执行了 ...

哦。 对的。
进程结束时, 会敦促 各任务马上结束。
设立了结束状态标志。

所有的等待 都会忽略。




新版加了2个功能
方法(1) THREAD -waitp

-waitp 告诉系统, 进入结束状态前要等这种进程



方法(2)
脚本最后  用命令 主动  等待所有子进程
WAIT -thread

均测试通过。

https://www.lanzous.com/i7sfsad

签名那个PE, 改用 THREAD -waitp
还用 EXEC =
结果正常:




点评

这代码似乎无效 这个特性没了? 然后顺便要不要处理一下" 现在我是这样 所以说恐怕有无数的字符要处理…… 这恐怕还不如弄转义……  详情 回复 发表于 2019-12-2 20:10
还有一种特殊情况。 Nt6pe里 如果用了THREAD* -waitp开一个窗口,在PECMD.INI所有执行代码结束后,后台还是会有一个PECMD LOAD *sysinit的进程在等待,没有达到WAIT -sys -cmd的效果。 这个能再改进一个达到WAIT  详情 回复 发表于 2019-12-2 18:10
666,这个功能很早就想有了,之前你用wait -sys -cmd帮我实现的。 感谢老大辛苦  详情 回复 发表于 2019-12-2 14:10
回复

使用道具 举报

14648#
发表于 2019-12-2 14:10:54 来自手机 | 只看该作者
mdyblog 发表于 2019-12-2 13:53
哦。 对的。
进程结束时, 会敦促 各任务马上结束。
设立了结束状态标志。

666,这个功能很早就想有了,之前你用wait -sys -cmd帮我实现的。
感谢老大辛苦
回复

使用道具 举报

14649#
发表于 2019-12-2 14:24:07 | 只看该作者
本帖最后由 红毛樱木 于 2019-12-2 14:34 编辑


THREAD -waitp
WAIT -thread
都测试通过。
14463#这里反馈的还有一些小BUG,老大有空也看一些吧。

比如:
ENVI &A=        1     |"2"|3
MSTR * -trim*+ -rq*+ -delims:| &b,&c=<1*>&A   //这样-trim*+无效
mess. <%&b%><%&c%>
回复

使用道具 举报

14650#
发表于 2019-12-2 18:10:42 | 只看该作者
本帖最后由 红毛樱木 于 2019-12-2 18:12 编辑
mdyblog 发表于 2019-12-2 13:53
哦。 对的。
进程结束时, 会敦促 各任务马上结束。
设立了结束状态标志。

还有一种特殊情况。
Nt6pe里
如果用了THREAD* -waitp开一个窗口,在PECMD.INI所有执行代码结束后,后台还是会有一个PECMD LOAD *sysinit的进程在等待,没有达到WAIT -sys -cmd的效果。(如果手动结束这个PECMD LOAD *sysinit进程,窗口也挂了)
这个能再改进一个达到WAIT -sys -cmd的效果吗?

点评

你是不是, 在PECMD.ini 开什么后台 任务。 所有的任务, 都需要一个进程。 THREAD* -waitp 在在当前进程。 当前进程就不会结束。 PECMD LOAD *sysinit 就是执行 PECMD.INI 的出事化进程。 不是系统启动进程(P  详情 回复 发表于 2019-12-2 18:53
回复

使用道具 举报

14651#
 楼主| 发表于 2019-12-2 18:53:15 | 只看该作者
本帖最后由 mdyblog 于 2019-12-2 19:00 编辑
红毛樱木 发表于 2019-12-2 18:10
还有一种特殊情况。
Nt6pe里
如果用了THREAD* -waitp开一个窗口,在PECMD.INI所有执行代码结束后,后台 ...

1:
你是不是, 在PECMD.ini 开什么后台 任务。

2:
所有的任务, 都需要一个进程。
THREAD* -waitp 是在当前进程。 当前进程就不会结束。
PECMD LOAD *sysinit 就是执行 PECMD.INI 的出事化进程。 不是系统启动进程(PECMD MAIN),二是它的子进程。
一般 PECMD.ini 就初始化一下, 然后结束。
3:
WAIT -sys -cmd 让系统守护进程(PECMD MAIN) 代劳。  

4:
所以要 开后台任务, 要么:
1)  PECMD LOAD *sysinit 初始化进程
2) 自己开一个子进程
3) 用 WAIT -sys -cmd 让系统守护进程 代劳。(有界面还是要注意点,虽然新版(好久了)好像能自动切换到前台)

5:
除非 给 PECMD MAIN 再加个开关。
让 PECMD.ini 就在自己的进程中执行

6:好像 已经有这样的功能: MAIN 后 加个 【  LOAD *sysinit 】

PECMD MAIN  %SustemRoot%\System32\PECMD.INI
改为:
PECMD MAIN LOAD *sysinit  %SustemRoot%\System32\PECMD.INI

点评

用 MAIN LOAD *sysinit 出现问题了。 PECMD.INI代码如下: WALL执行后,右边出现一个白竖条,不知道是什么东西。(用正常的MAIN不带后面的LOAD *sysinit则无问题) 如图: [attachimg]406225[/attachimg]  详情 回复 发表于 2019-12-3 02:22
MAIN 后 加个 【 LOAD *sysinit 】和本来的MAIN,有什么本质区别吗?会造成什么影响? 帮助文档里也加上这个吧。 另外MAIN的帮助里有字符错误 ※LAOD命令完成LOAD文件的功能后会自行退出内存,其它的参照LOAD  详情 回复 发表于 2019-12-2 20:20
消化下,晚上研究  详情 回复 发表于 2019-12-2 19:04
回复

使用道具 举报

14652#
发表于 2019-12-2 19:04:01 来自手机 | 只看该作者
mdyblog 发表于 2019-12-2 18:53
1:
你是不是, 在PECMD.ini 开什么后台 任务。


消化下,晚上研究
回复

使用道具 举报

14653#
发表于 2019-12-2 20:10:48 | 只看该作者
本帖最后由 求道者 于 2019-12-2 20:12 编辑
mdyblog 发表于 2019-12-2 13:53
方法(2)
脚本最后  用命令 主动  等待所有子进程
WAIT -thread

均测试通过。

https://www.lanzous.com/i7sfsad

签名那个PE, 改用 THREAD -waitp
还用 EXEC =
结果正常:
楼上 这个版本的PECMD
的forx *qu[~] *
支持 引号内明码的逗号。
  1. FORX *qu[~] * "*%Desktop%\理顺盘符,%ProgramFiles%\Others\理顺盘符.WCI,,%SystemRoot%\system32\imageres.dll#89"
  2. \ "*%Programs%\管理工具\注册表编辑器,%SystemRoot%\regedit.exe",&&link,^LINK %&link%
复制代码
这代码似乎无效
这版本没有那个特性了?
然后顺便要不要处理一下"
现在我是这样
  1. ENVI^ ENVIMODE=1
  2. SET &Yin="
  3. FORX *qu~ * "HKLM\Software\Classes\Directory\background\shell\killexplorer\=刷新Explorer"
  4. \ "HKCR\wcsfile\shell\open\command\=pecmd.exe LOAD %&Yin%%%L%&Yin%"
  5. \ "HKCR\wcsfile\shell\Edit\command\=notepad.exe %&Yin%%%L%&Yin%"
  6. \ "HKCR\.wci\ShellNew\NullFile=%&Yin%%&Yin%"
  7. \ "HKCR\inifile\shell\PECMD\=PECMD运行"
  8. \ "HKCR\inifile\shell\PECMD\command\=pecmd.exe LOAD %&Yin%%%L%&Yin%"
  9. \ "HKCR\inifile\shell\PECMDEDIT\=PECMD编辑"
  10. \ "HKCR\inifile\shell\PECMDEDIT\command\=notepad.exe %&Yin%%%L%&Yin%"
  11. \ "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PATHEXT=.COM;.EXE;.NTR;.NTE;.NTX;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WCI;.WCS;.WCE;.WCX;.WCZ;.WSF;.WSH;.MSC",&®,^REGI %®%
复制代码
所以说恐怕有无数的字符要处理……
这恐怕还不如弄转义……

点评

FORX *NL 这样就清楚多了:  详情 回复 发表于 2019-12-2 23:57
FORX *qu[~] * "*%Desktop%\理顺盘符,%ProgramFiles%\Others\理顺盘符.WCI,,%SystemRoot%\system32\imageres.dll#89" \ "*%Programs%\管理工具\注册表编辑器,%SystemRoot%\regedit.exe",&&link,^LINK %&link% 你  详情 回复 发表于 2019-12-2 20:51
回复

使用道具 举报

14654#
发表于 2019-12-2 20:20:57 | 只看该作者
mdyblog 发表于 2019-12-2 18:53
1:
你是不是, 在PECMD.ini 开什么后台 任务。

MAIN 后 加个 【  LOAD *sysinit 】和本来的MAIN,有什么本质区别吗?会造成什么影响?
帮助文档里也加上这个吧。

另外MAIN的帮助里有字符错误
※LAOD命令完成LOAD文件的功能后会自行退出内存,其它的参照LOAD命令的说明。
应该是
※LOAD
回复

使用道具 举报

14655#
发表于 2019-12-2 20:51:39 | 只看该作者
求道者 发表于 2019-12-2 20:10
这代码似乎无效
这版本没有那个特性了?
然后顺便要不要处理一下"

FORX *qu[~] * "*%Desktop%\理顺盘符,%ProgramFiles%\Others\理顺盘符.WCI,,%SystemRoot%\system32\imageres.dll#89"
\ "*%Programs%\管理工具\注册表编辑器,%SystemRoot%\regedit.exe",&&link,^LINK %&link%

你这里带了一对[]
回复

使用道具 举报

14656#
 楼主| 发表于 2019-12-2 23:57:09 | 只看该作者
求道者 发表于 2019-12-2 20:10
这代码似乎无效
这版本没有那个特性了?
然后顺便要不要处理一下"


FORX *NL  这样就清楚多了:
  1. ENVI^ ENVIMODE=1
  2. SET$ NlA=0a
  3. SET args=HKLM\Software\Classes\Directory\background\shell\killexplorer\\=刷新Explorer
  4. \%&NLA%HKCR\wcsfile\shell\open\command\\=pecmd.exe LOAD "%%L"
  5. \%&NLA%HKCR\wcsfile\shell\Edit\command\\=notepad.exe "%%L"
  6. \%&NLA%HKCR\.wci\ShellNew\NullFile=""
  7. \%&NLA%HKCR\inifile\shell\PECMD\\=PECMD运行
  8. \%&NLA%HKCR\inifile\shell\PECMD\command\\=pecmd.exe LOAD "%%L"
  9. \%&NLA%HKCR\inifile\shell\PECMDEDIT\\=PECMD编辑
  10. \%&NLA%HKCR\inifile\shell\PECMDEDIT\command\\=notepad.exe "%%L"
  11. \%&NLA%HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\\PATHEXT=.COM;.EXE;.NTR;.NTE;.NTX;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WCI;.WCS;.WCE;.WCX;.WCZ;.WSF;.WSH;.MSC
  12. FORX  *NL &args,&&arg,^REGI %&arg%
复制代码



点评

变量里能不能塞逗号?  详情 回复 发表于 2019-12-10 21:53
回复

使用道具 举报

14657#
发表于 2019-12-3 02:22:20 | 只看该作者
mdyblog 发表于 2019-12-2 18:53
1:
你是不是, 在PECMD.ini 开什么后台 任务。


MAIN LOAD *sysinit
出现问题了。
  1. ENVI^ EnviMode=1
  2. EXEC -hide -wait %SystemROOT%\System32\winpeshl.exe
  3. SHEL X:\Windows\EXPLORER.EXE
  4. WAIT 3000
  5. WALL X:\Windows\System32\SysCeo_BACK.BMP

复制代码

PECMD.INI代码如下:

WALL执行后,右边出现一个白竖条,不知道是什么东西。(用正常的MAIN不带后面的LOAD *sysinit则无问题)
如图:



文件分享期好像只有24小时。
https://c-t.work/s/c653f923224941


取件码tt2mur

点评

EXEC -incmd =PECMD WALL X:\Windows\System32\SysCeo_BACK.BMP  详情 回复 发表于 2019-12-3 02:29
回复

使用道具 举报

14658#
 楼主| 发表于 2019-12-3 02:29:25 | 只看该作者
红毛樱木 发表于 2019-12-3 02:22

MAIN LOAD *sysinit
出现问题了。

EXEC -incmd =PECMD  WALL X:\Windows\System32\SysCeo_BACK.BMP

点评

之前试过这样确实可以,这样感觉蛋疼了点。  详情 回复 发表于 2019-12-3 02:31
回复

使用道具 举报

14659#
发表于 2019-12-3 02:31:19 来自手机 | 只看该作者
本帖最后由 红毛樱木 于 2019-12-3 12:02 编辑
mdyblog 发表于 2019-12-3 02:29
EXEC -incmd =PECMD  WALL X:\Windows\System32\SysCeo_BACK.BMP

上传文件之前试过这样确实可以,但是这样感觉蛋疼了点。
___
只试过exec %&myname%,没试过带-incmd
___
pecmd.ini开头是否可以加个开关,直接把main转为main load *sysinit。这样制作pe就不需要改原来的加载方式了。或者像14653#里你提的第5条这样:
5:
除非 给 PECMD MAIN 再加个开关。
让 PECMD.ini 就在自己的进程中执行




回复

使用道具 举报

14660#
 楼主| 发表于 2019-12-6 01:34:11 | 只看该作者
本帖最后由 mdyblog 于 2019-12-6 01:35 编辑
hhh333 发表于 2019-12-1 21:23
那个PINT失败的原因是啥子啊,找到了吗,老大?

PECMD   https://www.lanzous.com/i7v4r5e


可以事先写入注册表
也可以在PECMD.INI 前部命令写入注册表

也可以PINT 参数控制
-k:4

PINT -k:4  %SystemRoot%\System32\Notepad.exe,锁定到任务栏

效果:

点评

不懂,希望不要改变我原来的脚本,因为8、81中没有问题  详情 回复 发表于 2019-12-6 11:23
用Stardock开始菜单没有成功。 日志: 2 {ENTER:X:\PECMD.exemap:0x0000000000000348:394} 2 [LOGS * X:%users\Default\Desktop\log.log] :操作成功完成。 3 [REGI #HKLM\SOFTWARE\PELOGON%uSRCFG\\PINT.FLAGS=  详情 回复 发表于 2019-12-6 08:52
回复

使用道具 举报

14661#
发表于 2019-12-6 08:52:21 | 只看该作者
本帖最后由 红毛樱木 于 2019-12-6 08:58 编辑
mdyblog 发表于 2019-12-6 01:34
PECMD   https://www.lanzous.com/i7v4r5e


用Stardock开始菜单没有成功。
日志:
2        {ENTER:X:\PECMD.exemap:0x0000000000000348:394}
2        [LOGS * X:\Users\Default\Desktop\log.log]        <0>        :操作成功完成。
3        [REGI #HKLM\SOFTWARE\PELOGON\USRCFG\\PINT.FLAGS=4]        <0>        :操作成功完成。
5        [PINT X:\windows\System32\Notepad.exe,固定到任务栏]        <259>        :没有可用的数据了。
6        [PINT X:\windows\System32\Notepad.exe,附到]        <259>        :没有可用的数据了。
CreateProcess(몺)=0 [0]
9        [몺]        <2>        :系统找不到指定的文件。



--------------------------------------------------
14659#的PE可测试。
默认没有运行开始菜单,测试无效。
手动运行:X:\Program Files\Stardock\Start10\Start10_64.exe
后,测试依旧无效

点评

你把 能启动的 PE核心 做的 ISO , 传到兰凑(或其它快点的网盘), 测试下。  详情 回复 发表于 2019-12-6 11:18
回复

使用道具 举报

14662#
 楼主| 发表于 2019-12-6 11:18:48 | 只看该作者
红毛樱木 发表于 2019-12-6 08:52
用Stardock开始菜单没有成功。
日志:
2        {ENTER:X:\PECMD.exemap:0x0000000000000348:394}
我用的是HHH333提供的 测试核心。
你把 能启动的 PE核心 做的  ISO , 传到兰凑(或其它快点的网盘), 测试下。

点评

14659#的PE可测试。 默认没有运行开始菜单,测试无效。 手动运行:X:\Program Files\Stardock\Start10\Start10_64.exe 后,测试依旧无效 ------------------------------- 14659#的就是可以启动的ISO,那个网盘  详情 回复 发表于 2019-12-6 11:21
回复

使用道具 举报

14663#
发表于 2019-12-6 11:21:14 | 只看该作者
mdyblog 发表于 2019-12-6 11:18
我用的是HHH333提供的 测试核心。
你把 能启动的 PE核心 做的  ISO , 传到兰凑(或其它快点的网盘), 测 ...

14659#的PE可测试。
默认没有运行开始菜单,测试无效。
手动运行:X:\Program Files\Stardock\Start10\Start10_64.exe
后,测试依旧无效
-------------------------------
14659#的就是可以启动的ISO,那个网盘很快
回复

使用道具 举报

14664#
发表于 2019-12-6 11:23:13 | 只看该作者
mdyblog 发表于 2019-12-6 01:34
PECMD   https://www.lanzous.com/i7v4r5e

不懂,希望不要改变我原来的脚本,因为8、81中没有问题

点评

PECMD_PINT10-02.7z: https://www.lanzous.com/i7vphej 这个版本不用改脚本。 只要 PECMD.EXE 和 PECMD.EXE.USRCFG.INI 效果: [attachimg]406447[/attachimg] PECMD.EXE.USRCFG.INI样本: PINT.FLA  详情 回复 发表于 2019-12-7 00:24
改注册表。  详情 回复 发表于 2019-12-6 11:39
回复

使用道具 举报

14665#
 楼主| 发表于 2019-12-6 11:39:33 | 只看该作者
hhh333 发表于 2019-12-6 11:23
不懂,希望不要改变我原来的脚本,因为8、81中没有问题

改注册表。

点评

我这边也测试正常。但是[attachimg]406412[/attachimg] 这个报毒一定要尝试解决下  详情 回复 发表于 2019-12-6 12:46
回复

使用道具 举报

14666#
发表于 2019-12-6 12:46:19 | 只看该作者

我这边也测试正常。但是
这个报毒一定要尝试解决下

点评

一直有。 没办法。 PECMD 的 开始菜单 HOOK,为 汇编代码 很特别, 很容易误报。 还有EXEC -mem , DLL内存运行, 这些 技术, 很容易误报。  详情 回复 发表于 2019-12-6 12:52
回复

使用道具 举报

14667#
 楼主| 发表于 2019-12-6 12:52:30 | 只看该作者
本帖最后由 mdyblog 于 2019-12-6 13:02 编辑
指南针 发表于 2019-12-6 12:46
我这边也测试正常。但是
这个报毒一定要尝试解决下

一直有。 没办法。 PECMD 的 开始菜单  HOOK,为 汇编代码 很特别, 很容易误报。
还有EXEC -mem  , DLL内存运行, 这些 技术, 很容易误报。

多引擎查毒  https://www.virscan.org/
绝大部分 不报就可以了。
扫描结果:4%的杀软(2/49)报告发现病毒




回复

使用道具 举报

14668#
发表于 2019-12-6 13:23:27 | 只看该作者
在win10pe中的TIPS命令仍然用不了,正常系统可以,因为win10把消息丢到了“通知”,但“通知”是Apps,那么如何在win10pe下实现这种托盘消息效果?

点评

┃ │ │TIPS -dummy [?]模拟设置 //设置或清除TIPS模拟,只需1次 ?只对win10有效  详情 回复 发表于 2019-12-6 14:22
回复

使用道具 举报

14669#
 楼主| 发表于 2019-12-6 14:22:15 | 只看该作者
指南针 发表于 2019-12-6 13:23
在win10pe中的TIPS命令仍然用不了,正常系统可以,因为win10把消息丢到了“通知”,但“通知”是Apps,那么 ...

┃    │    │TIPS -dummy [?]模拟设置  //设置或清除TIPS模拟,只需1次 ?只对win10有效     

点评

测试 14649#和14662# CALL的内置DLL用法不行了。  详情 回复 发表于 2019-12-6 22:55
回复

使用道具 举报

14670#
发表于 2019-12-6 22:55:11 | 只看该作者
mdyblog 发表于 2019-12-6 14:22
┃    │    │TIPS -dummy [?]模拟设置  //设置或清除TIPS模拟,只需1次 ?只对win10有效

测试
14649#和14662#
CALL的内置DLL用法不行了。

点评

PECMD_PINT10-05.rar: https://www.lanzous.com/i7vub4d  详情 回复 发表于 2019-12-7 11:49
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-6-14 13:42

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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