找回密码
 立即注册
查看: 5980|回复: 0

winxp下bat设置文件关联(打开方式)例子

[复制链接]
发表于 2014-7-18 14:00:12 | 显示全部楼层 |阅读模式
ASSOC .doc=DocFile
FTYPE DocFile="H:\Prayaya\Software\Progra~1\WPSOffice2013Portable\wpsPortable.exe" %%1


WinPE设置文件关联的方法
在WinPE系统里不像在Windows系统一样几乎所有的文件都有关联,也就是直接双击文件时会自动调用匹配的程序去打开这个文件。下面Bigtoothcat就教大家如何使用assocftype命令来设置文件关联。

比如我们要设置媒体文件和Mplayer程序关联可使用如下批处理命令:

set OPDir=B:\外置程序
assoc .rm=mediafile
assoc .rmvb=mediafile
assoc .ra=mediafile
assoc .dat=mediafile
assoc .mp4=mediafile
assoc .flv=mediafile
assoc .avi=mediafile
assoc .mov=mediafile
ftype mediafile=%OPDir%\影音播放\MPLAYER.EXE "%%1"

命令解释:

assoc .rm=mediafile    这一句命令设置扩展名为RM的文件类型为MEDIAFILE(类型名称可随便输,只要不与现有的文件类型重复就行了),当然一个文件类型可以包括多个扩展名,你可以在CMD命令窗口直接输入assoc命令查看本机关联的扩展名。
ftype mediafile=%OPDir%\影音播放\MPLAYER.EXE "%%1"    这一句命令设置用MPLAYER.EXE程序自动打开MEDIAFILE这一类型文件。

命令很简单,你只要修改相应的文件类型和打开程序就可以关联你想要的文件类型了。

ASSOC  显示或修改文件扩展名关联

ASSOC [.ext[=[fileType]]]

.ext      指定跟文件类型关联的文件扩展名
fileType  指定跟文件扩展名关联的文件类型

键入 ASSOC 而不带参数,显示当前文件关联。如果只用文件扩展名调用 ASSOC,则显示那个文件扩展名的当前文件关联。如果不为文件类型指定任何参数,命令会删除文件扩展名的关联。

FTYPE  显示或修改用在文件扩展名关联中的文件类型

FTYPE [fileType[=[openCommandString]]]

fileType  指定要检查或改变的文件类型
openCommandString 指定调用这类文件时要使用的开放式命令。

键入 FTYPE 而不带参数来显示当前有定义的开放式命令字符串的文件类型。 FTYPE 仅用一个文件类型启用时,它显示那个文件类型目前的开放式命令字符串。如果不为开放式命令字符串指定,FTYPE 命令将删除那个文件类型的开放式命令字符串。在一个开放式命令字符串之内,命令字符串 %0 或 %1 被通过关联调用的文件名所代替。%* 得到所有的参数,%2 得到第一个参数,%3 得到第二个,等等。%~n 得到其余所有以 nth 参数打头的参数;n 可以是从 2 到 9 的数字。例如:

ASSOC .pl=PerlScript
FTYPE PerlScript=perl.exe %1 %*

允许您启用以下 Perl 脚本:

script.pl 1 2 3

如果不想键入扩展名,则键入以下字符串:

set PATHEXT=.pl;%PATHEXT%

被启动的脚本如下:

script 1 2 3


附录:文件关联设置/修复批处理工具

