代码简示如下:
procedure TMainForm.Button1Click(Sender: TObject);
var
 a: string;
begin
  if OpenDialog2.Execute then
    a := OpenDialog2.FileName;
end;在弹出打开文件对话框,选择一个文件,并打开的时候出现错误:'access viloation at address 00000000.Read of address 00000000'。
以前从来没有碰到过这样的问题,客户机器上由于安装了SP2(XP系统)以后才出现这个错误,不知道该怎么解决,请指教,感激不尽!

解决方案 »

  1.   

    啊?刚要装XP SP2,看来事实别装了,呵呵
      

  2.   

    刚刚测试过,没有问题。我的是正版xp +sp2
      

  3.   

    我装的是windows2003,当然也是盗版的,为什么也出现这种情况阿?
    而且,有的界面上,不会有这种情况,一切正常,只是客户端com组件上的就不行,而dll就可以,为什么?
      

  4.   

    应该与系统无关,看你的OpenDialog2创建没有?
      

  5.   

    是这样的,在其他的机器上都是好的,不过平台都是windows2000,而我的这台是windows2003
    ,所以有与系统有关的想法,但不知道到底真正的原因是什么
      

  6.   

    而且问题是每次出错的提示都一样,包括地址都一样
    access violation at address 00840004. Read of address 00840004.不知道,这个地址被什么用了,呵呵,气愤
      

  7.   

    一般出现这种语句的时候表示,你的程序语句用到的控件没有创建,或者你的程序理有关dialog的unit包含了没有?
      

  8.   

    用try
    except
    写出意外情况的处理或你就raise个自己的exception
      

  9.   

    我是用的win2003,原来用vclSkin有这问题,不过是vclskin的bug,不用这个第三方控件就没事了
      

  10.   

    smiler007(笑一笑) ( ) 信誉:118  2005-8-2 12:29:46  得分: 0  
      
    我是用的win2003,原来用vclSkin有这问题,不过是vclskin的bug,不用这个第三方控件就没事了
    =====================================================================================看来原因在此!我也使用了该控件,怪不得总出些莫名其妙的毛病!