Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Поиск в Google из контекстного меню (http://forum.oszone.net/showthread.php?t=246247)

didro75 05-11-2012 16:32 2019307

Поиск в Google из контекстного меню
 
Сильно не пинайте т.к. я новичок.
Хочу сделать поиск файла в Гугле из контекстного меню по названию файла.
Импортировал в реестр код:
Код:

Windows Registry Editor Version 5.0
 [HKEY_CLASSES_ROOT\*\shell\openwithgoogle] @="Искать в Google"
 [HKEY_CLASSES_ROOT\*\shell\openwithgoogle\command] @="111.cmd %1"

сделал .cmd файл такого содержания:
Код:

start http://google.com/search?q="%1"
Он ищет начиная с первой буквы пути и до первого пробела.
Вопрос как сделать чтобы передавалось полное имя файла (скажем XXX YYY.avi) и без пути?
Спасибо.

Iska 05-11-2012 17:09 2019349

Код:

start http://google.com/search?q="%*"
Без пути — попробуйте:
Код:

@="111.cmd \"%1\""
+:
Код:

start http://google.com/search?q="%~nx1"

didro75 05-11-2012 17:39 2019369

Пути убрались, но к сожалению открываются несколько окон:
22 пули. Бессмертный.avi ищутся как:
22-поиск в Гугле первое окно
пули и бессмертный как адрес вида h*ttp://пули.\ во втором окне h*ttp://бессмертный.avi\ в третьем

Iska 05-11-2012 22:20 2019558

didro75, попробуем другой подход.

SearchByGoogle.reg:
Код:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\SearchByGoogle]
@="&Искать в Google"

[HKEY_CLASSES_ROOT\*\shell\SearchByGoogle\command]
@="wscript.exe \"E:\\Песочница\\0200\\Search by Google.js\" \"%1\""

E:\Песочница\0200\Search by Google.js
Код:

var sFile = WScript.Arguments.Item(0);
var oFSO = WScript.CreateObject("Scripting.FileSystemObject");
var oWshShell = WScript.CreateObject("WScript.Shell");

if (oFSO.FileExists(sFile))
  oWshShell.Run("http://google.com/search?q=" + encodeURI(oFSO.GetFile(sFile).Name));

WScript.Quit(0)

Вместо «E:\Песочница\0200» указывайте в файле реестра свой путь к файлу «Search by Google.js».

didro75 06-11-2012 01:01 2019690

Спасибо заработало.
А можно еще убрать из имени расширение? Бывают случаи, когда это нужно.

Iska 06-11-2012 17:29 2020209

Попробуйте:
Код:

  oWshShell.Run("http://google.com/search?q=" + encodeURI(oFSO.GetBaseName(sFile)));

didro75 07-11-2012 13:18 2020765

Спасибо, очень помогли.

Iska 13-11-2012 00:34 2024511

Цитата:

Цитата Stealthmax
Что-то я не понял?! У кого это заработало? У меня пишет, что синтаксис неверный. »

Stealthmax, поправил.

didro75 16-11-2012 08:56 2026638

У меня тоже так было, выскочило сообщение, добавил скобку и заработало.

SunBoy2Heaven 30-09-2013 10:48 2226014

Подскажите пожалуйста, а как добавить этот же элемент ещё и на папки? Всё сделал, но работает только с файлами. Спасибо


Время: 19:17.

Время: 19:17.
© OSzone.net 2001-