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

【不回复也可见】【20120621】ZHS多功能维护盘【简繁体中文菜单】【绝版】

 荐 [复制链接]
发表于 2012-5-8 17:40:59 | 显示全部楼层
原帖由 zhs509 于 2012-5-8 17:39 发表

你在运行输入“%temp%”看看打开的是哪个目录,是原来的还是R盘的?

手动运行的我好像也没问题

是R盘的!
我再试试开机直接PECMD调用看看!

[ 本帖最后由 elai 于 2012-5-8 17:45 编辑 ]
回复

使用道具 举报

发表于 2012-5-8 17:45:28 | 显示全部楼层
下载过我整合的157M的PE可以试试,用这个配置是在进入桌面前生效
外置安装.cmd
-----------------------------------
@echo off
PUSHD %~dp0
::显卡驱动
LoadDrv.exe %cd%\drv\VCARD.CAB
::声卡驱动
LoadDrv.exe %cd%\drv\ACARD.CAB
::网卡驱动
LoadDrv.exe %cd%\drv\WNIC.CAB

if Exist R:\ (goto 软件安装)
imdisk -a -s 1024M -m R: -p "/fs:ntfs /y /q"

::软件安装
md R:\temp
Set  TempPath=R:\Temp
Mset Temp %TempPath%
Mset Tmp  %TempPath%
Mset Temp %TempPath% /system
Mset Tmp  %TempPath% /system
md R:\IECache
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "Cache" /t reg_expand_sz /d "R:\IECache\Temporary Internet Files" /f>nul

