vavun
Постоянный участник
- Сообщения
 - 117
 
- Реакции
 - 50
 
Здравствуйте 
Обнаружил на форуме такую замечательную вещь, как поиск в интернете из контекстного меню проводника
Решил подправить под себя, а именно добавить иконки для удобства. Иконки добавлены, но возник вопрос: на сколько опасно использовать переменную %~dp0 , и какие есть выходы и альтернативы ?
	
	
		
			
	
	
	
		
		
	
ЗЫ код рабочий, иконки с соответствующими названиями лежат в папке со скриптом
Спасибо.
	
		
			
		
		
	
				
			
Обнаружил на форуме такую замечательную вещь, как поиск в интернете из контекстного меню проводника
Решил подправить под себя, а именно добавить иконки для удобства. Иконки добавлены, но возник вопрос: на сколько опасно использовать переменную %~dp0 , и какие есть выходы и альтернативы ?
		Код:
	
	
	@set @x=0; /*
@echo off
SetLocal EnableExtensions DisableDelayedExpansion
set "live=%USERPROFILE%"
REG ADD "HKCR\AllFilesystemObjects\Shell" /f >nul 2>&1 || if "%~2" neq "Admin" (
  echo Для установки надстройки требуются повышенные права.
  cscript.exe //nologo //e:jscript "%~f0"& Exit /B) else (echo Вы не обладаете необходимыми привилегиями& pause& Exit /B
)
:begin
cls
echo. Введите цифру и нажмите { ENTER }
echo.
echo. Установить:
echo.
echo 1. Поиск в Google
echo 2. Поиск в Yandex
echo.
set /p "ch=Ваш выбор: "
::Первая часть VBS
for /f "delims=[]" %%N in ('find /n ":UnpackVBS" ^<"%~f0"') do set /a num=%%N
more +%num% >"%live%\KozaN.vbs" <"%~f0"
::Вторая часть VBS
if "%ch%"=="1" (
  set VerbName=Найти в "Google"
  >> "%live%\KozaN.vbs" echo CreateObject^("WScript.Shell"^).Run "explorer ""https://google.ru/search?ie=UTF-8&hl=ru&q=" ^& Arg ^& """"
  REG ADD "HKCR\AllFilesystemObjects\Shell\CopyAsPath"  /v Icon  /t REG_SZ /d "%USERPROFILE%\google.ico" /f
  1>nul copy "%~dp0"google.ico %USERPROFILE% /y
)
if "%ch%"=="2" (
  set VerbName=Найти в "Яндекс"
  >> "%live%\KozaN.vbs" echo CreateObject^("WScript.Shell"^).Run "explorer ""http://yandex.ru/yandsearch?text=" ^& Arg ^& """"
  REG ADD "HKCR\AllFilesystemObjects\Shell\CopyAsPath"  /v Icon  /t REG_SZ /d "%USERPROFILE%\yandex.ico" /f
  1>nul copy "%~dp0"yandex.ico %USERPROFILE% /y
)
if not Defined VerbName goto begin
REG ADD "HKCR\AllFilesystemObjects\Shell\CopyAsPath" /f
REG ADD "HKCR\AllFilesystemObjects\Shell\CopyAsPath"  /ve  /t REG_SZ /d "%VerbName%" /f
REG ADD "HKCR\AllFilesystemObjects\Shell\CopyAsPath\command" /f
REG ADD "HKCR\AllFilesystemObjects\Shell\CopyAsPath\command" /ve /d "wscript.exe //nologo \"%live%\KozaN.vbs\" \"%%1\"" /f
echo.
echo Установка завершена.
echo.
echo "SafeZone.cc"
echo.
pause
Exit /B
*/try {
  var ShellApp = new ActiveXObject('Shell.Application');
  ShellApp.ShellExecute ('cmd.exe', '/c ""' + WScript.ScriptFullName + '" "" "Admin"','','runas',1);
} catch (e) { }/*
:UnpackVBS
  On Error Resume Next
  if WScript.Arguments.Count = 0 then WScript.Quit
  Arg = WScript.Arguments(0)
  Arg = Mid(Arg, InStrRev(Arg, "\") + 1)
  Arg = Replace(Arg, " ", "%20")
  set ShellApp = CreateObject("Shell.Application")'*/
	ЗЫ код рабочий, иконки с соответствующими названиями лежат в папке со скриптом
Спасибо.
 Спасибо за разбор