我用ADO连接SQL SERVER ,可以成功读出数据,
  #include "icrsint.h"
#import "C:\Program Files\Common Files\System\ADO\msado15.dll" no_namespace rename("EOF", "adoEOF") rename("BOF", "adoBOF")
 
_RecordsetPtr myset;//定义
  但myset->adoEOF不起作用,不能检测到是记录尾,请问是什么原因?编译能通过,但分步调试时候报错:overloaded operator -> not supported,为什么?

解决方案 »

  1.   

    See the link below, FYI:http://www.codeproject.com/info/search.asp?target=ADO+AND+vc+AND+SQL&st=kw&qm=adv
      

  2.   

    谢谢,能帮我详细解释下吗?
    http://www.codeproject.com/info/search.asp?我上不去
      

  3.   

    myset->Open("select * from authors",mydb.GetInterfacePtr(),adOpenStatic,adLockOptimistic,adCmdText);
        我用这个打开了呀
      

  4.   

    我查了半天资料,好象是说_RecordsetPtr不支持->操作,但应如何办,请高手指点!因我太也急着用。
      

  5.   

    _RecordsetPtr是智能指针,支持.操作和->操作的。
    try{while(!MySet-〉adoEOF)...正确执行,我的程序里用过!
      

  6.   

    我的问题已经解决,try{while(!MySet-〉adoEOF)...正确执行是没有问题的,我的程序在此处出现问题是因为别处的毛病,而非真正是此句的原因,请检查一下你的程序,不要光盯着此句。
    建议查一下此行:
    myset->Open("select * from authors",mydb.GetInterfacePtr(),adOpenStatic,adLockOptimistic,adCmdText);
    用调试手段看一下此句是否被执行,如果此句没有被执行或在程序中被跳过的话,try{while(!MySet-〉adoEOF)肯定要出问题。