-1

この 1 週間、私は自分の Windows アプリケーションのセットアップを作成しようとしてきました。

作成した Windows アプリケーションをクライアント マシンにインストールしたいと考えています。そのために、セットアップ プロジェクトの作成中に Microsoft SQL Server 2008 Express を前提条件に追加しました。

クライアント マシンにデータベースとテーブルを作成するデータベース スキーマをインストールするために、プロジェクトにインストーラー クラスを 1 つ作成し、インストーラー クラスの手順から参照されるカスタム アクションを 1 つ追加しました。

これは私の接続文字列です

Data Source=localhost;Initial Catalog=master;Integrated Security=True;User Instance=True  

しかし、私はこのエラーしか得ていません:

System.Data.SqlClient.SqlException (0x80131904): SQL Server への接続を確立中に、ネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないか、アクセスできませんでした。インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。(プロバイダー: 名前付きパイプ プロバイダー、エラー: 40 - SQL Server への接続を開けませんでした)

System.Data.SqlClient.SqlInternalConnection.OnError (SqlException 例外、ブール値 breakConnection)
で System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
で System.Data.SqlClient.TdsParser.Connect (ServerInfo serverInfo、SqlInternalConnectionTds connHandler、ブール値 ignoreSniOpenTimeout、Int64 timerExpire、Boolean encrypt、Boolean trustServerCert、Boolean integratedSecurity)
(System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo、String newPassword、Boolean ignoreSniOpenTimeout、TimeoutTimer timeout、SqlConnection owningObject) で)
System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover (ServerInfo serverInfo、文字列 newPassword、Boolean redirectedUserInstance、SqlConnection owningObject、SqlConnectionString connectionOptions、TimeoutTimer タイムアウト)
で System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist (SqlConnection owningObject、TimeoutTimer タイムアウト、SqlConnectionString connectionOptions、文字列) newPassword、Boolean redirectedUserInstance)

System.Data.SqlClient.SqlInternalConnectionTds..ctor (DbConnectionPoolIdentity ID、SqlConnectionString connectionOptions、オブジェクト providerInfo、文字列 newPassword、SqlConnection owningObject、Boolean redirectedUserInstance)
で System.Data.SqlClient.SqlConnectionFactory.CreateConnection (DbConnectionOptions オプション、オブジェクト poolGroupProviderInfo、DbConnectionPool プール、 DbConnection owningConnection) System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection (DbConnection owningConnection、DbConnectionPool プール、DbConnectionOptions オプション) で

System.Data.ProviderBase.DbConnectionPool.CreateObject (DbConnection owningObject)
で System.Data.ProviderBase.DbConnectionPool.UserCreateRequest (DbConnection owningObject)
で System.Data.ProviderBase.DbConnectionPool.GetConnection (DbConnection owningObject)
で System.Data.ProviderBase.DbConnectionFactory で
System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) の .GetConnection (DbConnection owningConnection)
WindowsFormsApplication5.Installer1.ExecuteSql
(String serverName, String dbName, String Sql )

データ ソースを変更する.\SQLEXPRESSと、次のエラーが発生します。

System.InvalidOperationException: インスタンス エラー。
System.Data.SqlClient.TdsParser.Connect (ServerInfo serverInfo、SqlInternalConnectionTds connHandler、ブール値の ignoreSniOpenTimeout、Int64 timerExpire、ブール値の暗号化、ブール値の trustServerCert、ブール値の IntegratedSecurity)
で System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin (ServerInfo サーバー情報、文字列 newPassword、ブール値ignoreSniOpenTimeout、TimeoutTimer タイムアウト、SqlConnection owningObject)

注:データベースのスキーマをインストールするスクリプトの実行中にこのエラーが発生します..

Windows データベース アプリケーションをクライアント マシンにインストールしたいだけです。もう時間がないので、他の提案も大歓迎です...

よろしく、 マヘシュ

4

1 に答える 1

3
Data Source=.\SQLEXPRESS;Initial Catalog=master;Integrated Security=True;User Instance=True 
于 2012-08-30T09:33:47.970 に答える