无忧启动论坛

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

[PECMD X86 & X64 V4.0.2011.0501版] WinPE命令解释程序 & WinPE登录命令。

    [复制链接]
3481#
发表于 2011-2-27 17:43:03 | 只看该作者
原帖由 lxl1638 于 2011-2-26 12:31 发表


你所说的问题本人不是很明白,KILL掉资源管理器后,你要的环境变量是不是已设置成系统环境变量了,看看注册表是否存在那些环境变量?



TEAM ENVI $MYDRV=%CurDrv%|WAIT 1669
TEAM ENVI |WAIT 699

启动后在命令提示符下.
SET
MYDRV=...
存在.
====================
但.
KILL掉资源管理器后,变量MYDRV=...SET没有了.所有以后用%MYDRV%的全失效.
后又ENVI下.又能找回.
回复

使用道具 举报

3482#
 楼主| 发表于 2011-2-27 20:11:24 | 只看该作者
原帖由 66369 于 2011-2-27 17:43 发表



TEAM ENVI $MYDRV=%CurDrv%|WAIT 1669
TEAM ENVI |WAIT 699

启动后在命令提示符下.
SET
MYDRV=...
存在.
====================
但.
KILL掉资源管理器后,变量MYDRV=...SET没有了.所有以后用%MY ...


本人测试没有发现你所说的问题,这个应与系统有关,KILL掉资源管理器PECMD会马上加载资源管理器,
同时注入到资源管理器中的代码也在资源管理器启动后刷新环境变量;设置这样的环境变量有两点要求:
1、要设置成系统环境变量;2、要在SHEL命令之前设置。
你遇到的问题与这两点无关,应与系统有关,下面有个测试版(这个版本并没解决你提到的问题)。

PECMD-DISK命令测试版:
1、修正了 WRIT 命令存在的BUG;
2、可能修正了PECMD退出时,在个别机子出现的BUG,这个BUG应该是V3.6.1001.313国庆版以后出现的;
3、完善了 EJEC 命令移除U盘和弹出物理光驱的功能;
4、加强了无参数的 DISP 命令检测宽屏LCD分辨率的功能;
5、增加了一条控制PECMD是否解释脚本注释的 NOTE 命令;
6、增加了用于读取硬盘信息、卸载或分配盘符卷的 DISK 命令,该命令也包含了 SHOW 命令的部分功能,
     该命令可以按硬盘系统注册表在WinPE中为硬盘分区分配盘符(功能可能不完善,仅用于测试)
7、不要修改该版本 PECMD 的主图标。
PECMD-测试.RAR (141.28 KB)PECMD-DISK命令测试版
回复

使用道具 举报

3483#
发表于 2011-2-28 10:39:35 | 只看该作者
看来老九要发新版pecmd了,呵呵,为啥不能修改主图标了呢?这个限制老九去掉吧,好满足我臭美的爱好。。。
回复

使用道具 举报

3484#
 楼主| 发表于 2011-2-28 17:45:19 | 只看该作者
原帖由 alexo 于 2011-2-28 10:39 发表
看来老九要发新版pecmd了,呵呵,为啥不能修改主图标了呢?这个限制老九去掉吧,好满足我臭美的爱好。。。

先测试,将测试结果报来再说。
修改主图标的方法还是有的,只是以前那种简单的方法不行了;
修改主图标的方法也不会只有一种,也有难易不同的多种方法。
回复

使用道具 举报

3485#
发表于 2011-2-28 22:02:24 | 只看该作者
........

回复

使用道具 举报

3486#
发表于 2011-3-1 10:14:59 | 只看该作者
新測試版已無法在win 2000系統下執行了。

pecmd-err.jpg (15 KB, 下载次数: 210)

pecmd-err.jpg
回复

使用道具 举报

3487#
 楼主| 发表于 2011-3-1 11:11:46 | 只看该作者
原帖由 bahmo 于 2011-3-1 10:14 发表
新測試版已無法在win 2000系統下執行了。

Windows 2000 不支持这个API。
你试试这个能不能在Windows 2000中使用。

CDROM.rar (2.49 KB, 下载次数: 21)

http://connect.microsoft.com/VisualStudio/feedback/details/349144/getvolumepathnamesforvolumename-wrong-info-and-sdk-header-bug

http://msdn.microsoft.com/en-us/library/aa364998(v=vs.85).aspx

The Windows API call GetVolumePathNamesForVolumeName is noted on MSDN as requiring Windows XP or higher client and Windows 2003 or higher server to utilize, however the documentation also states:
Remarks
To compile an application that uses this function, define the _WIN32_WINNT macro as 0x0500 or later. For more information, see Using the SDK Headers.
Upon inspecting the header, indeed the function is available when _WIN32_WINNT is defined at 0x0500 - however 0x0500 defines Windows 2000 or higher. The documentation should report that it requires 0x0501 or higher, as in testing this function is not available or even present on the Windows 2000 platform (kernel32.dll).

