首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

运行程序时,出现了'read of address 000000D2'异常,谁能指导小弟我下

2012-03-09 
运行程序时,出现了read of address 000000D2错误,哪位高手能指导我下?小妹是初学者,编“用户管理”这项功

运行程序时,出现了'read of address 000000D2'错误,哪位高手能指导我下?
小妹是初学者,编“用户管理”这项功能时,编译没错,运行就出现了 'read   of   address   000000D2 '!    
怎么回事啊?涉及代码是:

    YHq.Close;                                       //查出用户信息
    YHq.SQL.Clear;
    YHQ.SQL.Add( 'SELECT   A.users   as   用户名,B.qxm   as   权限   FROM   c_user   AS   A   ');
    YHQ.SQL.Add( 'INNER   JOIN   c_qxb   AS   B   ON   A.QXID=B.QXID ');
    YHQ.Open;                             //这是个ADOQUERY

    QXM_ADOQ:=TADOQuery.Create(nil);             //动态创建ADOQuery控件
    QXM_ADOQ.Connection:=DM.dbstudy_ADOConn;
    QXM_ADOQ.SQL.Add( 'SELECT   QXM   FROM   c_qxb ');
    QXM_ADOQ.Open;
    while   not   QXM_ADOQ.Eof   do
        begin
            QXCB.Items.Add(QXM_ADOQ.FieldValues[ 'QXM ']);         //取出权限名字段
            QXM_ADOQ.Next;
        end;
    QXM_ADOQ.Close;
    FreeAndNil(QXM_ADOQ);
    ShowYHInfo;         //这是个函数
    YHtable.Open;       //单步到这,就出现那个框框了  

其中
  //编写用户信息函数
Procedure   Txtgl_Form.ShowYHInfo;
begin
    YHM.Text:=DBGrid1.Fields[0].Text;
    YHM.Enabled:=false;
    QXcb.ItemIndex:=QXCB.Items.IndexOf(DBGrid1.Fields[1].Text);
    if   YHM.Text <> YH   then
        begin
            MM.Enabled:=false;
            reMM.Enabled:=false;       //YHM,MM,REMM都是编辑框的NAME
        end
        else   begin
            MM.Enabled:=true;
            ReMM.Enabled:=true;
        end;
end;

我想实现的是:取出用户名和用户权限名(管理员或一般用户)
其中用户名在c_user表内,权限名在c_qxb内

到底为什么出现那个错呢?哪位仁兄能帮我解答下,谢了

[解决办法]
YHtable.Open; //单步到这,就出现那个框框了

YHtable的相关设置有误!
[解决办法]
YHM.Text:=DBGrid1.Fields[0].Text;

DataSet 在之前已經 freeandnil 了
再在這調用會出錯,
如果DBGrid1的DataSet 是 QXM_ADOQ 的話
[解决办法]
ding shang
[解决办法]
你在其他电脑上运行呢?有时候不见得是程序的问题,和系统的软件环境也有关系

热点排行