Почему Vista жалуется на мертвый процесс, когда я использую Cygwin X11 ssh, и как мне заставить его заткнуться?
-
09-06-2019 - |
Вопрос
Когда я вхожу на удаленный компьютер, используя переадресацию ssh X11, Vista выдает окно с жалобой на процесс, который неожиданно завершился.Как только я закрываю коробку, все в порядке.Так что мне действительно все равно, если какой-то процесс умер.Как мне заставить Vista заткнуться по этому поводу?
В частности, в сообщении говорится:
sh.exe has stopped working
Так что умер не сам ssh, а какой-то подпроцесс.
Текстовое поле сведений о проблеме гласит:
Problem signature:
Problem Event Name: APPCRASH
Application Name: sh.exe
Application Version: 0.0.0.0
Application Timestamp: 48a031a1
Fault Module Name: comctl32.dll_unloaded
Fault Module Version: 0.0.0.0
Fault Module Timestamp: 4549bcb0
Exception Code: c0000005
Exception Offset: 73dc5b17
OS Version: 6.0.6000.2.0.0.768.3
Locale ID: 1033
Additional Information 1: fc4d
Additional Information 2: d203a7335117760e7b4d2cf9dc2925f9
Additional Information 3: 1bc1
Additional Information 4: 7bc0b00964c4a1bd48f87b2415df3372
Read our privacy statement:
http://go.microsoft.com/fwlink/?linkid=50163&clcid=0x0409
Я замечаю, что проблема возникает, когда я использую -Y опция, позволяющая включить переадресацию X11 в X terminal под управлением Vista.
Всплывающее диалоговое окно не фокусируется автоматически, поэтому нажатие клавиши Enter не имеет смысла.Я должен дождаться появления окна, захватить его мышью и закрыть.Даже принудительное фокусирование ошибки было бы шагом в правильном направлении.
Согласно DrPizza, я отправил Адрес электронной почты в список рассылки Cygwin.Урезанная строка темы представляет мои неоднократные попытки обойти чрезмерно агрессивный спам-фильтр и подчеркивает необходимость чего-то вроде StackOverflow.
Решение 5
Ну, я не знаю, в чем была первоначальная проблема, но когда я недавно обновил Cygwin, сообщение об ошибке перестало появляться.
Полагаю, что перебазировка была необходима.
Другие советы
Проблема в том, что процесс не просто умер, но и неожиданно умер. Похоже, в вашем SSH-клиенте есть ошибка, на которую указывает Vista.
Я знаю, что это будет ересью для пользователя cygwin, но вы можете просто использовать PuTTY вместо этого.
Что означает "неожиданно" в этом контексте?Означает ли это, что ядро сброшено или просто вышло ненулевым?
Это означает, что он умер с необработанным исключением, т.е.он разбился.
Сбой модуля имени: comctl32.dll_unloaded Код исключения: c0000005
Что-то вызвало загрузку comctl32.dll, но позже оно было выгружено.
c0000005 означает «нарушение доступа». Возможно, что-то пыталось вызвать функцию в выгруженной DLL.
Я согласен с одним из комментаторов cygwin в том, что это, возможно, ошибка в какой-либо антивирусной программе или "улучшение рабочего стола" программного обеспечения. Компании, выпускающие видеокарты, тоже любят внедрять свои технологии в каждый процесс. Однако легко использовать comctl32.dll для вещей, даже не осознавая этого.
Попробуйте загрузить и установить WinDbg от Microsoft. http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx
Установите его в качестве отладчика JIT по умолчанию " windbg.exe -I " ;. В следующий раз, когда это произойдет, вы должны увидеть всплывающее окно с хорошим отладчиком. Тип "kv100" чтобы получить трассировку стека. Посмотрите на dll, перечисленные в пути вызова, есть большая вероятность, что один из них является виновником.
Если вы видите DLL, которая не принадлежит Microsoft или Cygwin, удалите это приложение и посмотрите, исчезнет ли проблема. В противном случае список Cygwin может быть заинтересован в трассировке стека.