无忧启动论坛

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

[已解决] [已解决]Pecmd.exe怎样才能显示原来隐藏的程序窗口?谢谢

[复制链接]
跳转到指定楼层
1#
发表于 昨天 11:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 yyz2191958 于 2025-4-7 06:57 编辑

问题1已解决(显示原来隐藏的程序窗口):
exec !程序路径(含扩展名)
wait 3000
call $--ret:hwnd user32.dll,FindWindowW,ConsoleWindowClass,
窗口标题(完整)  // 查找窗口句柄
call $--ret:ret user32.dll,ShowWindow,#%hwnd%,#1
  // 显示并激活窗口
========================

问题2已解决(置顶和取消置顶):
EXEC !程序路径(含扩展名)                                      // 隐藏运行程序
WAIT 3000                                        // 等待 3 秒
CALL $--ret:hwnd user32.dll,FindWindowW,ConsoleWindowClass,窗口标题(完整)  // 查找窗口句柄
CALL $--ret:ret user32.dll,ShowWindow,#%hwnd%,#1   // 显示并激活窗口
WAIT 2000                                        // 等待 2 秒
CALL $--ret:ret user32.dll,SetWindowPos,#%hwnd%,#-1,#0,#0,#0,#0,#0x0003  // 置顶窗口
WAIT 5000                                        // 等待 5 秒
CALL $--ret:ret user32.dll,SetWindowPos,#%hwnd%,#-2,#0,#0,#0,#0,#0x0003  // 取消置顶
EXIT                                             // 退出 Pecmd
========================
原来的问题:
Pecmd.exe可以用 * 或者 ! 隐藏程序窗口

1.那么,Pecmd.exe怎样才能显示原来隐藏的程序窗口(就是取消隐藏,并激活原来隐藏的窗口)?

2.另外,Pecmd.exe可以使程序窗口置顶吗(又怎样取消置顶)?

谢谢
======================================
例如:
隐藏运行“00.bat”(exec !00.bat)
“00.bat”在后台隐藏运行一定时间后,再显示“00.bat”窗口



2#
发表于 昨天 12:17 | 只看该作者
看不懂楼主的问题

取消隐藏的话,在pecmd.ini中,把 ! 或者 @ 删了,不就解决了么

点评

一个例子: EXEC *X:%users\Default\Desktop\00.bat ... 00.bat 隐藏运行(后台操作) ... 显示:00.bat 窗口  详情 回复 发表于 昨天 12:24

评分

参与人数 1无忧币 +5 收起 理由
yyz2191958 + 5

查看全部评分

回复

使用道具 举报

3#
 楼主| 发表于 昨天 12:24 | 只看该作者
martin313 发表于 2025-4-6 12:17
看不懂楼主的问题

取消隐藏的话,在pecmd.ini中,把 ! 或者 @ 删了,不就解决了么

一个例子:
EXEC *X:\Users\Default\Desktop\00.bat
...
00.bat 隐藏运行(后台操作)
...
显示:00.bat 窗口

点评

既然知道 加 * 是隐藏,那删了就不会了???  详情 回复 发表于 昨天 12:32
将*删了  详情 回复 发表于 昨天 12:28
回复

使用道具 举报

4#
发表于 昨天 12:28 来自手机 | 只看该作者
yyz2191958 发表于 2025-4-6 12:24
一个例子:
EXEC *X:%users\Default\Desktop\00.bat
...

将*删了

点评

我还是没有表达清楚: 一个wcs文件: EXEC *X:%users\Default\Desktop\00.bat //... //00.bat 隐藏运行(后台操作) //... //显示:00.bat 窗口  详情 回复 发表于 昨天 12:34

评分

参与人数 1无忧币 +5 收起 理由
yyz2191958 + 5

查看全部评分

回复

使用道具 举报

5#
发表于 昨天 12:32 | 只看该作者
yyz2191958 发表于 2025-4-6 12:24
一个例子:
EXEC *X:%users\Default\Desktop\00.bat
...

既然知道 加 * 是隐藏,那删了就不会了???

点评

我是需要隐藏运行“00.bat” “00.bat”在后台运行一定时间后,显示“00.bat”窗口  详情 回复 发表于 昨天 12:37
回复

使用道具 举报

6#
 楼主| 发表于 昨天 12:34 | 只看该作者