[ 本帖最后由 2011mking 于 2012-5-8 17:50 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2012-5-8 17:45:37 | 显示全部楼层
原帖由 elai 于 2012-5-8 17:40 发表

是R盘的!

没问题就好。。。
回复

使用道具 举报

 楼主| 发表于 2012-5-8 17:47:15 | 显示全部楼层
原帖由 2011mking 于 2012-5-8 17:45 发表
下载过我整合的157M的PE可以试试,用这个配置是在进入桌面前生效
外置安装.cmd
-----------------------------------
@echo off
PUSHD %~dp0
::显卡驱动
LoadDrv.exe %cd%\drv\VCARD.CAB
::声卡驱动
Lo ...

R:/Temp
这句是不是符号弄反了?

应该是 R:\Temp吧?
回复

使用道具 举报

发表于 2012-5-8 17:48:37 | 显示全部楼层
写错了,是R:\Temp
回复

使用道具 举报

 楼主| 发表于 2012-5-8 17:49:34 | 显示全部楼层
原帖由 2011mking 于 2012-5-8 17:48 发表
写错了,是R:\Temp

我也是今天后面才发现的。。。
后面我自己已经改正了
回复

使用道具 举报

发表于 2012-5-8 17:55:10 | 显示全部楼层
不过好象没影响,Ms好象有修正。现在在外面,回家再看看反写的/是不是Ms自动修正了。
回复

使用道具 举报

发表于 2012-5-8 18:01:23 | 显示全部楼层
原帖由 2011mking 于 2012-5-8 17:03 发表
if exist %windir%\system32\drivers\imdisk.sys goto :装载Ramdisk
imdisksetup.exe
:装载Ramdisk
.....

----------------------------------
另外,拟了一个跳过空盘驱动器的搜索,有兴趣的可以试试
...


我用联想机器试了下,没反应啊
----------------------------------------------------------
On Error Resume Next
Dim fso, SubDrives, i,File
Set fso = CreateObject("Scripting.FileSystemObject")
Set SubDrives = fso.Drives
set ws=WScript.CreateObject("WScript.Shell")
For Each i In SubDrives
    File=i.DriveLetter & "\petools\xx.exe"
    if i.IsReady=true then
      if  fso.FileExists(File) then
        ws.Run File,0 :Exit For
      End if
    End if
Next
-------------------------------------------------------------
单独运行\petools\xx.exe能够加载外置,就是有错误提示!!
回复

使用道具 举报

发表于 2012-5-8 18:06:01 | 显示全部楼层
原帖由 zhs509 于 2012-5-8 12:15 发表

IP工具这个自己配置外置就是了。。。
pecmd的LINK、FILE、EXEC这几条命令就够了。。。

难道Z大忘了,UD合盘里的Win7PE.ISO是不能DIY滴。
回复

使用道具 举报

 楼主| 发表于 2012-5-8 18:11:43 | 显示全部楼层
原帖由 chanel 于 2012-5-8 18:06 发表

难道Z大忘了,UD合盘里的Win7PE.ISO是不能DIY滴。

不能DIY,但是可以配置外置。。。

可以是自动创建任意分区或UD区PETOOLS的快捷方式到开始菜单,建议直接UD区配置下就是了,反正就那几个小文件。。。
回复

使用道具 举报

发表于 2012-5-8 18:16:32 | 显示全部楼层
原帖由 2011hiboy 于 2012-5-8 18:01 发表


我用联想机器试了下,没反应啊
----------------------------------------------------------
On Error Resume Next
Dim fso, SubDrives, i,File
Set fso = CreateObject("Scripting.FileSystemObject" ...


请注意看前面的备注呀,你用exe加载,不要选隐藏参数了
    File=i.DriveLetter & "\petools\xx.exe"
    if i.IsReady=true then
      if  fso.FileExists(File) then
        ws.Run File,0 :Exit For

应该用
ws.Run File :Exit For
回复

使用道具 举报

发表于 2012-5-8 18:19:11 | 显示全部楼层
原帖由 zhs509 于 2012-5-8 17:49 发表

我也是今天后面才发现的。。。
后面我自己已经改正了


::软件安装
md R:\temp
Set  TempPath=R:/Temp
Mset Temp %TempPath%
Mset Tmp  %TempPath%
Mset Temp %TempPath% /system
Mset Tmp  %TempPath% /system

虽然其中/写反了,但Ms确实纠正了。难道环境变量中的\ ms会自动修正?
回复

使用道具 举报

发表于 2012-5-8 18:25:23 | 显示全部楼层
刚才试了一下,开机PECMD调用“创建内存盘并设置临时文件夹.exe”也是即时生效的!只是调用时要放在PECMD.INI靠前一些,如下命令:
//用户登录界面
     EXEC !%SystemRoot%\System32\tsdiscon.exe
     EXEC !=net start gpsvc
     HOTK #255,PECMD.EXE SHUT   //电源键关机
     EXEC !%ProgramFiles%\Keys\创建内存盘并设置临时文件夹.exe
//////////////////////////////////////////////////////////////////////////////////////////////
/////Network////////////////////////////////////////////////////////////////////////////////////
//-----------------------------------网络服务------------------------------------------
无标题.jpg
回复

使用道具 举报

 楼主| 发表于 2012-5-8 18:30:06 | 显示全部楼层
原帖由 elai 于 2012-5-8 18:25 发表
刚才试了一下,开机PECMD调用“创建内存盘并设置临时文件夹.exe”也是即时生效的!只是调用时要放在PECMD.INI靠前一些,如下命令:


那应该是要靠前一些调用,我下面的代码应该也是没问题的,我修改的pe刚好自带了setx.exe
我是进入桌面后pecmd调用的批处理,IE的有生效。临时目录的没生效,但注销也生效了
  1. @echo off
  2. color 0a
  3. pushd %~dp0
  4. echo.
  5. if not exist Y: EXIT

  6. if not exist Y:\IECache (md Y:\IECache\)
  7. if exist "Y:\IECache" (if not exist Y:\IECache\ (del /f /s /q Y:\IECache && md Y:\IECache\))
  8. reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "Cache" /t reg_expand_sz /d "Y:\IECache\Temporary Internet Files" /f>nul

  9. if not exist Y:\temp (md Y:\temp\)
  10. if exist Y:\temp (if not exist Y:\temp\ (del /f /s /q Y:\temp && md Y:\temp\))
  11. Set TempPath=Y:\Temp
  12. setx.exe Tmp %TempPath%
  13. setx.exe Tmp %TempPath% /m
  14. setx.exe Temp %TempPath%
  15. setx.exe Temp %TempPath% /m
复制代码

[ 本帖最后由 zhs509 于 2012-5-8 18:31 编辑 ]
回复

使用道具 举报

发表于 2012-5-8 18:31:13 | 显示全部楼层

回复 #1312 elai 的帖子

想要开机调用压根就不要那么复杂了,直接导入注册表修改及OK了。
压根用不到setx.exe或者Mset.exe
...普通方式修改需要注销才能生效,开机调用就不需要了,相当于重启,更能生效
回复

使用道具 举报

发表于 2012-5-8 18:34:12 | 显示全部楼层
if not exist Y: EXIT
没有Y:就退出了?应该是 if  exist Y: EXIT 吧?
回复

使用道具 举报

发表于 2012-5-8 18:38:45 | 显示全部楼层
原帖由 2011mking 于 2012-5-8 18:16 发表


请注意看前面的备注呀,你用exe加载,不要选隐藏参数了
    File=i.DriveLetter & "\petools\xx.exe"
    if i.IsReady=true then
      if  fso.FileExists(File) then
        ws.Run File,0 :Exit  ...





我改了可以依旧没用;我电脑上两个U盘,一个量产成硬盘,还有一个正常

外置和VBS文件放在正常的U盘里面,点击VBS,结果没反应,量产成硬盘模式的U盘灯会闪,但正常的U盘灯都不闪
-----------------------------------------------------
On Error Resume Next
Dim fso, SubDrives, i,File
Set fso = CreateObject("Scripting.FileSystemObject")
Set SubDrives = fso.Drives
set ws=WScript.CreateObject("WScript.Shell")
For Each i In SubDrives
File=i.DriveLetter & "\petools\xx.exe"
    if i.IsReady=true then
      if  fso.FileExists(File) then
         ws.Run File :Exit For
      End if
    End if
Next
回复

使用道具 举报

 楼主| 发表于 2012-5-8 18:38:55 | 显示全部楼层
原帖由 2011mking 于 2012-5-8 18:34 发表
if not exist Y: EXIT
没有Y:就退出了?应该是 if  exist Y: EXIT 吧?

内存盘Y盘的创建代码我放在了PECMD.INI里面了

这里先检测是否存在Y盘,不存在Y盘说明内存不够大,我默认不创建它

只有创建了Y盘,我才设置临时目录和IE缓存到Y盘

因此现判断是否存在Y盘,若存在再设置变量等

[ 本帖最后由 zhs509 于 2012-5-8 18:43 编辑 ]
回复

使用道具 举报

发表于 2012-5-8 18:39:07 | 显示全部楼层
原帖由 2011hiboy 于 2012-5-8 18:31 发表
想要开机调用压根就不要那么复杂了,直接导入注册表修改及OK了。
压根用不到setx.exe或者Mset.exe
...普通方式修改需要注销才能生效,开机调用就不需要了,相当于重启,更能生效


这是要根据需要是否要转移Temp,对小内存用户来说是用不着的,所以要动态加载。
回复

使用道具 举报

发表于 2012-5-8 18:47:19 | 显示全部楼层

回复 #1318 2011mking 的帖子

我觉得把文件做在那,让用户自己选择挺好的。

小内存的用户跑不了win7pe,最起码2G,而2G的用户可以设置RAM盘可是设置达到500MB呢

还请大大帮忙看看外置搜索,zhs509修改的可以隐藏空驱动器,但有个致命的bug,

就是我的U盘拔了那个盘符还在那,一个新的空驱动器,插上U盘就好了,如果插上另外一个U盘,那么这个U盘会有两个盘符

。。。。。。。。不会VBS,干着急呢。。。
回复

使用道具 举报

 楼主| 发表于 2012-5-8 18:51:11 | 显示全部楼层
原帖由 2011hiboy 于 2012-5-8 18:47 发表
我觉得把文件做在那,让用户自己选择挺好的。

小内存的用户跑不了win7pe,最起码2G,而2G的用户可以设置RAM盘可是设置达到500MB呢

还请大大帮忙看看外置搜索,zhs509修改的可以隐藏空驱动器,但有个致命的 ...

所以我才说老大的方法相对比较完美一些。。。

我只是去掉了dos时代菜鸟的部分代码。。。

例如我将空的读卡器插上,运行那个vbs后隐藏了,自己拔出后插上TF卡再插上也没看到盘。。。

只能再次运行那个vbs,这个就是弊端。。。

如果2011mking老大提供的没问题,那才是比较完美的解决方案
回复

使用道具 举报

 楼主| 发表于 2012-5-8 18:53:36 | 显示全部楼层
顺便将小小拼音其他输入法都删除。。。
仅保留拼音输入。。。

省得动不动跑其他输入法。。。
回复

使用道具 举报

发表于 2012-5-8 18:55:19 | 显示全部楼层
原帖由 2011hiboy 于 2012-5-8 18:38 发表





我改了可以依旧没用;我电脑上两个U盘,一个量产成硬盘,还有一个正常

外置和VBS文件放在正常的U盘里面,点击VBS,结果没反应,量产成硬盘模式的U盘灯会闪,但正常的U盘灯都不闪
--------------- ...


修正一下:
On Error Resume Next
Dim fso, SubDrives, i,File
Set fso = CreateObject("Scripting.FileSystemObject")
Set SubDrives = fso.Drives
set ws=WScript.CreateObject("WScript.Shell")
For Each i In SubDrives
    File=i.DriveLetter & ":\petools\xx.exe"
    if i.IsReady=true then
      if  fso.FileExists(File) then
      ws.Run File :Exit For
      else
      End if
    End if
Next

你再试试。

[ 本帖最后由 2011mking 于 2012-5-8 18:56 编辑 ]
回复

使用道具 举报

发表于 2012-5-8 18:56:25 | 显示全部楼层

回复 #1320 zhs509 的帖子

能够跳过空驱动器当然最好,可是那段代码在联想实体机没有效果啊。。。

我载试试看老大新提供的啊。。呵呵,我那台联想的G460一直拖着没给同学,就想着解决这个问题呢。。嘿嘿

[ 本帖最后由 2011hiboy 于 2012-5-8 18:57 编辑 ]
回复

使用道具 举报

发表于 2012-5-8 18:57:45 | 显示全部楼层
楼上更新了,请用#1322楼试一下。
回复

使用道具 举报

 楼主| 发表于 2012-5-8 19:03:54 | 显示全部楼层
原帖由 2011mking 于 2012-5-8 18:57 发表
楼上更新了,请用#1322楼试一下。

用批处理的调用没问题,petools.ini的没调用成功
回复

使用道具 举报

发表于 2012-5-8 19:07:07 | 显示全部楼层
原帖由 2011mking 于 2012-5-8 18:55 发表


修正一下:
On Error Resume Next
Dim fso, SubDrives, i,File
Set fso = CreateObject("Scripting.FileSystemObject")
Set SubDrives = fso.Drives
set ws=WScript.CreateObject("WScript.Shell")
F ...



老大新给出的vbs可以加载了,但是依旧有磁盘错误

老大,我想起一个重要的问题:
这是那个xx.exe里面的代码:
----------------------------------
@echo off
:T1
for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
  if exist %%a:\PETOOLS\AUTO.ini  PECMD LOAD %%a:\PETOOLS\AUTO.ini)
------------------------------------------
你给出的VBS不管如何想要加载外置都要调用上面这段代码,
调用上面的这段代码的话因为有空驱动器,依旧问题如初。。

设想:
VBS可以跳过空驱动器,能否让VBS把有用的磁盘驱动器变量%dev%传递给批处理呢???

我批处理的代码就能改成:

@echo off
:T1
if exist %dev%:\PETOOLS\AUTO.ini  PECMD LOAD%dev%:\PETOOLS\AUTO.ini)