@echo off
:start
cls
title AVS Team文件关联修复工具
color 0a
echo "****************************************************"
echo "                AVS Team文件关联修复工具              "
echo "        Authors:glacier_lk&jnh10148 @ AVS Team      "  
echo "                http://www.pc0359.cn"
echo "          此程序在WINDOWS XP SP1/SP2测试通过        "
echo "              发布时间:2007.4.20 2:00a.m.            "
echo "****************************************************"
echo.
echo      A -修复EXE文件关联
echo.
echo      B -修复COM文件关联
echo.
echo      C -修复TXT文件关联
echo.
echo      D -修复BAT/CMD文件关联
echo.
echo      E -修复SCR文件关联
echo.
echo      F -修复REG文件关联
echo.
echo      G -修复HTML/HTM文件关联
echo.
echo      H -修复PIF文件关联
echo.
echo      I -修复LNK文件关联
echo.
echo      J -修复JS文件关联
echo.
echo      K -修复VBS文件关联
echo.
echo      L -修复INI文件关联
echo.
echo      M -修复INF文件关联
echo.
echo      N -修复CHM文件关联
echo.
echo      O -修复HLP文件关联
echo.
echo      P -修复HTA文件关联
echo.
echo      Q -修复JPG文件关联
echo.
echo      R -修复GIF文件关联
echo.
echo      0 -退出
ECHO.
ECHO 输入您要修复的文件关联的代号:
set choice=
set /p choice=
if /I "%choice%"=="A" goto EXE
if /I "%choice%"=="B" goto COM
if /I "%choice%"=="C" goto TXT
if /I "%choice%"=="D" goto BAT
if /I "%choice%"=="E" goto SCR
if /I "%choice%"=="F" goto REG
if /I "%choice%"=="G" goto HTML
if /I "%choice%"=="H" goto PIF
if /I "%choice%"=="I" goto LNK
if /I "%choice%"=="J" goto JS
if /I "%choice%"=="K" goto VBS
if /I "%choice%"=="L" goto INI
if /I "%choice%"=="M" goto INF
if /I "%choice%"=="N" goto CHM
if /I "%choice%"=="O" goto HLP
if /I "%choice%"=="P" goto HTA
if /I "%choice%"=="Q" goto JPG
if /I "%choice%"=="R" goto GIF
if /I "%choice%"=="0" goto EXIT
:EXE
assoc .exe=exefile
ftype exefile="%1"%*
goto start
:COM
assoc .com=comfile
ftype comfile="%1"%*
goto start
:TXT
assoc .txt
ftype txtfile=%SystemRoot%\system32\NOTEPAD.EXE %1
:BAT
assoc .bat=batfile
ftype batfile="%1" %*
assoc .cmd=cmdfile
ftype cmdfile="%1" %*
goto start
:SCR
assoc .scr=scrfile
ftype scrfile="%1" /S
goto start
:REG
assoc .reg=regfile
ftype regfile=regedit.exe "%1"
goto start
:HTML
assoc .html=htmlfile
ftype htmlfile="%Program Files%\Internet Explorer\iexplore.exe" -nohome
goto start
:PIF
assoc .pif=piffile
ftype piffile="%1" %*
goto start
:LNK
assoc .lnk=lnkfile
reg delete "HKCR\lnkfile\CLSID" /v "@" /f
reg add "HKCR\lnkfile\CLSID" /v "@" /t "REG_SZ" /d "{00021401-0000-0000-C000-000000000046}" /f
goto start
:JS
assoc .js=jsfile
ftype jsfile=%SystemRoot%\System32\WScript.exe "%1" %*
goto start
:VBS
assoc .vbs=VBSFile
ftype vbsfile=%SystemRoot%\System32\WScript.exe "%1" %*
goto start
:INI
assoc .ini=inifile
ftype inifile=%SystemRoot%\System32\NOTEPAD.EXE %1
goto start
:INF
assoc .inf=inffile
ftype inffile=%SystemRoot%\System32\NOTEPAD.EXE %1
goto start
:CHM
assoc .chm=chm.file
ftype chm.file="hh.exe" %1
goto start
:HLP
assoc .hlp=hlpfile
ftype hlpfile=winhlp32.exe %1
goto start
:HTA
assoc .hta=htafile
ftype htafile=mshta.exe "%1" %*
goto start
:JPG
assoc .jpg=jpegfile
ftype jpegfile=rundll32.exe shimgvw.dll,ImageView_Fullscreen %1
goto start
:GIF
assoc .gif=giffile
ftype giffile=rundll32.exe shimgvw.dll,ImageView_Fullscreen %1
goto start
:EXIT
echo Do you want to exit the progarm?(y/n)
set choice=
set /p choice=
if /I "%choice%"=="n" goto start
exit

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

本版积分规则

QQ|Archiver|手机版|小黑屋|第一站论坛 ( 蜀ICP备06004864号-6 )

GMT+8, 2024-4-27 09:45 , Processed in 0.060956 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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