Originally posted by yyf0346 at 2007-9-29 03:53 PM:
已知参数值
SET a=SQLEXPRESS1
如何取得注册表目录HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\SQLEXPRESS1\Setup下数值名称为SQLPath的数值数据
并返回给参数 b
@echo off
set /p a=请输入参数:
set a=%a:*\=%
for /f "delims=" %%i in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\%a%\Setup"^|find /i "SQLPath"') do echo %%i
pause
@echo off
set /p a=请输入参数:
set a=%a:*\=%
for /f "tokens=2*" %%i in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\%a%\Setup"^|find /i "SQLPath"') do echo %%j
pause
Originally posted by wudixin96 at 2007-9-29 05:19 PM:
@echo off
set /p a=请输入参数:
set a=%a:*\=%
for /f "tokens=2*" %%i in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\%a%\Setup"^|find /i &quo ...
我在你这个代码下边加上这段:
set rep=%%j
echo %rep%
显示内容怎么是%j 呢,就是显示%j这两个字符出来,为什么呀》
@echo off
set /p a=请输入参数:
set a=%a:*\=%
for /f "tokens=2*" %%i in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\%a%\Setup"^|find /i "SQLPath"') do echo %%j
pause
麻烦wudixin告诉我一下,下边的代码没有问题,的确是在屏幕上显示了我想要的值,可是我不知道这个值是放在哪个参数里?是%%j吗?
可是当我在pause下边加上这段语句:
set a=%%j
echo %a%
这个时候显示出来的就不是那个值了,能告诉我为什么吗?
@echo off
set /p a=请输入参数:
set a=%a:*\=%
for /f "tokens=2*" %%i in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\%a%\Setup"^|find /i "SQLPath"') do set a=%%j
echo %a%
pause