Setver



设置 MS-DOS 子系统向程序报告的 MS-DOS 版本号。如果在没有参数的情况下使用，setver 命令将显示当前的版本表。


语法



setver [Drive:Path] [FileName n.nn]


setver [Drive:Path] [FileName [/delete [/quiet]]?

 要显示当前版本表，请使用以下语法： 


setver [Drive:Path]


参数



	[Drive:Path]

	指定 Setver.exe 文件的位置。

	FileName

	指定要添加到版本表中的程序文件（.exe 或 .com）的名称。不能使用通配符（* 或 ?）。

	n.nn

	指定 MS-DOS 子系统向指定程序文件报告的 MS-DOS 版本（例如 3.3 或 4.01）。

	/delete 

	删除指定程序文件的版本表项。还可以同时使用 /d。

	/quiet

	从版本表中删除条目时隐藏经常显示的消息。

/?在命令提示符显示帮助。



注释


XOX
	 XOX
	
 使用版本表
	
许多设计为运行在 MS-DOS 中的程序可以在 Windows XP 中正常运行。但是在某些情况下，版本表中没有包括的程序可能无法正常运行。尽管在 MS-DOS 子系统中运行，但是版本表向该程序表明它正在设计使用的 MS-DOS 版本中运行。通过将 MS-DOS 5.0 解释为早期的版本，该程序可能会正常运行；不过，如果程序与 Windows XP 不兼容，那么使用 setver 也不能解决问题。
    
 将版本表载入内存。
	
使用 setver 命令之前，必须在 Config.nt 文件中插入 device 命令，将版本表载入内存。
    
 更新版本表后重新启动
	
通过添加或删除条目更新版本表后，必须启动新的命令提示符会话，以便重新读取版本表。
    
	 更新现存的条目
	
 如果指定的文件名在版本表中已经存在，新条目将替换现存的条目。
	
	 了解 setver 退代码
	
 若要处理 setver 返回的退代码，请在批处理程序的 if 命令行中使用 errorlevel 参数。有关使用“if”处理退代码的批处理程序的范例，请参阅“”。下表列出每一个退代码和描述。


退出码
说明


0
Setver 成功完成了任务。


1
用户指定了无效的命令行选项。


2
用户指定了无效的文件名。


3
系统内存不足以执行该命令。


4
用户指定了无效的版本号格式。


5
Setver 在版本表中找不到指定的条目。


6
Setver 找不到 Setver.exe 文件。


7
用户指定了无效的驱动器。


8
用户指定的命令行选项过多。


9
Setver 检测到缺少的命令行选项。


10
Setver 在读取 Setver.exe 文件时检测到错误。


11
Setver.exe 文件已损坏。


12
指定的 Setver.exe 文件不支持版本表。


13
版本信息表中没有足够的空间供新条目使用。


14
Setver 在写入 Setver.exe 文件时检测到错误。


	




范例



 若要运行 Myprog.exe（使用 MS-DOS 3.30 版运行的文件），请键入下面的命令在版本表中创建条目，以启用 Myprog.exe 来解释 MS-DOS 3.30 版子系统： 

 setver myprog.exe 3.30 

 要从版本表中删除 Myprog.exe 条目（不会影响 Myprog.exe 文件），请键入： 

 setver myprog.exe /delete 

 要列出驱动器 C 上版本表的内容，请键入： 

 setver c: 

XOX




 
