Author Topic: Синий экран, Google Chrome 17.0.963.56  (Read 20225 times)

0 Members and 1 Guest are viewing this topic.

igor_bond

  • Jr. Member
  • **
  • Posts: 3
Синий экран, Google Chrome 17.0.963.56
« on: February 28, 2012, 08:29:32 AM »
Здравствуйте.

Установил Mibew Messenger 1.6.4. Все работает замечательно, кроме -- вылазит синий экран в "Список ожидающих посетителей", когда заходит посетитель. Причем стоит два компьютера с разным набором железа и установленных драйверов аудио/видео. Везде Google Chrome 17.0.963.56. На том, где вылазит синий экран, вообще чистая ОС Windows 7 + Office 2010 + касперский.

Нашел вот ссылку с такой же проблемой: http://mibew.org/forums/index.php/topic,2719.msg5195.html#msg5195

Закоментил как там написано, но проблема осталась!

I commented in common.js (root/webim/js/souruce) that code:

function playSound(wav_file) {
//   var player = document.createElement("div");
//   var agt = navigator.userAgent.toLowerCase();
//  if(agt.indexOf('opera') != -1) {
//     player.style = "position: absolute; left: 0px; top: -200px;";
//  }
//  document.body.appendChild(player);
//  player.innerHTML = '<embed src="'+wav_file+'" hidden="true" autostart="false" loop="false">';
}

Возможно нужно что-то до установить из плагинов к Chromu/Windows?


Dmitriy Simushev

  • Moderator
  • Native
  • *****
  • Posts: 345
Re: Синий экран, Google Chrome 17.0.963.56
« Reply #1 on: February 28, 2012, 12:31:59 PM »
Доброго времени суток.

Насколько я понимаю проблема связанна с различным трактованием тега <embed>
в версиях Google Chrome 17 и более ранних. Поясню: если я все правильно понимаю,
то данный тег описан в спецификации HTML3 и HTML5 и описание несколько отличается.

Возможные варианты решения проблемы:
1. Использовать тег audio и некоторое количество хаков для организации звука в браузерах,
не поддерживающих HTML5.
2. Закомментировать вывод звука в js файле. Однако тут есть одна важная особенность:
в папке source хранятся не сжатые js файлы, которые на самом деле не используются Mibew.
А используются сжатые файлы из папки /webim/js/164, тоесть для достижения результата править
надо именно их (подробнее про js в mibew тут http://mibew.org/forums/index.php/topic,329.0.html)

В качестве быстрого решения могу предложить исправить файл /webim/js/164/common.php.
Для этого следует найти строчку
Code: [Select]
function playSound(a){var b=document.createElement("div");if(navigator.userAgent.toLowerCase().indexOf("opera")!=-1)b.style="position: absolute; left: 0px; top: -200px;";document.body.appendChild(b);b.innerHTML='<embed src="'+a+'" hidden="true" autostart="true" loop="false">'}и заменить ее на
Code: [Select]
function playSound(a){/*var b=document.createElement("div");if(navigator.userAgent.toLowerCase().indexOf("opera")!=-1)b.style="position: absolute; left: 0px; top: -200px;";document.body.appendChild(b);b.innerHTML='<embed src="'+a+'" hidden="true" autostart="true" loop="false">'*/}
Дмитрий

Buivol

  • Jr. Member
  • **
  • Posts: 1
Re: Синий экран, Google Chrome 17.0.963.56
« Reply #2 on: February 29, 2012, 03:42:53 PM »
Доброго времени суток.
.............................
В качестве быстрого решения могу предложить исправить файл /webim/js/164/common.php.

Дмитрий

прошу прощения, по данному пути нету файлов с расширением "php", только "js", но в common.js нету предлагаемого выше текста(кода).

Dmitriy Simushev

  • Moderator
  • Native
  • *****
  • Posts: 345
Re: Синий экран, Google Chrome 17.0.963.56
« Reply #3 on: February 29, 2012, 06:23:10 PM »
Действительно js. Опечатка)

Что касается кода - у меня вполне может быть другая версия этого
файла - поэтому строки могут отличатся.

Попробуйте после комментирования вот этих строк:
function playSound(wav_file) {
//   var player = document.createElement("div");
//   var agt = navigator.userAgent.toLowerCase();
//  if(agt.indexOf('opera') != -1) {
//     player.style = "position: absolute; left: 0px; top: -200px;";
//  }
//  document.body.appendChild(player);
//  player.innerHTML = '<embed src="'+wav_file+'" hidden="true" autostart="false" loop="false">';
}
в webim/js/source/common.js скопировать с заменой этот файл в webim/js/164/ (сделав на
всякий случай предварительный бэкап файла webim/js/164/common.js)
Это должно решить вашу проблему.

Дмитрий

igor_bond

  • Jr. Member
  • **
  • Posts: 3
Re: Синий экран, Google Chrome 17.0.963.56
« Reply #4 on: March 01, 2012, 08:43:23 AM »
Здравствуйте.

Установил Mibew Messenger 1.6.4. Все работает замечательно, кроме -- вылазит синий экран в "Список ожидающих посетителей", когда заходит посетитель. Причем стоит два компьютера с разным набором железа и установленных драйверов аудио/видео. Везде Google Chrome 17.0.963.56. На том, где вылазит синий экран, вообще чистая ОС Windows 7 + Office 2010 + касперский.

