2 Stimmen

Kann keine Verbindung zu einem entfernten MS SQL Server Express 2008 R2 von OLE DB herstellen

Ich kann keine Verbindung zum entfernten MS SQL Server Express 2008 R2 herstellen. Auf dem Server ist die externe Verbindung aktiviert, die Firewall ist deaktiviert. Als mein Freund versuchte, sich mit Python zu verbinden, hat alles funktioniert. Ich benutze Visual C++ und OLE DB unter VS 2010.

Der Fehler, den ich bekomme, ist:

[Microsoft][ODBC Driver Manager] Datenquelle nicht gefunden und kein Standardtreiber angegeben

Vielen Dank

0voto

Martin Pilch Punkte 3125

Die Lösung besteht darin, die Open-Methode der CDataSource-Klasse anstelle von OpenFromInitializationString zu verwenden.

0voto

yubaolee Punkte 863

Sie können versuchen, eine adodb-Verbindung zu verwenden, zum Beispiel:

#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","rsEOF")

_ConnectionPtr m_conn;
_RecordsetPtr m_rs;
::CoInitialize(NULL);
try
{
  m_conn.CreateInstance("ADODB.Connection");
  CString conn="Driver={SQL Server};server=(127.0.0.1);uid=sa;database=pubs";
  if(FAILED(m_conn->Open((_bstr_t)conn,"","",-1)))
   {
      ::MessageBox(NULL,"Datenbankverbindung fehlgeschlagen","Fehler",MB_ICONEXCLAMATION);
       return;
   }
 }

 m_rs.CreateInstance("ADODB.Recordset");
 CString strSql = "select * from Tabelle";
 m_rs=m_conn->Execute((_bstr_t)strSql,NULL,adCmdText);

Ich hoffe, das kann Ihnen helfen

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X