通过VBS的筛选来指引批处理

[ 本帖最后由 2011hiboy 于 2012-5-8 19:09 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2012-5-8 19:08:38 | 显示全部楼层
原帖由 2011hiboy 于 2012-5-8 19:07 发表



老大新给出的vbs可以加载了,但是依旧有磁盘错误

老大,我想起一个重要的问题:
这是那个xx.exe里面的代码:
----------------------------------
@echo off
:T1
for %%a in (C D E F G H I J K  ...

如果没比较好的方按,只好用dos时代菜鸟的VBS脚本折中解决了。。。

嘿嘿 如果可以的话,直接用vbs脚本直接导出文件为批处理,然后执行就更完美了

我对vbs脚本完全不了解。。。

[ 本帖最后由 zhs509 于 2012-5-8 19:11 编辑 ]
回复

使用道具 举报

发表于 2012-5-8 19:13:53 | 显示全部楼层
原帖由 zhs509 于 2012-5-8 19:08 发表

如果没比较好的方按,只好用dos时代菜鸟的VBS脚本折中解决了。。。

嘿嘿 如果可以的话,直接用vbs脚本直接导出文件为批处理,然后执行就更完美了


我觉得通过VBS的筛选,指定可用盘符来指引批处理进行外置加载比较合理

原因:VBS可以做到:查看磁盘是否存在,是否可写(昨天老大提供了)
           将存在且可写的盘符设置到变量,我觉得VBS也可以做到

可惜我不会VBS辛苦2011mking 老大了

[ 本帖最后由 2011hiboy 于 2012-5-8 19:15 编辑 ]
回复

使用道具 举报

发表于 2012-5-8 19:15:07 | 显示全部楼层
你先试试搜索另一个测试文件,比如  \petools\notepad.exe
先排除是不是 vbs 引发的错误,还是你的这个 exe 中for引发的。

如果确定的vbs可行,你直接将你的auto执行改成vbs来执行不就行了吗?
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-10-7 21:08

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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