我在vb.net 2013上制作了一个程序。它在我的电脑窗口7上正常运行
当我在另一台计算机上安装程序时。一切正常,除了
当我尝试打开文件来选择图片时。单击打开按钮,程序会冻结一分钟,然后抛出异常:
问题签名: 问题事件名称:BEX 应用程序名称:: BaldEagle.exe 应用版本:1.0.0.0 应用程序时间戳:55b3c11d 故障模块名称:StackHash_0a9e 故障模块版本:0.0.0.0 故障模块时间戳:00000000 异常偏移:c176c13f 例外代码:c0000005 例外数据:00000008 操作系统版本:6.1.7600.2.0.0.768.3 区域设置ID:1033 附加信息1 0a9e 附加信息2 0a9e372d3b4ad19135b953a78882e789 附加信息3 0a9e 附加信息4 0a9e372d3b4ad19135b953a78882e789
互联网上的隐私政策: http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0401
打开文件以选择图片的代码:
Dim ofd As New OpenFileDialog
ofd.Filter = "Text Files (*.jpg)|*.jpg|PNG(*.png)|*.png|gif(*.gif)|*.gif|JPEG(*.jpeg)|*.jpeg"
ofd.InitialDirectory = "c:\"
If ofd.ShowDialog = Windows.Forms.DialogResult.OK Then
Dim bmp As New Bitmap(ofd.FileName)
If bmp.Width.ToString = "300" And bmp.Height.ToString = "300" Then
' MsgBox("Cool")
Else
MsgBox("must be 300×300")
Exit Sub
End If
If Application.StartupPath & "\set\logo.png" = ofd.FileName Then
MsgBox("this is actually your ccurrent logo", MsgBoxStyle.Critical)
Exit Sub
End If
If MsgBox("do you want to change logo ?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
If My.Computer.FileSystem.FileExists(Application.StartupPath & "\set\logo.png") = True Then
My.Computer.FileSystem.DeleteFile(Application.StartupPath & "\set\logo.png")
End If
My.Computer.FileSystem.CopyFile(ofd.FileName, Application.StartupPath & "\set\logo.png")
End If
End If
答案 0 :(得分:1)
调用DEP(数据执行保护)并且您尝试运行的应用程序出现问题时,会发生StackHash错误。注意:我已经尝试过你的代码,它在我的机器上工作正常。
请查看这些步骤是否有助于解决问题......
有关此问题的更多信息 here 。