我需要带有以下内容的文件autorun.inf:
[autorun]
open=file.bat
icon=icon.ico
和file.bat这个内容用于检测setup.exe和framework4(如果最后一个存在):
REG HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full /v Version :rechek
IF %errorlevel%==0 GOTO INSTALL start setup.exe exit GOTO eof :INSTALL dotNetFx40_Full_x86_x64.exe GOTO rechek
文件.bat文件中的错误是什么?
答案 0 :(得分:1)
这是一个未经测试的批处理代码,它比批处理代码更有意义:
@echo off
setlocal
set "RetryCount=0"
:ReCheckFramework
%SystemRoot%\System32\reg.exe query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full" /v Version>nul 2>nul
if not errorlevel 1 goto EndFrameworkInstall
start "Install FrameWork" /wait dotNetFx40_Full_x86_x64.exe
set /A RetryCount+=1
if %RetryCount% LSS 3 goto ReCheckFramework
:EndFrameworkInstall
endlocal
应始终通过打开命令提示符窗口并在此控制台窗口中运行批处理文件来测试批处理文件。然后可以很容易地看到命令和应用程序的参数列表上的语法错误和错误。
reg.exe
需要执行操作的第一个参数,此处为查询。并且您忘记了注册表项周围的双引号,因为它包含空格。
同样在一行中编写几乎所有命令也是错误的。
那么,如果已经安装了较新的版本,那么最好是真正检查已安装的.NET Framework 4的版本,然后将其放在CD / DVD上。