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

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

   火... [复制链接]
发表于 2019-10-16 17:23:13 | 显示全部楼层
datbik189 发表于 2019-10-16 16:54
以前测试过diskpart的脚本,
效率最高的读文件办法是: TEAM GETF# 123.txt,1024*1024,&V|Code **-ANSI, ...

不太清楚内部机制。
不过我是一次性读完到变量,后面再GETF -find成千上万次,按照逻辑上我想应该会更快才对。

点评

只要系统内存足够。 不 人为缓冲, 系统自动缓冲。 后面的操作实际也是直接从内存读取的, 不从硬盘。 人为缓冲, 则, 即使内存 吃紧, 也线满足本应用要求,其它的可先 让出内存。  详情 回复 发表于 2019-10-18 21:57
回复

使用道具 举报

 楼主| 发表于 2019-10-18 21:57:29 | 显示全部楼层
本帖最后由 mdyblog 于 2019-10-18 22:08 编辑
红毛樱木 发表于 2019-10-16 17:23
不太清楚内部机制。
不过我是一次性读完到变量,后面再GETF -find成千上万次,按照逻辑上我想应该会更快 ...


只要系统内存足够。

不 人为缓冲, 系统自动缓冲。 后面的操作实际也是直接从内存读取的, 不从硬盘。


人为缓冲,  则, 即使内存 吃紧, 也先满足本应用要求,其它的可先 让出内存。

点评

哦,哦。 m大,上面我发的那个示例代码,没办法提速了么?  详情 回复 发表于 2019-10-18 22:48
回复

使用道具 举报

发表于 2019-10-18 22:48:20 来自手机 | 显示全部楼层
mdyblog 发表于 2019-10-18 21:57
只要系统内存足够。

不 人为缓冲, 系统自动缓冲。 后面的操作实际也是直接从内存读取的, 不从硬盘 ...

哦,哦。
m大,上面我发的那个示例代码,没办法提速了么?

点评

我看看吧。  详情 回复 发表于 2019-10-19 21:58
回复

使用道具 举报

 楼主| 发表于 2019-10-19 21:58:18 | 显示全部楼层
红毛樱木 发表于 2019-10-18 22:48
哦,哦。
m大,上面我发的那个示例代码,没办法提速了么?

我看看吧。
回复

使用道具 举报

发表于 2019-10-19 22:22:04 | 显示全部楼层
本帖最后由 slore 于 2019-10-19 22:23 编辑

SHEL命令可否按 用户会话 来区分。现在如果多用户登录(Administrator, SYSTEM独立用户会话),
第一个用SHEL命令可以,
另一个会话的SHEL就不起作用了。

-sys和 -user 组合了也没成功。


目前用EXEC代替吧,没有进程监护和关机函数钩子。

点评

切换前LOAD SU.IN,切换后LOAD ADMIN.INI 在SU.INI里先杀一次进程 TEAM KILL -explorer explorer.exe| KILL -explorer explorer.exe 然后在ADMIN.INI里 延时等待explorer.exe进程出现,再判断是PECMD.EXE MAIN加  详情 回复 发表于 2019-10-20 01:13
回复

使用道具 举报

发表于 2019-10-20 01:13:49 | 显示全部楼层
slore 发表于 2019-10-19 22:22
SHEL命令可否按 用户会话 来区分。现在如果多用户登录(Administrator, SYSTEM独立用户会话),
第一个用SHE ...

切换前LOAD SU.IN,切换后LOAD ADMIN.INI
在SU.INI里先杀一次进程
TEAM KILL -explorer explorer.exe| KILL -explorer explorer.exe
然后在ADMIN.INI里
延时等待explorer.exe进程出现,再判断是PECMD.EXE MAIN加载的explorer.exe进程再杀一次,好像这样就行了。

点评

