0

Я написал настольные приложения (Windows Forms) в .NET Framework 4.0 с помощью Visual Studio 2010 и SQL Server 2008..exe ошибка запуска на другом компьютере

В папке /bin, он создает .exe файл, который работает на моем компьютере и других компьютерах, если у них установлены Visual Studio и SQL Server. Если они не установлены, то они выдают ошибку отчета, а файл .exe не запускается.

На другом компьютере я протестировал его как на Windows XP sp3, Windows 7 после установки .NET Framework 4.0, так и на установочном пакете Windows Installer 4.5 для WinXP sp3, но без успеха.

В чем проблема? Есть ли что-то не так с моей строки подключения, которая является:

@“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 был имя моего компьютера, на котором я работал, и она работала нормально, но когда я скопировал папку бин в моем другом компьютере с именем HOME-9BE0D501F6 он еще сделал не работает. Я изменил строку подключения в файле app.config с этим именем, но все еще получил ошибку подключения. Я не установил SQL Server 2008 на этом компьютере. Должен ли я установить его? Что еще мне нужно делать?

ответ

0

.\SQLEXPRESS означает экземпляр SQL Express на локальном компьютере, поэтому, если SQL Server не установлен, вы получите сообщение об ошибке.

0

изменить соединение строки с именем собственного

Data Source=<servernameinwhichSQLServerInstalled>\SQLEXPRESS;AttachDbFilename=|DataDirectory|\db.mdf;Integrated Security=True;User Instance=True"; 

сервера Если вы используете (локальный) или DOT (.) Это означает, что он должен подключиться к компьютеру, в котором запущенно приложении. В этом случае, если у вас нет сервера sql или базы данных, установленной на другом компьютере, это приведет к ошибке.

+0

Пожалуйста, укажите пример для , что я могу здесь написать. Я не понимаю, что здесь будет, поскольку оно будет работать на разных машинах, поэтому имя сервера. – user2798264

+0

Вы системное имя или IP, в котором приложение будет установлено –

+0

Я использовал это: Источник данных = HOME-9BE0D501F6 \ SQLEXPRESS; но все же не работал для меня. Нужно ли мне также устанавливать SQL Server 2008 на эту машину?Что еще я должен сделать – user2798264

0

Проблема (как уже упоминалось) заключается в том, что вы сообщаете SQL-подключению использовать имя локального ПК, а не имя сервера (где установлен экземпляр SQL).

Простой способ найти это может быть, чтобы открыть редактор SQL Managment Студия/Query Analyzer/WinSQL/SQL скрипт и запустите скрипт

use [Database name in question] 
Select @@ServerName 

Замените ваш;

Data Source=.\SQLEXPRESS 

С

Data [email protected]@ServerNameResult\SQLEXPRESS 

Надежда, что помогает.

+0

Я использовал это: Источник данных = HOME-9BE0D501F6 \ SQLEXPRESS; но все же не работал для меня. Нужно ли мне также устанавливать SQL Server 2008 на эту машину? Что еще мне нужно сделать – user2798264

+0

Да, вам понадобится SQL Server, установленный на этой рабочей станции/сетевой машине, помните, что вы пытаетесь подключить файл .mdf и, следовательно, нуждаетесь в SQL Server. PS: Вы запустили вышеупомянутый SQL-скрипт, чтобы получить это имя SQL Server, это может быть правильно - просто очень длинное имя. – Hexie

+0

Спасибо за вашу помощь. Теперь он работает отлично. – user2798264

Смежные вопросы