[ 本帖最后由 lxl1638 于 2011-3-1 11:31 编辑 ]
回复

使用道具 举报

3488#
发表于 2011-3-1 19:52:28 | 只看该作者
好东西,进来学习下。
回复

使用道具 举报

3489#
发表于 2011-3-2 08:24:53 | 只看该作者
原帖由 lxl1638 于 2011-3-1 11:11 发表

Windows 2000 不支持这个API。
你试试这个能不能在Windows 2000中使用。

114375

http://connect.microsoft.com/VisualStudio/feedback/details/349144/getvolumepathnamesforvolumename-wrong-info-an ...

與測試版一樣,無法在win 2000執行

cdrom-err.jpg (15.01 KB, 下载次数: 234)

cdrom-err.jpg
回复

使用道具 举报

3490#
 楼主| 发表于 2011-3-2 11:26:28 | 只看该作者
原帖由 bahmo 于 2011-3-2 08:24 发表

與測試版一樣,無法在win 2000執行

你再到一楼下载新的测试版试试。
回复

使用道具 举报

3491#
发表于 2011-3-2 12:21:19 | 只看该作者

回复 #3531 lxl1638 的帖子

一樓的測試版是ok的,可在win 2000下執行
回复

使用道具 举报

3492#
 楼主| 发表于 2011-3-2 12:26:03 | 只看该作者
原帖由 bahmo 于 2011-3-2 12:21 发表
一樓的測試版是ok的,可在win 2000下執行

能执行是一回事,功能可用是另一会事。
你测试一下 EJEC 命令的功能,Win2K 下出错是因为 Win2K 的 Kernel32.DLL 导出表中没有那个API 引起的。
回复

使用道具 举报

3493#
发表于 2011-3-2 12:29:10 | 只看该作者

回复 #3533 lxl1638 的帖子

經測試
DISK ,,,3,G
成功將usb 更換為G:
ejec g:
成功移除USB
回复

使用道具 举报

3494#
 楼主| 发表于 2011-3-2 12:35:11 | 只看该作者
原帖由 bahmo 于 2011-3-2 12:29 发表
經測試
DISK ,,,3,G
成功將usb 更換為G:
ejec g:
成功移除USB

还有弹出和关闭光驱托盘的功能,也测试一下。
回复

使用道具 举报

3495#
发表于 2011-3-2 12:57:47 | 只看该作者

回复 #3535 lxl1638 的帖子

WIN2000下,光碟機的彈出與關閉功能 就無反應了
回复

使用道具 举报

3496#
 楼主| 发表于 2011-3-2 18:09:30 | 只看该作者
原帖由 bahmo 于 2011-3-2 12:57 发表
WIN2000下,光碟機的彈出與關閉功能 就無反應了

你试试这两个测试文件,先在CMD窗口中执行,看看能否在Win2000中列出光驱,加参数执行,看看能否弹出光驱托盘。

CDROMa.rar

5.12 KB, 下载次数: 24, 下载积分: 无忧币 -2

回复

使用道具 举报

3497#
发表于 2011-3-2 21:54:32 | 只看该作者
哇,太详细了,学习中
回复

使用道具 举报

3498#
发表于 2011-3-3 08:30:35 | 只看该作者
原帖由 lxl1638 于 2011-3-2 18:09 发表

你试试这两个测试文件,先在CMD窗口中执行,看看能否在Win2000中列出光驱,加参数执行,看看能否弹出光驱托盘。


CDROMa.EXE
-----------------------------------------------------------------------
Volume Device
Get API GetVolumePathNamesForVolumeNameA fail.
Get API GetVolumePathNamesForVolumeName fail.
Eject CDROM fail.

Usage: CMROM.EXE <Drive>,[Number 0 or 1 or 2] to Eject CDROM.
Example: CDROM.EXE E:\,0
Example: CDROM.EXE E:\,1
Example: CDROM.EXE E:\,2

CDROMu.EXE
----------------------------------------------------------------------
Volume Device
Get API Get API
Usage: CMROM.EXE <Drive>,[Number 0 or 1 or 2] to Eject CDROM.
Example: CDROM.EXE E:\,0
Example: CDROM.EXE E:\,1
Example: CDROM.EXE E:\,2

兩者皆無法列出光驅,加了參數也是Eject CDROM fail.
回复

使用道具 举报

3499#
 楼主| 发表于 2011-3-3 19:15:54 | 只看该作者
原帖由 bahmo 于 2011-3-3 08:30 发表

CDROMa.EXE
-----------------------------------------------------------------------
Volume Device
Get API GetVolumePathNamesForVolumeNameA fail.
Get API GetVolumePathNamesForVolumeName fai ...