我知道现在的用户切换脚本是这样。我的PE是Admin和SYSTEM用户独立,各自是自己的用户会话,切换时,原本打开的程序,窗口都保留,不应该kill的。不然切换回来,还得重启explorer.exe。 你正常系统,用户1和用户2  详情 回复 发表于 2019-10-20 07:16
回复

使用道具 举报

发表于 2019-10-20 07:16:03 | 显示全部楼层
红毛樱木 发表于 2019-10-20 01:13
切换前LOAD SU.IN,切换后LOAD ADMIN.INI
在SU.INI里先杀一次进程
TEAM KILL -explorer explorer.exe|  ...

我知道现在的用户切换脚本是这样。我的PE是Admin和SYSTEM用户独立,各自是自己的用户会话,切换时,原本打开的程序,窗口都保留,不应该kill的。不然切换回来,还得重启explorer.exe。

你正常系统,用户1和用户2切换,都是各用户独自的explorer.exe。
PE的话,想要监护,和开始菜单关机有效需要用SHEL命令,但是现在好像是全机器的进程检查,不是按用户会话检查。

点评

现在的 PE支持 两个 用户同时登陆吗? 两个不同用户的explorer.exe 进程 能不互相干扰码?  详情 回复 发表于 2019-10-20 11:04
后台开个进程监控explorer.exe进程, 监控当前用户是否运行了explorer.exe进程,如果没有就exe --hook explorer.exe 不知道这样能不能满足你的需求  详情 回复 发表于 2019-10-20 10:00
回复

使用道具 举报

发表于 2019-10-20 10:00:16 来自手机 | 显示全部楼层
slore 发表于 2019-10-20 07:16
我知道现在的用户切换脚本是这样。我的PE是Admin和SYSTEM用户独立,各自是自己的用户会话,切换时,原本 ...

后台开个进程监控explorer.exe进程,
监控当前用户是否运行了explorer.exe进程,如果没有就exe --hook explorer.exe

不知道这样能不能满足你的需求
回复

使用道具 举报

 楼主| 发表于 2019-10-20 11:04:05 | 显示全部楼层
slore 发表于 2019-10-20 07:16
我知道现在的用户切换脚本是这样。我的PE是Admin和SYSTEM用户独立,各自是自己的用户会话,切换时,原本 ...


现在的 PE支持 两个 用户同时登陆吗?
两个不同用户的explorer.exe 进程 , 能不互相干扰码?

点评

老版本Win10PE可以,没人做。 新版本稍微需要处理一个系统服务就行了。 有Gif动态图演示,现在用的EXEC,不结束explorer.exe就都好好的,但是很多刷新脚本kill explorer,还得改脚本重启。 用18995之前的版本  详情 回复 发表于 2019-10-20 11:40
回复

使用道具 举报

发表于 2019-10-20 11:40:14 | 显示全部楼层
本帖最后由 slore 于 2019-10-20 11:43 编辑
mdyblog 发表于 2019-10-20 11:04
现在的 PE支持 两个 用户同时登陆吗?
两个不同用户的explorer.exe 进程 , 能不互相干扰码?


老版本Win10PE可以,没人做。
新版本稍微需要处理一个系统服务就行了。

有Gif动态图演示,现在用的EXEC,不结束explorer.exe就都好好的,但是很多刷新脚本kill explorer,还得改脚本重启。

用18995之前的任何Windows 10版本(专业版),【补丁】界面,选【账户】,启用Administrator 选项,构建就可以了。
各自的快捷方式,主题,任务栏风格,启动的应用程序(含explorer外壳程序),打开的文档等,都是独立用户会话下运行,而且无损秒切换。

http://bbs.wuyou.net/forum.php?m ... page=210#pid3871787
回复

使用道具 举报

发表于 2019-10-20 22:48:48 | 显示全部楼层
GETF -find速度测试.7z (91.91 KB, 下载次数: 9)

我把数据文件弄大了一些,速度上的差距比较明显了。M大有空的时候看一下。谢谢。
回复

使用道具 举报

