无忧启动论坛

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

关于调用窗口过程的一个因惑。[已解决:换最新版本PECMD]

[复制链接]
跳转到指定楼层
1#
发表于 2008-6-19 15:32:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
问题一:关于调用窗口过程的一个因惑。[已解决:换最新版本PECMD]
问题二:(见6楼)新版PECMD.EXE的PE中安装IE出错的原因。

参照hhh333的配置文件
本人也做了一个,想得到如下效果


当选择1-设置虚拟内存时,应弹出如下的对话框:

结果就不出现“浏览文件夹对话框”
配置文件如下,请高手指点。

`-------------------------------------调用子程序部分-----------------------------------------------------
_SUB HandsSetLoadMode,W354H210,手工选定外置程序装载模式
ENVI TT=10 `TT为窗口停留时间
ENVI V0=0--纯系统
ENVI V1=1--设置虚拟内存
ENVI V2=2--加载自定义WIM文件
GROU Group1,L12T3W330H100   
RADI RadioButton0,L32T14W250H20,%V0%,,1
RADI RadioButton1,L32T44W250H20,%V1%,,0
RADI RadioButton2,L32T74W250H20,%V2%,,0

TEAM ENVI V0=|ENVI V1=|ENVI V2=
LABE Label1,L20T130W314H120,说明:选择装载模式。
ITEM Button1,L220T150W88H24,确定,CALL CheckMode
TIME Timer1,1000,CALL CancleButt
_END
_SUB CancleButt
CALC Result=%TT%-1
ENVI TT=%Result%
ENVI @Button1=确定(%TT%秒)
FIND $%TT%<1,ENVI @Timer1=0|KILL \%HandsSetLoadMode%
_END
_SUB CheckMode
ENVI M1=手动选择模式
IFEX $%RadioButton0.Check%=1,ENVI $LOADMODE=0
IFEX $%RadioButton1.Check%=1,ENVI $LOADMODE=1
IFEX $%RadioButton2.Check%=1,ENVI $LOADMODE=2
TEAM KILL \%HandsSetLoadMode%
_END
_SUB SetPageDrv  `设定虚拟内存存放分区
BROW PageDrv,*,请选择虚拟内存文件存放的分区,取消则自动选择D:分区
FIND $%PageDrv%=,ENVI PageDrv=D:\
PAGE %PageDrv%%PF% 256
ENVI PageDrv=
_END
_SUB OrherWIM
BROW TARGET,,选择自定义的WIM镜像文件,WIM
FIND $%TARGET%=,!Call MountMyWIM
_END
_SUB MountMyWIM
EXEC wimnt.exe %TARGET%
_END
`--------------------------------------配置文件主程序部分------------------------------------------------
CALL @HandsSetLoadMode
`根据LOADMODE的值装载外置及驱动
IFEX $%LOADMODE%=1,CALL SetPageDrv
IFEX $%LOADMODE%=2,CALL OrherWIM

//配置文件结束

如将红色部分改为如下内容,就有“浏览文件夹对话框”
MESS 是否设置虚拟内存?\n \n选择[是],设置虚拟内存\n选择[否],不设置虚拟内存\n \n5秒后自动选择[是]@是否设置虚拟内存? #YN *5000 $YES
FIND $%YESNO%=YES,CALL SetPageDrv!CALL WhatWIM

_SUB WhatWIM
MESS 是否加载自定义WIM文件?\n \n选择[是],加载自定义WIM文件\n \n选择[否],返回到PE桌面\n \n5秒后自动选择[是].@加载自定义WIM文件? #YN *5000 $YES
FIND $%YESNO%=YES,CALL OrherWIM
_END





[ 本帖最后由 yulongjin 于 2008-6-21 01:47 PM 编辑 ]
2#
发表于 2008-6-19 15:39:53 | 只看该作者
原帖由 yulongjin 于 2008-6-19 03:32 PM 发表
参照hhh333的配置文件
本人也做了一个,想得到如下效果
42392

当选择1-设置虚拟内存时,应弹出如下的对话框:
42393
结果就不出现“浏览文件夹对话框”
配置文件如下,请高手指点。

`------------- ...



jzdai0903 去,他最强。
回复

使用道具 举报

3#
发表于 2008-6-19 19:45:09 | 只看该作者
老九說笑了...我只是比較仔細看PECMD的說明而已...

yulongjin你去下載老九的這個版本...PECMD-V3.2.618.251
(晚上老九還會再修正...你先試試這個吧...等老九修正版出來再重新下載過...)

你貼的配置文件內容都不用改...

奇怪的地方只有%PF%...沒看到你有在哪邊有定義...

不過我猜應該是在你沒貼出來的其他部份...

http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1
回复

使用道具 举报

4#
 楼主| 发表于 2008-6-19 22:24:51 | 只看该作者
