pavel-pimenov / flylinkdc-r5xx

flylinkdc-r5xx
GNU General Public License v2.0
55 stars 26 forks source link

Системные настройки браузера по-умолчанию игнорируются (бета версия вплоть до 69) #966

Closed pavel-pimenov closed 9 years ago

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on March 11, 2013 18:22:29

  1. Установить FlyLink
  2. Установить Google Chrome и позволить ему стать браузером по-умолчанию
  3. Для проверки нажмите на какую-либо веб-ссылку в DC-клиенте
  4. Измените системный веб-браузер на Internet Explorer
  5. При нажатии на ссылку в другом клиенте (в моем случае GreyLink) вызывается IE, однако из Flylink'а упорно вызывается Хром.

Original issue: http://code.google.com/p/flylinkdc/issues/detail?id=928

pavel-pimenov commented 9 years ago

From Pavel.Pimenov@gmail.com on March 11, 2013 10:25:30

Если перезапустить после п.4 флая то станет зваться IE?

Status: Accepted

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on March 11, 2013 10:46:48

уже много раз перезапускался и обновлялся и откатывался назад, результат не меняется

pavel-pimenov commented 9 years ago

From Pavel.Pimenov@gmail.com on March 11, 2013 10:48:10

Хм. понятно. принято

pavel-pimenov commented 9 years ago

From Pavel.Pimenov@gmail.com on March 11, 2013 10:53:29

Проверил. не повторилось. только второй браузер запускал оперу. она предложила сделаться по дефолту и следующий запуск флай и клик по hhtp привел к запуску Оперы.

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on March 11, 2013 13:48:38

Первое изменение проходит, не проходит обратное.

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on March 11, 2013 13:51:28

в любом случае, все программы кроме флайлинка вызывают IE

pavel-pimenov commented 9 years ago

From zippoz...@gmail.com on March 11, 2013 14:17:14

Только что проверил:

В системе дефолтным был Хром Переключил на НиХром - он стал перехватывать URL-ы из Флая Переключил на ФФ - и тот сразу стал хватать ссылки Переключил на ИЕ - ссылки хватает ФФ Переключился вновь на Хром - он стал хватать URL-ы

Оперу не испытывал, последние версии Оперы у меня адско глючат.

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on March 11, 2013 14:36:21

Выходит для одной отдельно взятой программы вызывается какой-то не тот системный вызов ? В настройках кроме 0 ничего интересного не нашел. Дополнение: Flylink установлен НЕ в Program File и Не на системный диск, но на этом диске присутствует старая 32-битная Win7. Флайлинк живет в этой папке давно - несколько лет, логов уже 2Гб )). Как ловить ?

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on March 11, 2013 14:45:04

Запустил старый Flylink- r400 из соседней папки, по ссылкам в чате вызывает системный браузер (опера), но в окне обновления при нажатии на кнопку "скачать" открывается опять хром.

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on March 11, 2013 16:47:53

Установил FlylinkDC++ r502 -beta69-x64 build 13191 Compiled on: 2013-03-11 при помощи инсталлятора на системный диск F: в чистую папку. Система Win7 x64 SP1. По ссылкам в чате вызывает хром вместо оперы. Внутренний обозреватель порталов, по всей видимости, использует IE. Старая установка r500 тоже игнорирует системный браузер. Различий в поведении r5xx 32 и 64 бит нет. Обнаружить в системе другую программу кроме флайлинка, которая бы вызывала хром мне не удалось. Различные режимы совместимости и запуск от администратора в ярлыках везде были сняты.

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on March 16, 2013 15:33:09

В тотал командере по F3 посмотрел на FlylinkDC_x64.exe там есть странные строчки (выделенные красным пути отсутствуют в системе) к тому же, как я понял, эти библиотеки 32битные. Куда вообще смотреть ?

Attachment: Fly_lib_dependency.png

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on March 19, 2013 05:28:38

Ребята, ну посмотрите что там в коде, вы сразу найдете, а мне весь код перелопачивать.

pavel-pimenov commented 9 years ago

From JhaoDa on April 14, 2013 16:16:53

Ссылки из чата и эбаута открываются через WinUtil::openLink, которая зовёт WinUtil::translateLinkToextProgramm, которая лезет в реестр (HKEY_CLASSES_ROOT\http\shell\open\command) и ищет там браузер. Но лезет она туда не всегда (но как я понял, в случает простых http-ссылок она вообще в реестр не попадает, а запускает ShellExecute). А в окне обновлятора — RichTextBox, который ссылки обрабатывает сам.

Я думаю, что проблема в том, что браузер читается не из той ветки. Поиск в реестре Win7x86 показал, что по адресу HKCU\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice\Progid находится идентификатор (IE.HTTP, Opera Protocol, FirefoxURL) обработчика ссылок, а по адресу HKCU\Software\Classes\FirefoxURL\shell\open\command находится непосредственно то, что надо запускать. Так же эти ветки есть в HKLM.

Но: в HKCU и в HKLM содержимое этих ключей вполне может быть разное. Разное как по идентификатору обработчика, так и по пути к исполняемом файлу. У меня, например, в обоих ветка FirefoxURL, но в HKCU он содержить путь к Firefox, а в HKLM путь к PaleMoon. При этом: эти ветки могут быть пустыми, а искомый файл обработчика окажется в HKEY_CLASSES_ROOT\FirefoxURL\shell\open\command.

Призываю в тред гуру, которые разъяснят поведение WinUtil::translateLinkToextProgramm.

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on April 14, 2013 16:54:21

или посмотреть реализацию в стронге или еще где браузер вызывается правильно

pavel-pimenov commented 9 years ago

From Pavel.Pimenov@gmail.com on July 29, 2013 23:50:09

Проблема как я понял пока актуальная? Постараемся найти по Blame автора translateLinkToextProgramm

Owner: tret2...@gmail.com

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on September 16, 2013 02:00:15

Проблема сохраняется в FlylinkDC++ r502 -rc1-x64 build 15398 Compiled on: 2013-09-15

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on October 11, 2013 12:26:20

Up. В Win7 x64 проблема сохраняется

pavel-pimenov commented 9 years ago

From Pavel.Pimenov@gmail.com on July 15, 2015 05:25:22

Issue 1580 has been merged into this issue.

pavel-pimenov commented 9 years ago

From Pavel.Pimenov@gmail.com on July 15, 2015 05:43:25

This issue was closed by revision r18734 .

Status: Fixed

pavel-pimenov commented 9 years ago

From Pavel.Pimenov@gmail.com on July 15, 2015 07:11:18

This issue was closed by revision r18739 .

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on July 15, 2015 13:23:33

Вроде, исправилось.

pavel-pimenov commented 9 years ago

From psiha...@gmail.com on July 15, 2015 20:46:07

Исправилось

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on July 21, 2015 03:11:07

Опять сломали в 18766

pavel-pimenov commented 9 years ago

From Pavel.Pimenov@gmail.com on July 21, 2015 04:01:21

К сожалению да

Status: Accepted
Owner: Pavel.Pimenov@gmail.com

pavel-pimenov commented 9 years ago

From Pavel.Pimenov@gmail.com on July 22, 2015 09:10:43

Проверьте в текущей бетке - все ок?

Status: Fixed

pavel-pimenov commented 9 years ago

From mike.kor...@gmail.com on July 22, 2015 16:26:36

Исправилось