none
【急】Visual Studio 2008出错 RRS feed

  • 问题

  •     在Microsoft Visual Studio 2008 Pro环境下创建了一个VB程序,但不能运行,出错。代码无问题。后为了检验就重启了VB,只加载1个窗体Form1,内无任何控件和代码,但运行依然出下图的错误。请问是什么原因?如何解决?这是我在向VS2008内添加了VC++2008语言VB出现的,先前无此现象。先前我仅安装了VB2008。

    图为:http://bbs.pep.com.cn/attachments/month_1007/20100728_1c0c5936da689c205e3crkDdwlOM32iC.png

    【错误信息】

    未处理 System.AccessViolationException
     Message="尝试读取或写入受保护的内存。这通常指示其他内存已损坏。"
     Source="System.Windows.Forms"
     StackTrace:
        在 System.Windows.Forms.UnsafeNativeMethods.SendMessage(HandleRef hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
        在 System.Windows.Forms.Control.SendMessage(Int32 msg, Int32 wparam, IntPtr lparam)
        在 System.Windows.Forms.Form.UpdateWindowIcon(Boolean redrawFrame)
        在 System.Windows.Forms.Form.CreateHandle()
        在 System.Windows.Forms.Control.get_Handle()
        在 Microsoft.VisualStudio.HostingProcess.HostProc.RunParkingWindowThread()
        在 System.Threading.ThreadHelper.ThreadStart_Context(Object state)
        在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
        在 System.Threading.ThreadHelper.ThreadStart()
     InnerException:
    

    胡人
    2010年7月28日 3:52

答案

  • 你好!

        是完全可以共存,我已经安装过多次了,并未遇到这个问题啊。

        这个问题很可能是你的系统环境造成的,可能和其他软件有冲突。


    周雪峰
    2010年8月1日 7:54
    版主

全部回复

  • 是不是在VB中引入了VC++的类库什么的?

    估计是底层操作直接存取内存的时候代码出问题了(字符串拷贝,指针什么的等……)。


    建议检查一下调用堆栈里有没有哪个方法使用了非安全代码,或者IntPtr这样与非托管代码关系密切的东西。

    2010年7月29日 1:24
    版主
  • 没有啊……

    难道说VB2008不能和VC++2008共存?或运行过VB2008后再运行VC++2008,再运行VB2008就不行?

    我是初学VC++2008,对着书本做了一些在命令行下打印出一些文本的操作。

    最后通过还原系统解决问题……很烦……


    胡人
    2010年7月30日 3:58
  • 你好!

        是完全可以共存,我已经安装过多次了,并未遇到这个问题啊。

        这个问题很可能是你的系统环境造成的,可能和其他软件有冲突。


    周雪峰
    2010年8月1日 7:54
    版主