我有一个备份程序,目前在我们的企业环境中运行大约70台机器.笔记本电脑,台式机和
Windows(xp-32,vista-32,vista-64,7-32-7-64)的混合物没有任何问题.
在安装了.Net 4 Framework的运行Windows 7 64位的Dell Latitude计算机上,控制台应用程序将在启动Sub Main之前立即崩溃.它只是给通用窗口错误“一个问题导致程序停止正常工作”.没有选项可以查看调试信息.
我尝试过的事情:
– 卸载所有不标准的软件
– 评论我认为可能导致问题的几个声明
– 重新编译Auto cpu,x86和x64以查看它是否有所不同
– 禁用病毒扫描程序
– 用户是管理员,但我尝试以管理员身份运行
– 在Sub Main中添加了一个消息框,以确定它崩溃的位置
– 为所有相关代码添加了try catch
我能够从事件查看器中获取更多信息:
错误模块名称:KERNELBASE.dll,版本:6.1.7600.16385,时间戳:0x4a5bdbdf
例外代码:0xe0434f4d
故障偏移:0x0000b727
接下来的几个条目对我来说很奇怪:
错误进程id:0x%9
错误的应用程序启动时间:0x?
错误的申请路径:?
错误模块路径:?
我还能够拉出.wer文件(Windows错误报告平面文件)并且它回流大部分相同的信息,但也包括一些加载的DLL和正在使用的其他文件.
感谢您花时间阅读我的文本墙,希望有人会对如何继续下去有所了解.
约书亚
编辑:
我想到以下Win32 API调用可能会导致问题,而且如果没有大量的代码重写,它们是我唯一不能轻易注释掉的东西.
如果是,为什么只在这台机器上:(
' Obtain a handle to the console application window by passing the title of your application. Dim hWnd As Integer = Process.GetCurrentProcess().MainWindowHandle Dim hMenu As Integer = GetSystemMenu(hWnd,False) 'WIN API Functions to assist in disabling the Close button on the Console Window Private Declare Function DeleteMenu Lib "user32" (ByVal hMenu As Integer,ByVal uPosition As Integer,ByVal uFlags As Integer) As Boolean Private Declare Function GetForegroundWindow Lib "user32" () As Integer Private Declare Function GetSystemMenu Lib "user32" (ByVal hWnd As Integer,ByVal bRevert As Boolean) As Integer Private Declare Function Getwindow Lib "user32" (ByVal hWnd As Integer,ByVal uCmd As Integer) As Integer Private Declare Function GetwindowText Lib "user32" Alias "GetwindowTextA" (ByVal hWnd As Integer,ByVal lpString As String,ByVal nMaxCount As Integer) As Integer Private Declare Function ShowWindow Lib "user32.dll" (ByVal hWnd As Integer,ByVal nCmdshow As Int32) As Boolean Public Declare Function WNetGetConnection Lib "mpr.dll" Alias "WNetGetConnectionA" (ByVal lpszLocalName As String,ByVal lpszRemoteName As String,ByRef cbRemoteName As Integer) As Integer
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。