我还是没有表达清楚:
一个wcs文件:
EXEC *X:\Users\Default\Desktop\00.bat
//...
//00.bat 隐藏运行(后台操作)
//...
//显示:00.bat 窗口
回复

使用道具 举报

7#
发表于 昨天 12:35 | 只看该作者
你们都会错意了,他是想把隐藏和激活分别做成一个选项

点评

我是需要隐藏运行“00.bat” “00.bat”在后台运行一定时间后,再显示“00.bat”窗口  详情 回复 发表于 昨天 12:40

评分

参与人数 1无忧币 +5 收起 理由
yyz2191958 + 5

查看全部评分

回复

使用道具 举报

8#
 楼主| 发表于 昨天 12:37 | 只看该作者
本帖最后由 yyz2191958 于 2025-4-6 12:39 编辑
martin313 发表于 2025-4-6 12:32
既然知道 加 * 是隐藏,那删了就不会了???

我是需要隐藏运行“00.bat”
“00.bat”在后台运行一定时间后,再显示“00.bat”窗口

点评

那请7楼的老大帮你  详情 回复 发表于 昨天 12:38
回复

使用道具 举报

9#
发表于 昨天 12:38 | 只看该作者
yyz2191958 发表于 2025-4-6 12:37
我是需要隐藏运行“00.bat”
“00.bat”在后台运行一定时间后,显示“00.bat”窗口


那请7楼的老大帮你
回复

使用道具 举报

10#
 楼主| 发表于 昨天 12:40 | 只看该作者
527104427 发表于 2025-4-6 12:35
你们都会错意了,他是想把隐藏和激活分别做成一个选项

我是需要隐藏运行“00.bat”
“00.bat”在后台运行一定时间后,再显示“00.bat”窗口
回复

使用道具 举报

11#
发表于 昨天 13:54 | 只看该作者
感谢各位。
回复

使用道具 举报

12#
发表于 昨天 16:16 | 只看该作者
00.bat:
title 特特特殊殊殊窗口标题
@pause

pecmd:
exec !00.bat
wait 3000
call $--ret:hwnd user32.dll,FindWindowW,ConsoleWindowClass,特特特殊殊殊窗口标题
call $--ret:ret user32.dll,ShowWindow,#%hwnd%,#1

点评

我试一下 谢谢  详情 回复 发表于 昨天 16:18

评分

参与人数 1无忧币 +5 收起 理由
yyz2191958 + 5

查看全部评分

回复

使用道具 举报

13#
 楼主| 发表于 昨天 16:18 | 只看该作者
hua_wuxin 发表于 2025-4-6 16:16
00.bat:
title 特特特殊殊殊窗口标题
@pause

我试一下 谢谢
回复

使用道具 举报

14#
发表于 昨天 16:19 | 只看该作者
本帖最后由 holley2008 于 2025-4-6 16:49 编辑

Pecmd.exe 的设计更偏向于 WinPE 环境下的命令执行和简单窗口管理,无法直接实现置顶或取消置顶。
【AI不靠谱,你做小白鼠】
  1. [PECMD]
  2. EXEC !00.bat                                      // 隐藏运行 00.bat
  3. WAIT 3000                                        // 等待 3 秒
  4. CALL $--ret:hwnd user32.dll,FindWindowW,ConsoleWindowClass,特特特殊殊殊窗口标题  // 查找窗口句柄
  5. CALL $--ret:ret user32.dll,ShowWindow,#%hwnd%,#1  // 显示并激活窗口 (SW_SHOWNORMAL)
  6. WAIT 2000                                        // 等待 2 秒
  7. CALL $--ret:ret user32.dll,SetWindowPos,#%hwnd%,#-1,#0,#0,#0,#0,#0x0003  // 置顶窗口
  8. WAIT 5000                                        // 等待 5 秒
  9. CALL $--ret:ret user32.dll,SetWindowPos,#%hwnd%,#-2,#0,#0,#0,#0,#0x0003  // 取消置顶
  10. EXIT                                             // 退出 Pecmd