原帖由 jzdai0903 于 2008-6-19 07:45 PM 发表
yulongjin你去下載老九的這個版本...PECMD-V3.2.618.251
(晚上老九還會再修正...你先試試這個吧...等老九修正版出來再重新下載過...)

你貼的配置文件內 ...

非常感谢指点,我将PECMD-V3.1.528.172换成了PECMD-V3.2.618.251问题解决了。
但出现了新问题

原IE的安装文件运行出错,IE装不上了
原SETIE.CMD内容:
@ECHO OFF
cd /d "%~dp0"
SET "TP=%CD%"
PATH|FIND /I "%CD%">NUL||PATH %PATH%;%CD%
setx path %path% -m
FOR /F %%i In ('DIR *.DLL /B /A-D') DO REGSVR32 /S %%i
REGSVR32 /S Flash9A.OCX
REGSVR32 /S /N /I INETCPL.CPL
IF NOT EXIST %Windir%\System32\INETCPL.CPL COPY INETCPL.CPL %Windir%\System32 /Y>NUL
PECMD.EXE EXEC =Rundll32 SetupAPI.dll,InstallHinfSection DefaultInstall 132 .\IE.INF
PECMD.EXE EXEC @REG DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce /va /f
:END
EXIT
回复

使用道具 举报

5#
发表于 2008-6-20 01:01:04 | 只看该作者
原帖由 yulongjin 于 2008-6-19 10:24 PM 发表

非常感谢指点,我将PECMD-V3.1.528.172换成了PECMD-V3.2.618.251问题解决了。
但出现了新问题

原IE的安装文件运行出错,IE装不上了
原SETIE.CMD内容:
@ECHO OFF
cd /d "%~dp0"
SET "TP=%CD%"
PATH| ...



去掉 ECHO OFF 的 OFF ,或将所有的  ECHO 删了,手动执行这个 CMD 看看。
回复

使用道具 举报

6#
 楼主| 发表于 2008-6-20 07:53:12 | 只看该作者
原帖由 lxl1638 于 2008-6-20 01:01 AM 发表



去掉 ECHO OFF 的 OFF ,或将所有的  ECHO 删了,手动执行这个 CMD 看看。


执行到本语句时弹出错误:
PECMD.EXE EXEC =Rundll32 SetupAPI.dll,InstallHinfSection DefaultInstall 132 .\IE.INF
回复

使用道具 举报

7#
发表于 2008-6-20 09:14:44 | 只看该作者
执行到本语句时弹出错误:
PECMD.EXE EXEC =Rundll32 SetupAPI.dll,InstallHinfSection DefaultInstall 132 .\IE.INF


楼上的,您是否是使用的最新版,如果是的话,有可能是最新版的pecmd.exe造成的。或与ie.inf 有点关系。我已作了一些测试。
回复

使用道具 举报

8#
发表于 2008-6-20 09:26:23 | 只看该作者
原帖由 yulongjin 于 2008-6-20 07:53 AM 发表


执行到本语句时弹出错误:
PECMD.EXE EXEC =Rundll32 SetupAPI.dll,InstallHinfSection DefaultInstall 132 .\IE.INF


再手动执行 Rundll32 SetupAPI.dll,InstallHinfSection DefaultInstall 132 .\IE.INF
回复

使用道具 举报

9#
 楼主| 发表于 2008-6-20 10:25:04 | 只看该作者
原帖由 lxl1638 于 2008-6-20 09:26 AM 发表


再手动执行 Rundll32 SetupAPI.dll,InstallHinfSection DefaultInstall 132 .\IE.INF

手动执行成功!


在批文件中运行失败。
回复

使用道具 举报

10#
发表于 2008-6-20 11:19:38 | 只看该作者
原帖由 yulongjin 于 2008-6-19 10:24 PM 发表
...
PECMD.EXE EXEC =Rundll32 SetupAPI.dll,InstallHinfSection DefaultInstall 132 .\IE.INF ...

把.\IE.INF用绝对路径来写试试
回复

使用道具 举报

11#
 楼主| 发表于 2008-6-21 13:31:56 | 只看该作者
原帖由 sudo 于 2008-6-20 11:19 AM 发表

把.\IE.INF用绝对路径来写试试

正解!!!!

旧版PECMD 3.1.528支持相对路径,
可能是新版PECMD 3.2.618不支持相对路径了。

改这一句
PECMD.EXE EXEC =Rundll32 SetupAPI.dll,InstallHinfSection DefaultInstall 132 .\IE.INF

cd /d "%~dp0"
SET "TP=%CD%"

PECMD.EXE EXEC =Rundll32 SetupAPI.dll,InstallHinfSection DefaultInstall 132 %TP%\IE.INF
即可.

[ 本帖最后由 yulongjin 于 2008-6-21 01:40 PM 编辑 ]
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-3-4 12:53

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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