Serge Yolkin
|
Posted: Sun Jul 18, 2010 02:10 Post subject: |
|
|
Прошу прощения за задержку с ответом, батник, действительно, на встроенной reg:
Code: | @Echo Off
SetLocal
Reg QUERY HKCU\SOFTWARE\Clients\StartMenuInternet /ve>%TEMP%\%~n0.tmp
If %ERRORLEVEL% NEQ 0 Reg QUERY HKLM\SOFTWARE\Clients\StartMenuInternet /ve>%TEMP%\%~n0.tmp
For /f "tokens=3* skip=2" %%i In (%TEMP%\%~n0.tmp) Do (
If %%i EQU REG_SZ (Set #A=%%j) Else (Set #A=%%i))
Reg QUERY HKLM\SOFTWARE\Clients\StartMenuInternet\%#A%\Shell\Open\Command /ve>%TEMP%\%~n0.tmp
For /f "tokens=3* skip=2" %%i In (%TEMP%\%~n0.tmp) Do (
If %%i EQU REG_SZ (Set #A=%%j) Else (Set #A=%%i %%j))
Set #A=%#A:"=%
Call :SN "%#A%"
If Exist %1 (Set #B=%~f1) Else (Set #B=%1)
Start %#A% %#B%
Del /q %TEMP%\%~n0.* 1>Nul 2>Nul
Exit /b
:SN
Set #A=%~s1
Exit /b
Сергей Ёлкин (2010) |
Немного намудрил, чтобы на XP, Vista и 7 работало одинаково (что не всегда так просто, как кажется). К тому же, этому файлу без разницы, запускать локальный файл, или адрес в иНете. |
|