OpenFileDialog抛出"试图读取或写入受保护的内存"

时间:2017-01-06 12:11:00

标签: vb.net access-violation openfiledialog

我在vb.net中尝试使用OpenFileDialog1浏览文件时遇到此错误

  

尝试读取或写入受保护的内存。这通常表明其他内存已损坏

我正在使用此代码:

    Try
        OpenFileDialog1.Filter = "(*.jpg)|*.jpg"
        OpenFileDialog1.InitialDirectory = Nothing
        OpenFileDialog1.FileName = ""
        OpenFileDialog1.ShowDialog()
        If OpenFileDialog1.FileName > "" Then
            TextBox8.Text = OpenFileDialog1.FileName
            PictureBox1.Image = Image.FromFile(TextBox8.Text)
        End If
    Catch ex As Exception
        MsgBox(ex.Message)
        Exit Sub
    End Try  

我的机器上的一切正常,但在客户端计算机上运行应用程序时出现此错误! 有什么想法吗?

3 个答案:

答案 0 :(得分:0)

我有同样的问题, 只需清理所有解决方案项目,然后重建。

答案 1 :(得分:0)

最后我发现它! 我正在使用ms Access 2010和我的项目。 解决方案:是转换为使用2003 !!!! 我不知道那是什么相关!!!!

答案 2 :(得分:0)

根据我对此例外的经验,这个问题有两个很大的原因:

  1. 这是导致问题的主要原因:请始终检查您的构建平台定位以匹配您调用的程序集,因此我认为这是一个混合平台问题。

  2. 始终将一次性组件放入设计器中,或将其声明为私有变量,以便使用所谓的析构函数处理它。

  3. 您可以设置构建选项以在项目设置对话框中设置目标平台。