为了这个,专门在虚拟机中安装了一个精简版的 Windows 2000,
发现 KERNEL32.DLL 的确没有 GetVolumePathNamesForVolumeName 这个 API,
要实现这个功能,采用了变通的办法,你试试能否可行。

最好有两个以上的物理光驱和若干不同类型的虚拟光驱同时存在时试验,
如果还是不能通过,那只好到此为止(EJEC命令在Win2K中无法弹出光驱)。

CDROM.RAR

6.7 KB, 下载次数: 27, 下载积分: 无忧币 -2

回复

使用道具 举报

3500#
发表于 2011-3-4 08:21:00 | 只看该作者

回复 #3541 lxl1638 的帖子

Volume        Device
Z:\        CDROM0
Y:\        CDROM1
U:\        CDROM2
V:\        CDROM3
W:\        CDROM4
X:\        CDROM5
Eject CDROM OK.

Y: Z: 是物理光驅,其餘4個是虛擬光驅
下0 1 2參數都可成功彈出Y:
回复

使用道具 举报

3501#
 楼主| 发表于 2011-3-4 10:01:11 | 只看该作者
你这4个虚拟光驱是什么工具整出来的,帖上工具的下载地址或工具包。
回复

使用道具 举报

3502#
发表于 2011-3-4 11:09:44 | 只看该作者

回复 #3543 lxl1638 的帖子

DAEMON Tools
回复

使用道具 举报

3503#
 楼主| 发表于 2011-3-4 12:28:08 | 只看该作者
原帖由 bahmo 于 2011-3-4 11:09 发表
DAEMON Tools


多谢你的测试,周未再给PECMD让你测试。
回复

使用道具 举报

3504#
发表于 2011-3-4 17:29:01 | 只看该作者
强大的怪物
回复

使用道具 举报

3505#
 楼主| 发表于 2011-3-4 18:23:23 | 只看该作者
原帖由 bahmo 于 2011-3-4 11:09 发表
DAEMON Tools

下来你测试一下这个PECMD,应该不会有问题了。
只是象 DAEMON Tools 这类工具虚拟出来的光驱太真实了,就连系统也被骗过,
系统设备管理器也有它的硬件,所以PECMD无法区别这类虚拟光驱与物理光驱。

附件还有个小玩具,GifTest.TXT

PECMD.rar

158.04 KB, 下载次数: 57, 下载积分: 无忧币 -2

回复

使用道具 举报

3506#
发表于 2011-3-7 08:10:10 | 只看该作者

回复 #3547 lxl1638 的帖子

WIN2000下,光碟機的彈出與關閉功能回來了
回复

使用道具 举报

3507#
发表于 2011-3-8 20:35:10 | 只看该作者

RADI

请教大元帅:

   关于 'RADI'

┃'RADI'│    │■单选框组ID: 数字,默认为0,可以将多个单选框分组,组内的单选框可以多选一,组间互不影响。

在同一_SUB/_END内,如果组建两组或以上单选框组,如每组3个单选框,单选时出现只能选中1个(包括所有组的单选框--组间“互相影响”),这可如何解决?

[ 本帖最后由 2010jingan 于 2011-3-8 20:40 编辑 ]
回复

使用道具 举报

3508#
 楼主| 发表于 2011-3-8 21:11:34 | 只看该作者
原帖由 2010jingan 于 2011-3-8 20:35 发表
请教大元帅:

   关于 'RADI'

┃'RADI'│    │■单选框组ID: 数字,默认为0,可以将多个单选框分组,组内的单选框可以多选一,组间互不影响。

在同一_SUB/_END内,如果组建两组或以上单选框组,如每组3个单选框,单选时出现只能选中1个(包括所有组的单选框--组间“互相影响”),这可如何解决?


多组单选只能选一个?那你为何不将这些单选建立在同一组?

PECMD.rar

157.22 KB, 下载次数: 44, 下载积分: 无忧币 -2

回复

使用道具 举报

3509#
发表于 2011-3-8 21:33:54 | 只看该作者
原帖由 lxl1638 于 2011-3-8 21:11 发表


多组单选只能选一个?那你为何不将这些单选建立在同一组?



谢谢大元帅!
如图:功能不同,不应同组吧?点选“虚拟内存大小”中的某项,则“资源管理器查看方式”中就失选。反之也是如此。

[ 本帖最后由 2010jingan 于 2011-3-8 21:36 编辑 ]

未命名.JPG (11.09 KB, 下载次数: 182)

未命名.JPG
回复

使用道具 举报

3510#
发表于 2011-3-8 21:51:26 | 只看该作者
原帖由 lxl1638 于 2011-3-8 21:11 发表


多组单选只能选一个?那你为何不将这些单选建立在同一组?



刚看了您的演示,改成了(不知道原理),谢谢大元帅!
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-10-3 05:18

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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