ADO连不上数据库?运作程序时出现:Microsoft OLE DB Provider for SQL Server 用户登录‘sa’失败

ADO连不上数据库?运行程序时出现:Microsoft OLE DB Provider for SQL Server 用户登录‘sa’失败
运行程序时出现:Microsoft OLE DB Provider for SQL Server 用户登录‘sa’失败
用ADO连接本地数据库SQL Server2008,用VS2010在当前工程下建立了my_data.udl文件,然后双击后,测试数据库连接成功。代码中利用。
HRESULT hr;
  try
  {
  //实例化连接对象
  hr=m_pConnection.CreateInstance(__uuidof(Connection));
  if(SUCCEEDED(hr))
  {
  //设置连接串属性为UDL文件
  m_pConnection->ConnectionString="File Name=my_data1.udl";
  //设置等待连接打开的时间为20秒
 
  m_pConnection->ConnectionTimeout=20;
  hr=m_pConnection->Open("","","",adConnectUnspecified);
  //hr = m_pConnection->Open(strConnect,"","",NULL);
  if(FAILED(hr))
  {
  AfxMessageBox(TEXT("open fail!"));
  return TRUE;
  }
  }
  else 
  {
  AfxMessageBox(TEXT("createinstance of Connection fail!"));
  return TRUE;
  }
  }
  catch (_com_error e) 
  {
  _bstr_t bstrSource(e.Source());
  _bstr_t bstrDescription(e.Description());
  AfxMessageBox(bstrSource+bstrDescription);
  return TRUE;
  }
------解决方案--------------------
将my_data1.udl的内容复制赋值给m_pConnection->ConnectionString试试。
------解决方案--------------------
OLE初始化了没有,在工程的初始化函数里加上:AfxInitOle();
------解决方案--------------------
连接字符串里的驱动源改成类似Microsoft OLE DB1.1(具体忘了,就是后面有个版本号1.1),你在控制面板里的数据源里看看你的计算机里都有什么数据源,如果没有你建立一个数据源,但驱动是不变的