发表于 2019-10-23 18:50:12 | 显示全部楼层
628        27.526757451016        {IFEX [ Z:\USM_TOOL\03DRV.INI | Z:\USM_TOOL\03DRV\ ],!}
628        28.482155972337        [IFEX [ Z:\USM_TOOL\03DRV.INI | Z:\USM_TOOL\03DRV\ ],!]        <0>        :操作成功完成。



日志这样记录的,是不是这条命令执行了快一秒钟啊?

点评

对。 是不是 多进程、多线程?  详情 回复 发表于 2019-10-24 06:33
回复

使用道具 举报

 楼主| 发表于 2019-10-24 06:33:21 | 显示全部楼层
红毛樱木 发表于 2019-10-23 18:50
628        27.526757451016        {IFEX [ Z:%uSM_TOOL\03DRV.INI | Z:%uSM_TOOL\03DRV\ ],!}
628        28.482155972337        ,!] ...

对。
是不是 多进程、多线程?

点评

M大出山了,可喜可贺. 请教几个问题: 1. moun-udm listudm -ret:&V \\.\physicaldrive0 如何使用SED命令替换除盘符(C:,D:)外的字符为空格,能否用一句SED命令实现?(需要写很多脚本我自己琢磨吧)  详情 回复 发表于 2019-10-24 09:42
整个ini是的。 不过这里前后代码都是单的,有点奇怪。 我再研究研究  详情 回复 发表于 2019-10-24 07:14
回复

使用道具 举报

发表于 2019-10-24 07:14:19 来自手机 | 显示全部楼层
mdyblog 发表于 2019-10-24 06:33
对。
是不是 多进程、多线程?

整个ini是的。
不过这里前后代码都是单的,有点奇怪。
我再研究研究
回复

使用道具 举报

发表于 2019-10-24 09:42:46 | 显示全部楼层
本帖最后由 datbik189 于 2019-10-24 15:39 编辑
mdyblog 发表于 2019-10-24 06:33
对。
是不是 多进程、多线程?


M大出山了,可喜可贺.

请教几个问题:

1. moun-udm listudm -ret:&V \\.\physicaldrive0
    如何使用SED命令替换除盘符(C:,D:)外的字符为空格,能否用一句SED命令实现?(需要写很多脚本我自己琢磨吧)
    如何使用SED命令查找不含C:的行号? SED -EX ;;*&V=?0,正则表达式,,&V

2. 以下是不是set-copy的bug?

   envi^ envimode=1
   call 123

    _sub 123
   set &V=123
   set-copy &V=&a
   mess. %&V% //以为&V的变量返回空值,结果返回123
   _end

3. 类似set-ret5的回溯级别好像没有级别限制, 数字大了脚本就运行不下去了.
   想法是不让某个PE变量退出块时自动销毁或者返回其值到程序级别的PE变量(全局PE变量).
   
  envi^ envimode=1
  call 123
  mess. %&V% //运行不了

  _sub 123
  set-ret100 &V=123
  _end

4. 有时需要传递字节数为单数的PE变量,使用set &V=%&a%后, &V的变量字节数就变成了双数.
   怎么样传递变量不改变字节数?

   set$# &a=01 02  03     //字节数为3,单数
   set-copy &V=&a          //字节数为3,单数
   set &V=%&a%           //&V的16进制数值为 01 02 03 00,字节数变成了4

点评

3. 类似set-ret5的回溯级别好像没有级别限制, 数字大了脚本就运行不下去了. 想法是不让某个PE变量退出块时自动销毁或者返回其值到程序级别的PE变量(全局PE变量). envi^ envimode=1 call 123 mess.  详情 回复 发表于 2019-10-24 10:28
2. 以下是不是set-copy的bug? envi^ envimode=1 call 123 _sub 123 set &V=123 set-copy &V=&a mess. %&V% //以为&V的变量返回空值,结果返回123 _end --------------------------  详情 回复 发表于 2019-10-24 10:26
回复

使用道具 举报

