雅酷SEO论坛

标题: PE下的程序是怎么运行的? [打印本页]

作者: 啊黑妹    时间: 2013-2-5 09:49
标题: PE下的程序是怎么运行的?
PE里是如何实现程序运行的呢?以挂载wim是其中的一种方法,下面新萝卜官网就以opera.wim为例说明处理方法,假设opera.wim中包含两个文件,一个opera.exe,另一个opera.cmd,而关键的部分就opera.cmd,其代码如下:
@echo off
COLOR 5f
for %%a in (y x w v u t s r q p o n m l k j i h g f e d c) do (
if exist %%a:minipeopera.wim (
if not exist %%a:minipeopera.wim (
fsutil fsinfo drivetype %%a:|findstr /i "CD">nul&&(
call ne
exit)||(
call :two
exit)
)
)
)

ne
echo.
echo   
echo.
echo.   请指定文件运行的分区,我们会将文件复制到您指定分区的peopera下,以便
echo.
echo.   下次可以减少此次操作。
echo.   -------------------------------------------------------------------
echo.
set /p TP=请输入运行分区
echo.
echo.
Set TP=%TP:~0,1%
xcopy Ypera /e %TP%:peopera /y /h /r>nul 2>nul
attrib -r -a %TP%:peopera /s /d
pushd %TP%:peopera
start operausb.exe
)
goto :eof

:two
start operausb.exe
goto :eof
  说明:
  1、首先,用户点击运行opera.wim的时候,会先启动里面的opera.cmd,由它来判断WinPE系统是不是在CD介质上启动运行的,如果是,那么就提示用户设置一个本地分区,当用户指定本地分区后,这时候,opera.cmd就会将所需的文件复制到本地分区上并运行。如果判断WinPE系统在可写介质上运行,那么就直接运行程序。
  2、此判断程序需要有findstr.exe和fsutil.exe这两个文件,一般的WinPE系统内核中是没有的,这两个文件或放在内核中,或放在WIM文件中,但建议放在内核中,因为有许多软件都需要同样的处理。
  3、此方法适用于ISO和IMG核心的WinPE系统,同样也适合是否开B盘的。
(责任编辑:http://u.xinluobo.com)
(友情赞助:www.zhuti.com)
作者: admin    时间: 2013-2-5 13:37
PE里是如何实现程序运行的呢?
作者: 龙沄海洋    时间: 2013-2-11 00:24
新萝卜官网
作者: 大連偉哥    时间: 2013-4-1 18:55
以挂载wim是其中的一种方法
作者: 天堂ii管理    时间: 2013-5-9 22:17
这两个文件或放在内核中




欢迎光临 雅酷SEO论坛 (http://www.yaiku.com/) Powered by Discuz! X2.5