1. Error c2370: 'libid _ atllib ': redefinition; Different Storage Class
C: \ Program Files \ Microsoft Visual Studio \ vc98 \ ATL \ include \ atlbase. H (79): See Declaration of 'libid _ atllib'
Check if both. H and. file C, which is generated under vc6. H and. the C file also defines the Type Library libid_atllib. You can use Conditional compilation to include only one of them. This problem is not found in the compiler of the higher version.
2. Error c2227: The left side of "-> QueryInterface" must point to class/structure/Union/generic type D: \ Program Files \ vs2010 \ Vc \ include \ comip. h 810
The left and right types do not match, such as the originalCodeIs:
_ Recordsetptr esou = (_ recordsetptr) TW. saddr;
Val = esou-> fields-> item [TW. Para-> getat (0). allocsysstring ()]-> getvalue (). bstrval;
Change
_ Recordsetptr * esou = (_ recordsetptr *) TW. saddr;
Val = (* esou)-> fields-> item [TW. Para-> getat (0). allocsysstring ()]-> getvalue (). bstrval;
Make sure the type conversion is correct.