为什么当我使用Cygwin X11 ssh时Vista会抱怨进程死了,如何关闭它?

时间:2020-03-05 18:45:14  来源:igfitidea点击:

当我使用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选项在Vista下的X终端中启用X11转发时,会出现问题。

弹出的对话框不会自动获得焦点,因此按Enter键没有任何作用。我必须等待该框出现,然后用鼠标抓住它,然后将其关闭。甚至迫使错误引起关注也将是朝着正确方向迈出的一步。

根据DrPizza,我已将电子邮件发送到Cygwin邮件列表。缩小的主题行表示我反复尝试绕过过度攻击性的垃圾邮件过滤器,并强调了对诸如StackOverflow之类的需求。

解决方案

回答

问题是,这个过程不仅死了,而且意外地死了。听起来SSH客户端中有一个Vista指出的错误。

回答

我知道对于cygwin用户来说这将是一个异端,但是我们可以只使用PuTTY。

回答

好吧,我不知道最初的问题是什么,但是最近更新Cygwin时,错误信息停止弹出。

我猜这是必须进行基础调整的。

回答

What does unexpectedly mean in this context? Does it mean it core dumped or just exited non-zero?

这意味着它死于未处理的异常,即崩溃了。

回答

Fault Module Name:    comctl32.dll_unloaded
  Exception Code:   c0000005

某些情况触发了comctl32.dll的加载,但后来将其卸载了。

c0000005表示"访问冲突"。可能是有人尝试在已卸载的dll中调用函数。

我同意一位cygwin评论员的观点,认为这可能是某些防病毒程序或者"桌面增强"软件中的错误。视频卡公司也喜欢将他们的东西注入到每个过程中。但是,很容易在没有意识到的情况下使用comctl32.dll。

尝试从Microsoft下载并安装WinDbg。 http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx将其设置为默认的JIT调试器" windbg.exe -I"。下次发生这种情况时,我们应该弹出漂亮的调试器窗口。键入" kv100"以获取堆栈跟踪。查看调用路径中列出的dll,很可能其中一个是罪魁祸首。

如果我们发现不是来自Microsoft或者Cygwin的dll,请卸载该应用程序,然后查看问题是否消失。否则,Cygwin列表可能会对堆栈跟踪感兴趣。