无忧启动论坛

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

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

    [复制链接]
12901#
 楼主| 发表于 2017-7-21 17:32:19 | 只看该作者
527104427 发表于 2017-7-21 09:11
还有两个问题:
1.PUTF 没能调用内置的 cabinet.dll
2.EXEC  -exe:*cab:#1:bootice.exe    也没能调用 ...

1.PUTF 没能调用内置的 cabinet.dll
------------------
PUTF好像没有CAB功能吧。
命令怎么写的?
回复

使用道具 举报

12902#
 楼主| 发表于 2017-7-21 17:34:47 | 只看该作者
frg521 发表于 2017-7-21 10:14
SHEL监视 引出了用户接口 为 INDATA\34 脚本。
可自行修改
    // 1:死  掉:  AfterTerm    1      //0 ...

1: 新版有可以了。
效果:
回复

使用道具 举报

12903#
发表于 2017-7-21 17:37:02 | 只看该作者
mdyblog 发表于 2017-7-21 17:31
2.EXEC  -exe:*cab:#1:bootice.exe    也没能调用内置的 cabinet.dll
改了

PUTF 释放内置资源,INDATA\29,不行。我只试了以CAB压缩包方式内置的资源,其它方式的没试。

点评

PUTF 不解压CAB。 PUTF出来的还是 CAB文件。 需要 DEVI命令手动解压。  详情 回复 发表于 2017-7-21 17:41
回复

使用道具 举报

12904#
 楼主| 发表于 2017-7-21 17:39:46 | 只看该作者
frg521 发表于 2017-7-21 10:14
SHEL监视 引出了用户接口 为 INDATA\34 脚本。
可自行修改
    // 1:死  掉:  AfterTerm    1      //0 ...

想知道34脚本,理论上记录哪些事件到LOG
--------------------------

34脚本 响应的 事件:
     1:SHELL死 掉  
     2:将要执行SHELL
     3:SHEL执行后

传递的参数:
     1:死  掉:  AfterTerm    1      //0为首次 1为重启
     2:执行前:  BeforeStart  1      //0为首次 1为重启
     3:执行后:  AfterRun     3 pid  //0为首次且失败 1为重启且失败 2为首次且成功 3为重启且成功

目前记录的格式
    时间 参数

回复

使用道具 举报

12905#
 楼主| 发表于 2017-7-21 17:39:46 | 只看该作者
frg521 发表于 2017-7-21 10:14
SHEL监视 引出了用户接口 为 INDATA\34 脚本。
可自行修改
    // 1:死  掉:  AfterTerm    1      //0 ...

想知道34脚本,理论上记录哪些事件到LOG
--------------------------

34脚本 响应的 事件:
     1:SHELL死 掉  
     2:将要执行SHELL
     3:SHEL执行后

传递的参数:
     1:死  掉:  AfterTerm    1      //0为首次 1为重启
     2:执行前:  BeforeStart  1      //0为首次 1为重启
     3:执行后:  AfterRun     3 pid  //0为首次且失败 1为重启且失败 2为首次且成功 3为重启且成功

目前记录的格式
    时间 参数

回复

使用道具 举报

12906#
 楼主| 发表于 2017-7-21 17:39:46 | 只看该作者
frg521 发表于 2017-7-21 10:14
SHEL监视 引出了用户接口 为 INDATA\34 脚本。
可自行修改
    // 1:死  掉:  AfterTerm    1      //0 ...


想知道34脚本,理论上记录哪些事件到LOG
--------------------------

34脚本 响应的 事件:
     1:SHELL死 掉  
     2:将要执行SHELL
     3:SHEL执行后

传递的参数:
     1:死  掉:  AfterTerm    1      //0为首次 1为重启
     2:执行前:  BeforeStart  1      //0为首次 1为重启
     3:执行后:  AfterRun     3 pid  //0为首次且失败 1为重启且失败 2为首次且成功 3为重启且成功