发表于 2019-10-24 10:26:04 | 显示全部楼层
datbik189 发表于 2019-10-24 09:42
M大出山了,可喜可贺.

请教几个问题:

2. 以下是不是set-copy的bug?

   envi^ envimode=1
   call 123

    _sub 123
   set &V=123
   set-copy &V=&a
   mess. %&V% //以为&V的变量返回空值,结果返回123
   _end
-----------------------------------------
这里的&a还不是pecmd变量,要先申明一下才可以。()

   envi^ envimode=1
   call 123

    _sub 123
   set &V=123
   set &a=
   set-copy &V=&a
   mess. %&V% //以为&V的变量返回空值,结果返回123
   _end

点评

谢谢. 不过个人觉得应该是返回空值比较合理一些,不然觉得麻烦:得先确定&a存不存在,才能用set-copy. 用set &V=%&a%方便,但是当&a的字节数为单数时, &V的字节数就会变成双数(尾部多了个 0x00)  详情 回复 发表于 2019-10-24 10:49
回复

使用道具 举报

发表于 2019-10-24 10:28:59 | 显示全部楼层
本帖最后由 红毛樱木 于 2019-10-24 10:30 编辑
datbik189 发表于 2019-10-24 09:42
M大出山了,可喜可贺.

请教几个问题:

3. 类似set-ret5的回溯级别好像没有级别限制, 数字大了脚本就运行不下去了.
   想法是不让某个PE变量退出块时自动销毁或者返回其值到程序级别的PE变量(全局PE变量).
   
  envi^ envimode=1
  call 123
  mess. %&V% //运行不了

  _sub 123
  set-ret100 &V=123
  _end



---------------------------------------
找不到100级吧,这里。
  envi^ envimode=1
call bbb
  mess. %&V% //运行不了
  _sub bbb
  call 123
  _end

  _sub 123
  set-ret2 &V=123
  _end
---------------------------------

或者你需要全局变量,可以用set ::V=

  envi^ envimode=1
  call 123
  mess. %&::V% //运行不了

  _sub 123
  set ::V=123
  _end

点评

是的,100级只不过是夸张的演示. 当级别数错时,就玩了,脚本运行不下去了. 用你的全局PE变量办法不错.  详情 回复 发表于 2019-10-24 10:52
回复

使用道具 举报

发表于 2019-10-24 10:49:13 | 显示全部楼层
红毛樱木 发表于 2019-10-24 10:26
2. 以下是不是set-copy的bug?

   envi^ envimode=1

谢谢.

不过个人觉得应该是返回空值比较合理一些,不然觉得麻烦:得先确定&a存不存在,才能用set-copy.

用set &V=%&a%方便,但是当&a的字节数为单数时, &V的字节数就会变成双数(尾部多了个 0x00)

点评

envi^ envimode=1 call 123 _sub 123 set &V=123 set-copy &V=&a mess. %&V% //以为&V的变量返回空值,结果返回123 _end 这样应该能看得清一些吧  详情 回复 发表于 2019-10-24 11:09
回复

使用道具 举报

发表于 2019-10-24 10:52:54 | 显示全部楼层
红毛樱木 发表于 2019-10-24 10:28
3. 类似set-ret5的回溯级别好像没有级别限制, 数字大了脚本就运行不下去了.
   想法是不让某个PE变量退 ...

是的,100级只不过是夸张的演示.

当级别数错时,就玩了,脚本运行不下去了. 用你的全局PE变量办法不错.
回复

使用道具 举报

发表于 2019-10-24 11:09:53 | 显示全部楼层
datbik189 发表于 2019-10-24 10:49
谢谢.

不过个人觉得应该是返回空值比较合理一些,不然觉得麻烦:得先确定&a存不存在,才能用set-copy.

  envi^ envimode=1
   call 123

    _sub 123
   set &V=123
   set-copy &V=&a
   mess. <%&error%>%&V% //以为&V的变量返回空值,结果返回123
   _end

