Visual Basic - -System.ComponentModel.Win32Exception:找不到网络路径

时间:2015-10-02 17:24:29

标签: vb.net sql-server-2008 visual-studio-2015

我收到了另外一家公司的两个Visual Basic应用程序。我的章程是让他们都工作。我通过在VS 2008中创建新的ADO连接来获得第一个工作,然后将文件复制到应用程序并且它可以工作。我使用VS 2015进行工作。这两个应用程序都是.NET 4.0,并且是在VS2010中开发的。

我无法上班的第二个应用程序。我也以同样的方式创建了一个新的ADO Connection。这是一个与其他应用程序不同的数据库。

让我补充一点,我得到了用于创建和加载表格以及应用程序和所有DLL的脚本。

以下是我最终通过重新创建ADO连接工作的应用程序的原始连接字符串(当它在服务器上时):

 <add name="BF_sMaxEntities" connectionString="metadata=res://*/BF_sMaxModel.csdl|res://*/BF_sMaxModel.ssdl|res://*/BF_sMaxModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=db;initial catalog=MM_BF_ENROLLMENTELIGIBILITY;user id=xxx;password=xxx;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

以下是我为修复上述内容而创建的ADO连接:

 <add name="BF_sMaxEntities" connectionString="metadata=res://*/BF_sMaxModel.csdl|res://*/BF_sMaxModel.ssdl|res://*/BF_sMaxModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=R9TDXC5\SQLEXPRESS;initial catalog=MM_BF_ENROLLMENTELIGIBILITY;Integrated Security=True;MultipleActiveResultSets=True&quot;"  providerName="System.Data.EntityClient" />  

重新创建ADO连接后,上面的工作正常工作!!

以下是非工作应用的原始(当它在服务器上时)连接字符串:

 <add name="BF_sMaxEntities" connectionString="metadata=res://*/BF_sMaxModel.csdl|res://*/BF_sMaxModel.ssdl|res://*/BF_sMaxModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=ias-SQLinst01;initial catalog=MM_BF_SoldCase;user id=xxx;password=xxx;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

这是我创建的那个:

<add name="BF_sMaxEntities" connectionString="metadata=res://*/BF_sMaxModel.csdl|res://*/BF_sMaxModel.ssdl|res://*/BF_sMaxModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=R9TDXC5\SQLEXPRESS;initial catalog=MM_BF_SoldCase;user id=xxx;password=xxx;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

我已将我创建新连接字符串的项目中的.sln,.suo和.edmx文件复制到当前的非工作项目中。

我可以使用MSSMS连接到非工作项目数据库,并使用一个名为&#34; RAZOR&#34;

的sql工具

我已经检查了对数据库的远程访问以及所有显而易见的事情......我对VB相当新,但已经开发了20多年。

如果有任何我没有提供的内容可以帮助回答这个问题......那就是你的问题,只需要问一下。

提前致谢!!!

顺便说一句......我纠正了我的胖手指......这是ADO

1 个答案:

答案 0 :(得分:0)

工作连接使用Windows身份验证。不工作的是使用SQL身份验证。

除非您已明确将SQL Express实例配置为使用混合模式身份验证,并使用正确的密码和目标数据库中的正确权限设置SQL用户,否则SQL身份验证将不起作用。

尝试更改非工作连接以使用Windows身份验证:

<add name="BF_sMaxEntities" connectionString="metadata=res://*/BF_sMaxModel.csdl|res://*/BF_sMaxModel.ssdl|res://*/BF_sMaxModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=R9TDXC5\SQLEXPRESS;initial catalog=MM_BF_SoldCase;Integrated Security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />