本帖最后由 yuucyf 于 2011-08-26 14:43:45 编辑

解决方案 »

  1.   

    试试在xp下把程序重新rebuild all一次
      

  2.   

    我开始也是怀疑是数据库的问题,但是全公司都是这样,客户反应回来也是这样!
    而且还有一个问题就是:
    我设定的是手动提交模式,每当进行数据更新或者插入等操作的时候,我调用SQLEndTran进行提交,可是奇怪的是在xp下,资料不会马上更新到Database中,要在SQLEndTran后面加一条Sleep语句才行,但是在Win7下是没有此类问题.
      

  3.   

    而且XP下和Win7下安装的是同一个Access版本
      

  4.   

    哦? 那看看COM的返回值了。可以帮你确定很多问题的原因。
      

  5.   

    返回值都是OK,但是单Hand住的时候没有返回,当然也就无从看返回值。
      

  6.   

    找到原因了:
    ::SQLSetConnectAttr(m_sqlhConnection, SQL_ATTR_AUTOCOMMIT, (SQLPOINTER)SQL_AUTOCOMMIT_OFF, SQL_NTS);
    更改为:
    ::SQLSetConnectAttr(m_sqlhConnection, SQL_ATTR_AUTOCOMMIT, (SQLPOINTER)SQL_AUTOCOMMIT_OFF, 0);
    就可以了.