Нашел вот ссылку с такой же проблемой: http://mibew.org/forums/index.php/topic,2719.msg5195.html#msg5195

Закоментил как там написано, но проблема осталась!

I commented in common.js (root/webim/js/souruce) that code:

function playSound(wav_file) {
//   var player = document.createElement("div");
//   var agt = navigator.userAgent.toLowerCase();
//  if(agt.indexOf('opera') != -1) {
//     player.style = "position: absolute; left: 0px; top: -200px;";
//  }
//  document.body.appendChild(player);
//  player.innerHTML = '<embed src="'+wav_file+'" hidden="true" autostart="false" loop="false">';
}

Возможно нужно что-то до установить из плагинов к Chromu/Windows?


Спасибо за помощь, но решение пока не найдено :(. При подмене, "Список ожидающих посетителей" подвисает. Отображает все время Loading....
Есть common.php в ./libs/ , но там нет упоминания на  function playSound.

Сам сжатый js у меня вот такой:

var mn={nn:function(){return function(){this.qn.apply(this,arguments);} ;} ,rn:function(sn,parent,body){Object.tn(Object.tn(sn.prototype,parent.prototype),body);} } ;Object.tn=function(un,hn){for(jn in hn){un[jn]=hn[jn];} return un;}

[... кусь ...]

function(ps,ls,fs,gs,as,bs){var cs=ps.insertCell(-1);cs.id=ls;if(gs)cs.align=gs;cs.className=fs;if(as)cs.height=as;cs.innerHTML=bs;} } ;function vs(ws){var xs=document.createElement("div");var ys=navigator.userAgent.toLowerCase();if(ys.indexOf('opera')!=-1){xs.style="position: absolute; left: 0px; top: -200px;";} document.body.appendChild(xs);xs.innerHTML='<embed src="'+ws+'" hidden="true" autostart="true" loop="false">';} function zs($s){return $s.replace('&','&amp;').replace('<','&lt;').replace('>','&gt;').replace('"','&quot;');}

Dmitriy Simushev

  • Moderator
  • Native
  • *****
  • Posts: 345
Re: Синий экран, Google Chrome 17.0.963.56
« Reply #5 on: March 01, 2012, 02:28:01 PM »
Судя по вашему js файлу вам надо заменить вот этот кусок:
Code: [Select]
function vs(ws){var xs=document.createElement("div");var ys=navigator.userAgent.toLowerCase();if(ys.indexOf('opera')!=-1){xs.style="position: absolute; left: 0px; top: -200px;";} document.body.appendChild(xs);xs.innerHTML='<embed src="'+ws+'" hidden="true" autostart="true" loop="false">';}
на вот такой:
Code: [Select]
function vs(ws){/*var xs=document.createElement("div");var ys=navigator.userAgent.toLowerCase();if(ys.indexOf('opera')!=-1){xs.style="position: absolute; left: 0px; top: -200px;";} document.body.appendChild(xs);xs.innerHTML='<embed src="'+ws+'" hidden="true" autostart="true" loop="false">';*/}
Дмитрий

igor_bond

  • Jr. Member
  • **
  • Posts: 3
Re: Синий экран, Google Chrome 17.0.963.56
« Reply #6 on: March 01, 2012, 03:34:42 PM »
Судя по вашему js файлу вам надо заменить вот этот кусок:
Code: [Select]
function vs(ws){var xs=document.createElement("div");var ys=navigator.userAgent.toLowerCase();if(ys.indexOf('opera')!=-1){xs.style="position: absolute; left: 0px; top: -200px;";} document.body.appendChild(xs);xs.innerHTML='<embed src="'+ws+'" hidden="true" autostart="true" loop="false">';}
на вот такой:
Code: [Select]
function vs(ws){/*var xs=document.createElement("div");var ys=navigator.userAgent.toLowerCase();if(ys.indexOf('opera')!=-1){xs.style="position: absolute; left: 0px; top: -200px;";} document.body.appendChild(xs);xs.innerHTML='<embed src="'+ws+'" hidden="true" autostart="true" loop="false">';*/}
Дмитрий

Спасибо, это то что надо! :)

Dmitriy Simushev

  • Moderator
  • Native
  • *****
  • Posts: 345
Re: Синий экран, Google Chrome 17.0.963.56
« Reply #7 on: March 10, 2012, 11:40:48 AM »
Доброго времени суток.

Появилось решение данной проблемы, которое не приводит
к необходимости отключать звук. Кроме того это решение
позволяет решить проблему с воспроизведением звука в новых
браузерах(поддерживающих html5).

Прикладываю файл с патчем для файла webim/js/source/common.js.
После его применения необходимо выполнить действия,
описанные здесь http://mibew.org/forums/index.php/topic,329.0.html
для того что бы изменения подействовали.

Дмитрий

6opo9a

  • Jr. Member
  • **
  • Posts: 2
Re: Синий экран, Google Chrome 17.0.963.56
« Reply #8 on: April 23, 2012, 03:56:54 PM »
Сделал более красивое решение для зацикливания звука http://mibew.org/forums/index.php/topic,976.msg6333.html#msg6333