none
Woher kommt diese COM-Schnittstelle _Recordset_Deprecated RRS feed

  • Frage

  • Hallo Gemeinde,

    ich habe in einigen DLLs bei denen ich mit Windows 7 und ADO eine Schnittstelle woher ich nicht weiß woher diese herkommt. Die Schnittstelle lautet: _Recordset_Deprecated

    Kann mir jemand weiterhelfen.

    Danke vorab

    Grüße Frank

     

    Dienstag, 1. März 2011 19:53

Antworten

Alle Antworten

  • Hallo Frank,

    ich habe in einigen DLLs bei denen ich mit Windows 7 und ADO eine Schnittstelle woher ich nicht weiß woher diese herkommt. Die Schnittstelle lautet: _Recordset_Deprecated

    diese Definition findet sich in ADO 6.0 (Windows 7) und ist normalerweise ausgeblendet. Vermutlich ist sie zum Zwecke der Abwärtskompatibilität enthalten. Du kannst über Projekt => Verweise Schnittstellen spezifischer ADO Versionen (2.0 - 2.8) einbinden, die diese Schnittstelle nicht enthalten und auch mit niedrigeren Versionen funktionieren. Wenn Du die msado15.dll referenzierst, wird zur Entwicklungszeit immer die Schnittstelle  der aktuell auf dem Rechner vorgefundenen Version verwendet.


    Thorsten Dörfler
    Microsoft MVP Visual Basic
    vb-faq.de
    Dienstag, 1. März 2011 20:20
    Moderator
  • Hallo Thorsten,

    der Verweis in den Projektdateien bei denen es vorkommt geht aber auf die diese Schnittstellenbeschreibung in der Typbilbliothek.

    Reference=*\G{2A75196C-D9EB-4129-B803-931327F72D5C}#2.8#0#C:\Program Files (x86)\Common Files\System\ado\msado28.tlb#Microsoft ActiveX Data Objects 2.8 Library

     

    Gruß Frank

    Mittwoch, 2. März 2011 08:49
  • Hallo Frank,

     

    ich habe auch Stunden mit der Fehlersuche zugebracht. Der Fehler liegt wird durch Servicepack 1 von Windows 7 hervorgerufen. Nach meinem Verständniss kann ein mit Windows 7 Sp1 kompiliertes Programm nur mehr auf Clients mit Windows 7 Sp1 ausgeführt werden!!

    Meine Abhilfe war, Sp1 zu deinstallieren, sowie einen Serviepackblocker zu installieren. Ich finde es eine Frechheit, die Inkompatibilät herbeizuführen, ohne die Entwickler darauf aufmerksam zu machen.

     

    Grüße aus Österreich

    Reinhard Böck

    Donnerstag, 24. März 2011 05:42
  • Habe ein ähnliches Problem: Eine VB6 Anwendung die ich auf einem XP-Rechner erstellt habe, hat bis dato auch problemlos auf Windows 2008 R2 Serveren funktioniert. Seit dem Sicherheitsupdate KB2419632 funktioniert das nicht mehr. Anscheinend sind durch dieses Update die msado15.dll inkompatibel geworden. Ich bekam beim kopilieren eine Fehlermeldung die auf die nicht vorhandene Schnittstelle "_Recordset_Deprecated" hingewiesen hat. Seit ich KB2419632 wieder am XP-Rechner deinstalliert habe funktioniert alles wieder wie gewohnt.

    by the way ... kennt jemand ein Workaround, bei dem ich auf das KB2419632 nicht verzichten muß?

    Grüße Christoph


    Freitag, 1. April 2011 10:34
  • Hallo zusammen,

    Eine Diskussion rund um das Thema kann man hier finden:

    Breaking change in MDAC ADODB COM components in Windows 7 Service Pack 1 (es sind auch einige Workarounds für VB6 Projekte vorgeschlagen)

    Und hier ist noch etwas rund um das “_Deprecated“ Problem: http://support.microsoft.com/kb/2517589

    Grüße,

    Robert

    Freitag, 1. April 2011 17:24
    Moderator