Bug 1351

Summary: 1Cv81: Не работают ссылки в окне "Обзор конфигурации"
Product: WINE@Etersoft Reporter: Leonid Shadevsky <leonid>
Component: Internet Explorer / GeckoAssignee: Станислав Коробейников <stas>
Status: DEFERRED --- QA Contact:
Severity: normal    
Priority: P5 CC: lav
Version: 1.0.9   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:
Заявки RT: Связано с:
Дата напоминания:
Bug Depends on:    
Bug Blocks: 437, 8900    

Description Leonid Shadevsky 2008-03-12 15:31:24 MSK
В конфигурации "Управление призводственными предприятиями" редакция 1.2
в 1с8.1 не выполняются переходы по html-ссылкам в окне "Обзор конфигурации".
Comment 1 Синицын Иван 2008-03-17 17:04:45 MSK
Есть ли готовая бутылка с этой конфигурацией, на которой можно воспроизвести багу?
Comment 2 Синицын Иван 2008-03-17 17:43:32 MSK
Не воспроизводится..У меня все открывается, проверял в бутылке с именем - "1с81.8.76"
Comment 3 Синицын Иван 2008-03-19 13:59:33 MSK
Был не прав. Действительно не работают некоторые ссылки, т.е. те которые выглядят как:

file:///C:/windows/temp2/ОбзорКФГ_Управление_продажами.htm#Взаиморасчеты
т.е. имеют знак '#'.

Если такой же адрес вбить в самом iexplore (под wine), то он тоже выдает ошибку - "Невозможно отобразить страницу".
Если загрузить страницу "file:///C:/windows/temp2/ОбзорКФГ_Управление_продажами.htm" и затем перейти по ссылке, то в адресной строке увидим - "file:///C:/windows/temp2/морасчеты#Взаиморасчеты"

На windows все такие же манипуляции проходят нормально, без ошибок.

Возможно проблема в преобразовании url, возможно проблема в знаке '#'.
Comment 4 Синицын Иван 2008-03-19 14:28:05 MSK
По логам последний файл который wine пытается найти - это 
"C:\\windows\\temp2\\морасчеты". Естественно такого файла нет, поэтому ошибка "невозможно отобразить страницу."
Comment 5 Andrey Vusik 2008-07-10 10:32:45 MSD
Бага осталась. Всё та же бутылка. Всё те же манипуляции.
Comment 6 Vitaly Lipatov 2008-07-10 12:32:19 MSD
Да, похоже обработка # для перехода к указанному якорю не выполняется.
Comment 7 Денис Баранов 2009-03-03 19:12:16 MSK
Ошибка воспроизводится на 1.0.10 eter10.1/eter6
Comment 8 Станислав Коробейников 2010-02-01 21:32:50 MSK
Итак, ошибка все еще воспроизводится.
Там порядок действия примерно такой. 
Первая страница отображается нормально. Вызывактся она примерно так:
file:///C:/windows/temp/%D0%9E%D0%B1%D0%B7%D0%BE%D1%80%D0%9A%D0%A4%D0%93_%D0%A1%D0%BE%D0%B4%D0%B5%D1%80%D0%B6%D0%B0%D0%BD%D0%B8%D0%B5.htm
(т.е. file:///C:/windows/temp/ОбзорКФГ_Содержание.htm)
Файлы все создаются в windows/temp
Дальше ничего не отображается, если кликать по ссылкам.

При клике на ссылку происходит примерно следующее:

trace:mshtml:nsIOService_NewURI (0x32e290("\xd0\x9f\xd0\xb5\xd1\x80\xd0\xb5\xd0\xb9\xd1\x82\xd0\xb8=\xd0\xa3\xd0\xbf\xd1\x80\xd0\xb0\xd0\xb2\xd0\xbb\xd0\xb5\xd0\xbd\xd0\xb8\xd0\xb5_\xd0\xbf\xd1\x80\xd0\xbe\xd0\xb8\xd0\xb7\xd0\xb2\xd0\xbe\xd0\xb4\xd1\x81\xd1\x82\xd0\xb2\xd0\xbe\xd0\xbc") "UTF-8" 0x5f15440 0x32e4c0)
Что означает:
Перейти=Управление_производством

Дальше узнается базовый URL, он все тот же.
base_uri="file:///C:/windows/temp/%D0%9E%D0%B1%D0%B7%D0%BE%D1%80%D0%9A%D0%A4%D0%93_%D0%A1%D0%BE%D0%B4%D0%B5%D1%80%D0%B6%D0%B0%D0%BD%D0%B8%D0%B5.htm"
file:///C:/windows/temp/ОбзорКФГ_Содержание.htm

И вызывается уже 
trace:mshtml:nsURI_SetWineURL (0x5db76c8)->(L"file://C:/windows/temp/Р?РuС?РuР?С,Рё=Р?Р?С?Р°Р?Р>РuР?РёРu_Р?С?Р?РёР·Р?Р?Р?СГС,Р?Р?Р?")

trace:mshtml:nsWebBrowserChrome_SetStatus (0x5f19550)->(3 L"file:///C:/windows/temp/Перейти=Управление_производством")

Файл, естевственно называется file:///C:/windows/temp/ОбзорКФГ_Управление_производством.htm

Функция, которая состыковывает base_url, и то что пришло называется CoInternetCombineUrl. Но как из  "file:///C:/windows/temp/ОбзорКФГ_Содержание.htm" и "Перейти=Управление_производством" получить "file:///C:/windows/temp/ОбзорКФГ_Управление_производством.htm" пока не понятно. 

Ссылка в html файле: "<A href="Перейти=Содержание">" В винде она такая же. 
Comment 9 Станислав Коробейников 2010-02-02 18:31:04 MSK
Я так и не понял как из 
"file:///C:/windows/temp/ОбзорКФГ_Содержание.htm" и "href="Перейти=Управление_производством"" должно получиться  C:/windows/temp/ОбзорКФГ_Управление_производством.htm, и где это долно получаться. 
Comment 10 Vitaly Lipatov 2010-02-08 20:21:22 MSK
Ссылки на заявку нет. Откладываем, пока не появится способ воспроизведения.
Comment 11 Vitaly Lipatov 2010-02-08 20:46:08 MSK
Решили всё же написать тест по перехвату клика на ссылке и проверить его в Windows и WINE. Только это нужно в отдельной блокирующей баге делать, потому что проблема может быть вовсе не в нём.
Comment 12 Станислав Коробейников 2010-02-09 21:44:59 MSK
То что сделал пока не работает, надо переписать, как интерфейс dll, что бы подключить.
Comment 13 Станислав Коробейников 2010-02-10 17:52:56 MSK
Седал COM интерфейс. Он должен подцепляться onaction. Но пока не работает. 
Comment 14 Станислав Коробейников 2010-02-11 19:04:31 MSK
Переделал интерфейс по IDIspatch. IExplorer явно меняет свой обработчик на мой. Правда не делает то что я от него хочу.
Comment 15 Vitaly Lipatov 2014-09-11 18:25:17 MSK
Откладываем за давностью.