这样应该能看得清一些吧
回复

使用道具 举报

发表于 2019-10-24 11:21:45 | 显示全部楼层
本帖最后由 红毛樱木 于 2019-10-24 11:23 编辑

ENVI &a=1
THREAD* -WAIT TEAM ENVI &&a=2| ENVI-ret &a=%&&a%| ENVI-ret &b=%&&a%
MESS. <%&a%><%&b%>

线程里这种ENVI-ret  我用的比较多,好像不对,是变量不能这样用么?M大

-------------------------------------------------------
ENVI &a=1
CALL BBB
MESS. <%&a%><%&b%>
_SUB BBB
TEAM ENVI &&a=2| ENVI-ret &a=%&&a%| ENVI-ret &b=%&&a%
_END

不用线程,又对了

点评

ENVI &a=1 THREAD* -WAIT -HERE TEAM ENVI &&a=2| ENVI-ret &a=%&&a%| ENVI-ret &b=%&&a% MESS. //返回  详情 回复 发表于 2019-10-24 11:33
回复

使用道具 举报

发表于 2019-10-24 11:33:19 | 显示全部楼层
红毛樱木 发表于 2019-10-24 11:21
ENVI &a=1
THREAD* -WAIT TEAM ENVI &&a=2| ENVI-ret &a=%&&a%| ENVI-ret &b=%&&a%
MESS.

ENVI &a=1
THREAD* -WAIT -HERE TEAM ENVI &&a=2| ENVI-ret &a=%&&a%| ENVI-ret &b=%&&a%
MESS. <%&a%><%&b%> //返回<2><2>

点评

感谢  详情 回复 发表于 2019-10-24 11:45
回复

使用道具 举报

发表于 2019-10-24 11:45:19 | 显示全部楼层
datbik189 发表于 2019-10-24 11:33
ENVI &a=1
THREAD* -WAIT -HERE TEAM ENVI &&a=2| ENVI-ret &a=%&&a%| ENVI-ret &b=%&&a%
MESS.  //返 ...


感谢
回复

使用道具 举报

发表于 2019-10-27 23:30:10 | 显示全部楼层
M大,请教一下
像MBROSTool这样,左边有+号点击出子项的界面怎么搞出来?没看过类似的界面代码,不知道怎么搞 。
UDM.jpg


我想搞一个设备管理器这样的界面,能点击一项出来子项对应的。
devmgmt.jpg

点评

目前还没有 TREE 这种界面。  详情 回复 发表于 2019-10-28 22:30
回复

使用道具 举报

 楼主| 发表于 2019-10-28 22:30:56 | 显示全部楼层
红毛樱木 发表于 2019-10-27 23:30
M大,请教一下
像MBROSTool这样,左边有+号点击出子项的界面怎么搞出来?没看过类似的界面代码,不知道怎 ...


目前还没有 TREE 这种界面控件。

点评

哦,希望以后能有  详情 回复 发表于 2019-10-28 22:35
回复

使用道具 举报

发表于 2019-10-28 22:35:56 | 显示全部楼层
mdyblog 发表于 2019-10-28 22:30
目前还没有 TREE 这种界面控件。

哦,希望以后能有
回复

使用道具 举报

发表于 2019-10-28 23:47:52 来自手机 | 显示全部楼层
我弄了个4k的优盘,有空的话可以喊我研究分区的问题?
回复

使用道具 举报

 楼主| 发表于 2019-10-29 13:13:39 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2019-10-30 11:58:38 | 显示全部楼层
PECMD 有什么 需要改的。 请汇报下。

点评

我统计下我的留言  详情 回复 发表于 2019-10-30 12:04
回复

使用道具 举报

发表于 2019-10-30 12:04:51 来自手机 | 显示全部楼层
mdyblog 发表于 2019-10-30 11:58
PECMD 有什么 需要改的。 请汇报下。

我统计下我的留言
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-9-9 00:06

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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