C# 在其他电脑上运行.exe时出错

C# 在其他电脑上运行.exe时出错,c#,sql,visual-studio-2010,deployment,sql-server-2008-express,C#,Sql,Visual Studio 2010,Deployment,Sql Server 2008 Express,我使用Visual Studio 2010和SQL Server 2008在.NET Framework 4.0中编写了一个桌面应用程序(Windows窗体) 在/bin文件夹中,它会创建一个.exe文件,如果安装了Visual Studio和SQL Server,该文件在我的计算机和其他计算机上运行良好。如果他们没有安装这些,则会出现报告错误,.exe文件不会运行 在另一台电脑上,我在安装了.NET Framework 4.0之后,在Windows XP sp3和Windows 7上对其进行了

我使用Visual Studio 2010和SQL Server 2008在.NET Framework 4.0中编写了一个桌面应用程序(Windows窗体)

/bin
文件夹中,它会创建一个
.exe
文件,如果安装了Visual Studio和SQL Server,该文件在我的计算机和其他计算机上运行良好。如果他们没有安装这些,则会出现报告错误,
.exe
文件不会运行

在另一台电脑上,我在安装了.NET Framework 4.0之后,在Windows XP sp3和Windows 7上对其进行了测试,还为WinXP sp3安装了Windows Installer 4.5,但没有成功

有什么问题?我的连接字符串是否有任何问题,即:

@“Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\db.mdf;Integrated Security=True;User Instance=True";
如何使我的.exe文件在其他电脑上运行

谢谢,这帮了我很大的忙,现在我知道问题只是连接字符串,但问题仍然没有解决。现在我正在使用这个连接字符串

Data Source=HOME-9BE0D501F6\SQLEXPRESS;AttachDbFilename=|DataDirectory|\shopdb.mdf;Integrated Security= True;User Instance=True

WA-PC是我工作的计算机的名称,它工作正常,但当我将bin文件夹复制到另一台名为HOME-9BE0D501F6的计算机时,它仍然不工作。我已使用此名称更改app.config文件中的连接字符串,但仍然出现连接错误。我尚未在此电脑上安装SQL Server 2008。是否必须安装它?我还要做什么

\SQLEXPRESS
表示本地pc上的SQL Express实例,因此如果未安装SQL Server,则会出现错误。

使用正确的服务器名称更改连接字符串

Data Source=<servernameinwhichSQLServerInstalled>\SQLEXPRESS;AttachDbFilename=|DataDirectory|\db.mdf;Integrated Security=True;User Instance=True";
数据源=\SQLEXPRESS;AttachDbFilename=| DataDirectory |\db.mdf;综合安全=真实;用户实例=True”;
如果您使用的是(本地)或点(.)这意味着它必须连接到运行应用程序的计算机。在这种情况下,如果您没有在不同的计算机上安装sql server或数据库,它将抛出此错误。

问题(如前所述)就是告诉SQL连接使用本地PC名称,而不是服务器(安装SQL实例的服务器)的名称

找到此问题的一个简单方法是打开SQL管理Studio/Query Analyzer/WinSQL/SQL脚本编辑器并运行以下脚本

use [Database name in question]
Select @@ServerName
更换你的手机

Data Source=.\SQLEXPRESS


希望对您有所帮助。

请具体说明我可以在这里写些什么。我不知道这里会写些什么,因为它将在不同的机器上运行,所以是哪个服务器名称。您的系统名称或应用程序将要安装的IP。我使用了以下选项:Data Source=HOME-9BE0D501F6\SQLEXPRESS;但仍然不适用于我。我必须安装sql serv吗er 2008也在那台机器上吗?我还需要做什么?我使用了这个:Data Source=HOME-9BE0D501F6\SQLEXPRESS;但仍然不适合我。我还需要在那台机器上安装sql server 2008吗?我还需要做什么?是的,你也需要在那台工作站/联网机器上安装sql server,记住你正在尝试连接一个.mdf因此,文件需要SQL Server。PS:您是否运行了上述SQL脚本以获得SQL Server名称,它可能是正确的-只是一个很长的名称。@user2798264太好了,如果您能
将此标记为答案并向上投票(单击问题左侧1旁边的向上箭头),将不胜感激。
Data Source=@@ServerNameResult\SQLEXPRESS