目前记录的格式
    时间 参数

回复

使用道具 举报

12907#
 楼主| 发表于 2017-7-21 17:41:50 | 只看该作者
527104427 发表于 2017-7-21 17:37
PUTF 释放内置资源,INDATA\29,不行。我只试了以CAB压缩包方式内置的资源,其它方式的没试。

PUTF 不解压CAB。
PUTF出来的还是 CAB文件。 需要 DEVI命令手动解压。

点评

我记得PUTF "%desktop%\aa.cab",0,"%MyName%""#.29|INDATA"才是不解压吧,不加点是有解压操作的?可能是我误解了 DEVI *extract "%MyName%""#29|INDATA",,%desktop%\222 不知道这种用法有没有错?如果没错的  详情 回复 发表于 2017-7-21 17:50
回复

使用道具 举报

12908#
发表于 2017-7-21 17:50:51 | 只看该作者
mdyblog 发表于 2017-7-21 17:41
PUTF 不解压CAB。
PUTF出来的还是 CAB文件。 需要 DEVI命令手动解压。



我记得PUTF  "%desktop%\aa.cab",,"%MyName%""#.29|INDATA"才是不解压吧,不加点是有解压操作的?可能是我误解了

DEVI *extract "%MyName%""#29|INDATA",,%desktop%\222
不知道这种用法有没有错?如果没错的话,那系统没cabinet.dll时不能解压。

点评

我记得PUTF "%desktop%\aa.cab",,"%MyName%""#.29|INDATA"才是不解压吧,不加点是有解压操作的?可能是我误解了 ------------------------ 那是说内置的CMPS解压。 DEVI *extract "%MyName%""#29|INDATA  详情 回复 发表于 2017-7-21 18:01
回复

使用道具 举报

12909#
 楼主| 发表于 2017-7-21 17:53:17 | 只看该作者
frg521 发表于 2017-7-21 10:14
SHEL监视 引出了用户接口 为 INDATA\34 脚本。
可自行修改
    // 1:死  掉:  AfterTerm    1      //0 ...


还有就是延时是阻塞的,延时的不只是发送显示桌面命令,连重启shell本身也延时了,当然延时是我加的,如果不加,发的太早了,没效果,发送显示桌面理论上是2次,首次启动SHELL与重启后的每次。

如下:

// 首次登录
wait 3000  // 这个时间不好控制,有传说是检测 桌面还是Shell_TrayWnd相关的状态,就绪的话,发送立即生效的
ENVI @@SENDMSG=**Shell_TrayWnd*:0x5BA:0:0   //显示桌面
    IFEX [ '%&::__PECMD.ONSHELL.LOG%'<>'' & %&::__PECMD.ONSHELL.LOG%, TEAM  DATE *space0 &&T|  WRIT %&::__PECMD.ONSHELL.LOG%,$+0,%&T% %*
wait 3000 // 又是延时,其实我不清楚延时放哪里合适,或者说首次显示桌面更应该放PECMD.INI的SHELL后。
   FIND  $[ '%~1'='AfterRun' & '%~2'='3' ],!!  ENVI @@SENDMSG=**Shell_TrayWnd*:0x5BA:0:0   //显示桌面
------------------------------------------------
延时的话, 最好用线程。否则影响系统核心进程的运行。


你是说下面的意思吗?
~~~~~~~~~~~~~~~~~~~~~
IF(首次登录成功执行SHEL )
{wait 3000  // 这个时间不好控制,有传说是检测 桌面还是Shell_TrayWnd相关的状态,就绪的话,发送立即生效的
ENVI @@SENDMSG=**Shell_TrayWnd*:0x5BA:0:0   //显示桌面
}
IFEX [ '%&::__PECMD.ONSHELL.LOG%'<>'' & %&::__PECMD.ONSHELL.LOG%, TEAM  DATE *space0 &&T|  WRIT %&::__PECMD.ONSHELL.LOG%,$+0,%&T% %*

FIND  $[ '%~1'='AfterRun' & '%~2'='3' ],
{  wait 3000  // 又是延时,其实我不清楚延时放哪里合适,或者说首次显示桌面更应该放PECMD.INI的SHELL后。
    ENVI @@SENDMSG=**Shell_TrayWnd*:0x5BA:0:0    //显示桌面
}
~~~~~~~~~~~~~~~~~~~~~
如果这样,写成:

~~~~~~~~~~~~~~~~~~~~~
IFEX [ '%&::__PECMD.ONSHELL.LOG%'<>'' & %&::__PECMD.ONSHELL.LOG% ], TEAM  DATE *space0 &&T|  WRIT %&::__PECMD.ONSHELL.LOG%,$+0,%&T% %*
SET &cmd=TEAM
FIND  $[ '%~1'='AfterRun' & '%~2'='2' ],!! SET CMD=TEAM wait 3000| ENVI @@SENDMSG=**Shell_TrayWnd*:0x5BA:0:0|    // 首次登录
FIND  $[ '%~1'='AfterRun' & '%~2'='3' ],!!  SET CMD=%&CMD% wait 3000| ENVI @@SENDMSG=**Shell_TrayWnd*:0x5BA:0:0|  //显示桌面
FIND $%&CMD%<>TEAM, THREAD$   %&CMD%   //线程执行去吧
~~~~~~~~~~~~~~~~~~~~~
回复

使用道具 举报

12910#
 楼主| 发表于 2017-7-21 18:01:18 | 只看该作者
527104427 发表于 2017-7-21 17:50
我记得PUTF  "%desktop%\aa.cab",,"%MyName%""#.29|INDATA"才是不解压吧,不加点是有解压操作的?可 ...


我记得PUTF  "%desktop%\aa.cab",,"%MyName%""#.29|INDATA"才是不解压吧,不加点是有解压操作的?可能是我误解了
------------------------
那是说内置的CMPS解压。



DEVI *extract "%MyName%""#29|INDATA",,%desktop%\222
不知道这种用法有没有错?
-------------------------------------
PUTF  "%desktop%\aa.cab",,"%MyName%""#.29|INDATA"
PATH %desktop%\222
DEVI *extract %desktop%\aa.cab,,%desktop%\222
FILE  "%desktop%\aa.cab"



如果没错的话,那系统没cabinet.dll时不能解压。
----------------------------
DEVI *extract 时会自动处理这个问题的。


点评

serv的 -boot -system 两个参数不知道是干什么用的?  详情 回复 发表于 2017-7-21 18:17
用新版的已经可以了,谢谢  详情 回复 发表于 2017-7-21 18:06
回复

使用道具 举报

12911#
发表于 2017-7-21 18:06:19 | 只看该作者
mdyblog 发表于 2017-7-21 18:01
我记得PUTF  "%desktop%\aa.cab",,"%MyName%""#.29|INDATA"才是不解压吧,不加点是有解压操作的?可能 ...

用新版的已经可以了,谢谢
回复

使用道具 举报

12912#
发表于 2017-7-21 18:17:55 | 只看该作者
mdyblog 发表于 2017-7-21 18:01
我记得PUTF  "%desktop%\aa.cab",,"%MyName%""#.29|INDATA"才是不解压吧,不加点是有解压操作的?可能 ...

serv的 -boot -system 两个参数不知道是干什么用的?

点评

serv的 -boot -system 两个参数不知道是干什么用的? --------------- -boot: 服务类型为boot -system : 服务类型为system // start=  详情 回复 发表于 2017-7-21 18:27
回复

使用道具 举报

12913#
 楼主| 发表于 2017-7-21 18:27:32 | 只看该作者
本帖最后由 mdyblog 于 2017-7-21 18:29 编辑
527104427 发表于 2017-7-21 18:17
serv的 -boot -system 两个参数不知道是干什么用的?


serv的 -boot -system 两个参数不知道是干什么用的?
---------------
-boot: 服务类型为boot
-system : 服务类型为system
这两种类型, 根本不在 计算机管理\服务 中列出。
API中有的
// start= <boot|system|auto|demand|disabled|delayed-auto>

点评

$SERVICE_BOOT_START - 由系统加载程序启动的设备驱动程序. 此值仅对驱动程序服务有效. $SERVICE_SYSTEM_START - 由 IoInitSystem 函数启动的设备驱动程序. 此值仅对驱动程序服务有效. $SERVICE_AUTO_START - 由服  详情 回复 发表于 2017-7-21 19:55
回复

使用道具 举报

12914#
发表于 2017-7-21 19:55:07 | 只看该作者
mdyblog 发表于 2017-7-21 18:27
serv的 -boot -system 两个参数不知道是干什么用的?
---------------
-boot: 服务类型为boot

$SERVICE_BOOT_START - 由系统加载程序启动的设备驱动程序. 此值仅对驱动程序服务有效.
$SERVICE_SYSTEM_START - 由 IoInitSystem 函数启动的设备驱动程序. 此值仅对驱动程序服务有效.
$SERVICE_AUTO_START - 由服务控制管理器在系统启动时自动启动的服务.
$SERVICE_DEMAND_START - 当进程调用 StartService 函数由服务控制管理器启动的服务.
$SERVICE_DISABLED - 不能启动的服务.
在AutoIT的UDF中找到的
回复

使用道具 举报

12915#
 楼主| 发表于 2017-7-21 21:38:36 | 只看该作者
frg521 发表于 2017-7-21 20:55
切换到ADMIN.INI即RAMOS模式后,显示桌面又不干活了,因为没有SHELL这个功能了吧?
如果在注册表或启动目录中 ...

显示桌面又不干活了
----------------
之前哪个最近版本的 PECMD 可以 ?
回复

使用道具 举报

12916#
发表于 2017-7-21 21:43:18 | 只看该作者
ENVI^ ForceLocal=1 这条命令会使%Windir%, %AppData%等批处理中的环境变量失效?

点评

加个 ^ %^Windir% %^AppData%  详情 回复 发表于 2017-7-22 00:19
回复

使用道具 举报

12917#
 楼主| 发表于 2017-7-22 00:19:54 | 只看该作者
Bluebells 发表于 2017-7-21 21:43
ENVI^ ForceLocal=1 这条命令会使%Windir%, %AppData%等批处理中的环境变量失效?

加个 ^
%^Windir%   %^AppData%
回复

使用道具 举报

12918#
 楼主| 发表于 2017-7-22 00:22:31 | 只看该作者
frg521 发表于 2017-7-21 20:55
切换到ADMIN.INI即RAMOS模式后,显示桌面又不干活了,因为没有SHELL这个功能了吧?
如果在注册表或启动目录中 ...

指类似PECMD MAIN PECMD.INI
加个--user
PECMD MAIN --user  PECMD.INI
在 登录自动启动程序 中加个
参考 HHH333的RAMOS。

点评

%&PECMDVER%没改,还是201201880576  详情 回复 发表于 2017-7-22 00:46
回复

使用道具 举报

12919#
发表于 2017-7-22 00:46:01 | 只看该作者
mdyblog 发表于 2017-7-22 00:22
指类似PECMD MAIN PECMD.INI
加个--user
PECMD MAIN --user  PECMD.INI

%&PECMDVER%没改,还是201201880576

点评

76+1 就是 77Pre 临时(Pre)版, 不是正式版 正式版 再升。 你就按77吧。  详情 回复 发表于 2017-7-22 09:29
回复

使用道具 举报

12920#
 楼主| 发表于 2017-7-22 09:29:38 | 只看该作者
527104427 发表于 2017-7-22 00:46
%&PECMDVER%没改,还是201201880576

76+1 就是 77Pre
临时(Pre)版, 不是正式版
正式版 再升。 你就按77吧。
回复

使用道具 举报

12921#
 楼主| 发表于 2017-7-22 09:31:12 | 只看该作者
本帖最后由 mdyblog 于 2017-7-23 12:12 编辑
frg521 发表于 2017-7-22 05:53
1.h3用了1个-号,为何,用2个-号反而无效,1个-与2个-区别是什么?
PECMD MAIN --user  ADMIN.INI
2. 如何定 ...


可能就-user吧。我是看说明的。
原来设计的是**u,后来H3要求改的。
-----------------------
**u
--u
-user
3种均可。 标准-user
回复

使用道具 举报

12922#
发表于 2017-7-22 23:43:45 | 只看该作者
老大,请问如何等待moun挂载完后在执行下一条呢?我发现我挂载隐藏分区还没挂载出来就开始执行下一条命令了。

点评

moun挂载执行完,就是挂载完成了。 window界面程序更新显示,有个延时。 假定是加载到Z: ------------------ 加载到Z: exec* -hide &v=cmd /c dir Z: MESS. %&v% ------------------ 看看是否加载好。  详情 回复 发表于 2017-7-23 12:16
回复

使用道具 举报

12923#
 楼主| 发表于 2017-7-23 08:13:13 | 只看该作者
破解PECMD-CMPa  是 说这个吗? http://bbs.wuyou.net/forum.php?mod=viewthread&tid=386523&extra=&page=1
看样子好像还是旧的  CMPA 加密, 不是新的CMPa加密。

点评

我也是道听途说的,有人能破解最新版的CMPS,并没有见过。也搜索不到相关的东西。 能否增强一下SED、LPOS、RPOS等查询命令,让它可以返回目标字符的所在行数?  详情 回复 发表于 2017-7-24 12:09
回复

使用道具 举报

12924#
 楼主| 发表于 2017-7-23 12:16:33 | 只看该作者
chxm1023 发表于 2017-7-22 23:43
老大,请问如何等待moun挂载完后在执行下一条呢?我发现我挂载隐藏分区还没挂载出来就开始执行下一条命令了 ...

moun挂载执行完,就是挂载完成了。
window界面程序更新显示,有个延时。

假定是加载到Z:


------------------
加载到Z:
exec* -hide &v=cmd /c dir Z:
MESS. %&v%
------------------
看看是否加载好。
回复

使用道具 举报

12925#
 楼主| 发表于 2017-7-24 02:16:38 | 只看该作者
PECMD2012.1.88.05.77Pre10-170719

MOUN-UDM  mapsub   支持本地磁盘上的IMG文件(深度隐藏加载)。
注意, 如果要能写入, 需要 卸载 本地磁盘该分区攀附。 可以改用 RAMD Imdisk*  加载, 两不误。

非深度隐藏加载, 直接加载即可。
回复

使用道具 举报

12926#
发表于 2017-7-24 12:09:03 | 只看该作者
mdyblog 发表于 2017-7-23 08:13
破解PECMD-CMPa  是 说这个吗? http://bbs.wuyou.net/forum.php?mod=viewthread&tid=386523&extra=&page=1 ...


我也是道听途说的,有人能破解最新版的CMPS,并没有见过。也搜索不到相关的东西。

能否增强一下SED、LPOS、RPOS等查询命令,让它可以返回目标字符的所在行数?

点评

RPOS 返回的函数 是正向 还是反向的?  详情 回复 发表于 2017-7-24 13:25
回复

使用道具 举报

12927#
 楼主| 发表于 2017-7-24 13:25:07 | 只看该作者
527104427 发表于 2017-7-24 12:09
我也是道听途说的,有人能破解最新版的CMPS,并没有见过。也搜索不到相关的东西。

能否增强一下SED ...

RPOS 返回的函数 是正向 还是反向的?

点评

感觉应该反向比较合理  详情 回复 发表于 2017-7-24 13:31
回复

使用道具 举报

12928#
发表于 2017-7-24 13:31:01 | 只看该作者
mdyblog 发表于 2017-7-24 13:25
RPOS 返回的函数 是正向 还是反向的?

感觉应该反向比较合理

点评

PECMD2012.1.88.05.77Pre11-170719 看了下, RPOS 本来返回的值,是从左算起的。那么行号也从左算起好了。 在返回名前加个 波浪号 ~, 就是从又算起的。 对LOPS RPOS SED都是这样。  详情 回复 发表于 2017-7-24 16:27
回复

使用道具 举报

12929#
 楼主| 发表于 2017-7-24 16:27:15 | 只看该作者
本帖最后由 mdyblog 于 2017-7-24 16:31 编辑
527104427 发表于 2017-7-24 13:31
感觉应该反向比较合理


PECMD2012.1.88.05.77Pre11-170719

看了下, RPOS 本来返回的值,是从左算起的。那么行号也从左算起好了。

在返回名前加个 波浪号 ~, 就是从右算起的。 对LOPS RPOS SED都是这样。
1
2
3
4
5
6
7
8
9
10
11
12
SET$ nl=0d 0a
LPOS  cp,lp=a,,1111%nl%2222%nl%3A56|1234A6|abcdef
MESS  %cp%  [%lp%]

RPOS  ~cp,~lp=a,1,1111%nl%2222%nl%3A56|1234A6|abcdef
MESS  %cp%  [%lp%]

RPOS  cp,lp=a,1,123A56|1234A6|abcdef  //15
MESS  %cp%  [%lp%]

SED ~cp;;~lp=?:1,[A-Z],,你%nl%好%nl%1ABC
MESS  %cp%  [%lp%]  


点评

有个问题,EDIT加上-rich,就捕捉不到输入变化了。 SET &::EN_CHANGE=0x0300 CALL a _SUB a,W334H94, EDIT -3D -rich b,L23T21W280H22,,,0x100 ENVI @b.ID=?;b_ID ENVI @this.MSG=_COMMAND#  详情 回复 发表于 2017-7-24 19:17
赞一个,不过有个问题: SET$ nl=0d 0a SED ~cp;;~lp=?,a,,你%nl%好%nl%1ABCDE MESS %cp% [%lp%] //返回 13 [0] ,这里应该是0 [0]才对吧 不知道WRIT能否也增强一下,让它不仅能处理文本,也能处理变量  详情 回复 发表于 2017-7-24 16:55
回复

使用道具 举报

12930#
发表于 2017-7-24 16:55:14 | 只看该作者
本帖最后由 527104427 于 2017-7-24 17:00 编辑
mdyblog 发表于 2017-7-24 16:27
PECMD2012.1.88.05.77Pre11-170719

看了下, RPOS 本来返回的值,是从左算起的。那么行号也从左算起 ...



赞一个,不过有个问题:
SET$ nl=0d 0a
SED ~cp;;~lp=?,a,,你%nl%好%nl%1ABCDE
MESS  %cp%  [%lp%]  //返回 13  [0] ,这里应该是0  [0]才对吧

LPOS  ~cp,~lp=Z,,1111%nl%2222%nl%3A56|1234A6|abcdef
MESS  %cp%  [%lp%]   //返回 31  [0]  ,这里也应该是0  [0]才对

RPOS也有同样的问题。





不知道WRIT能否也增强一下,让它不仅能处理文本,也能处理变量?
比如,直接用WRIT替换/增加或删除变量中的某一行。
虽然目前通过一堆计算也能达成目的,但有点繁琐。



点评

PECMD2012.1.88.05.77Pre12-170724.rar keyi  详情 回复 发表于 2017-7-24 22:59
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-7-23 15:26

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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