复制代码
  1. [PECMD]
  2. EXEC !00.bat                                      // 隐藏运行 00.bat
  3. WAIT 3000                                        // 等待 3 秒
  4. CALL $--ret:hwnd user32.dll,FindWindowW,ConsoleWindowClass,特特特殊殊殊窗口标题  // 查找窗口
  5. CALL $--ret:ret user32.dll,ShowWindow,#%hwnd%,#1  // 显示窗口
  6. _SUB TopWindow,<0,0,300,200>,特特特殊殊殊窗口标题,,,,-top  // 创建置顶窗口(或尝试控制现有窗口)
  7. CALL TopWindow
  8. WAIT 5000                                        // 等待 5 秒
  9. _SUB NormalWindow,<0,0,300,200>,特特特殊殊殊窗口标题,,,,  // 取消置顶
  10. CALL NormalWindow
  11. EXIT
复制代码

点评

谢谢解答  详情 回复 发表于 昨天 16:36

评分

参与人数 1无忧币 +5 收起 理由
yyz2191958 + 5

查看全部评分

回复

使用道具 举报

15#
 楼主| 发表于 昨天 16:36 | 只看该作者
holley2008 发表于 2025-4-6 16:19
Pecmd.exe 的设计更偏向于 WinPE 环境下的命令执行和简单窗口管理,无法直接实现置顶或取消置顶。

谢谢解答
回复

使用道具 举报

16#
发表于 昨天 17:35 | 只看该作者
EXEC -pid:变量名

FIND [--sub][--forpid:PID|--fortid:TID] --wid*@[父窗口ID] 变量名,窗口标题//查询*为只前部匹配

ENVI @窗口或控件名称.Visible=[*]数值"设置可见状态;0为不可见,1为可见。

点评

我慢慢琢磨 谢谢  详情 回复 发表于 昨天 17:41

评分

参与人数 1无忧币 +5 收起 理由
yyz2191958 + 5

查看全部评分

回复

使用道具 举报

17#
 楼主| 发表于 昨天 17:41 | 只看该作者
红毛樱木 发表于 2025-4-6 17:35
EXEC -pid:变量名

FIND [--sub][--forpid:PID|--fortid:TID] --wid*@[父窗口ID] 变量名,窗口标题//查询* ...

我慢慢琢磨 谢谢
回复

使用道具 举报

18#
发表于 昨天 18:02 | 只看该作者
66

点评

你的回复可更好  发表于 昨天 18:08
回复

使用道具 举报

19#
发表于 昨天 18:59 | 只看该作者
16楼大佬提示的纯pecmd方法的一种实现,供参考

exec !00.bat
wait 3000
find --wid*@ &results,特特特殊殊殊窗口标题
forx *nl results,r,
{
  mstr* &w=<2>%r%
  envi @@Visible=%w%:1
}
回复

使用道具 举报

20#
发表于 昨天 19:01 | 只看该作者
终于找到了,多谢分享 +++
回复

使用道具 举报

21#
发表于 昨天 19:14 | 只看该作者
655

点评

你的回复可更好  发表于 昨天 19:15
回复

使用道具 举报

22#
发表于 昨天 20:29 | 只看该作者
楼主,这是干嘛用的?

点评

学习呀  详情 回复 发表于 昨天 21:08
回复

使用道具 举报

23#
 楼主| 发表于 昨天 21:08 | 只看该作者
martin313 发表于 2025-4-6 20:29
楼主,这是干嘛用的?

学习呀

点评

哎,不可告人目的  详情 回复 发表于 昨天 21:24
回复

使用道具 举报

24#
发表于 昨天 21:24 | 只看该作者

哎,不可告人目的

点评

估计是看小姐姐,又怕老婆发现,所以,写个脚本一闪一闪地看  详情 回复 发表于 昨天 22:31
回复

使用道具 举报

25#
发表于 昨天 22:31 | 只看该作者
martin313 发表于 2025-4-6 21:24
哎,不可告人目的

估计是看小姐姐,又怕老婆发现,所以,写个脚本一闪一闪地看
回复

使用道具 举报

26#
发表于 昨天 23:14 | 只看该作者
我是来学习的
回复

使用道具 举报

27#
发表于 昨天 23:53 | 只看该作者
谢谢分享
回复

使用道具 举报

28#
发表于 4 小时前 | 只看该作者
谢谢楼主分享
回复

使用道具 举报

29#
发表于 1 小时前 | 只看该作者
来学习学习
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-4-7 12:59

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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