System.Web.Services.Protocols.SoapException: серверу не удалось обработать запрос - PullRequest
0 голосов
/ 14 апреля 2011

Я использую .net webservice для восстановления базы данных в sqlserver.Я использую SQLDMO.dll, для восстановления базы данных, когда я запускаю приложение, я получаю следующую ошибку.

System.Web.Services.Protocols.SoapException: Серверу не удалось обработать запрос.---> System.UnauthorizedAccessException: получение фабрики классов COM для компонента с CLSID {10021CC1-E260-11CF-AE68-00AA004A34D5} завершилось неудачно из-за следующей ошибки: 80070005. at DBReplicatorService.SQLDEMOScripts..ctor () в DBReplicatorServiceService.DerRepvice.RestoreDB (String sDBName, String sUserName, String sPassword, String sBackupFileName)

Я использую следующий код для подключения базы данных

Dim objBCPExport As New SQLDMO.BulkCopy2
Public objDB As SQLDMO.Database2
Dim objServer As New SQLDMO.SQLServer2

Public Function ConnectDatabaseWithRefresh(ByVal sServerName As String, ByVal sDatabaseName As String, ByVal sUserName As String, ByVal sPassword As String) As Boolean
    Dim bResult As Boolean

    Try
        objServer = New SQLDMO.SQLServer2
        objServer.EnableBcp = True
        objServer.Connect(sServerName, sUserName, sPassword)
        objDB = Nothing
        objDB = objServer.Databases.Item(sDatabaseName)
        objDB.DBOption.SelectIntoBulkCopy = True
        bResult = True
    Catch ex As Exception
        bResult = False
    End Try

    Return bResult
End Function

тот же код, когда я использую в моем localhost, этоработает нормально (содержит sql server 2005), и когда я использую его на хост-сервере (он содержит sql server 2008), я получаю вышеуказанную ошибку

Я получаю ошибку при инициализации этих переменных.

Dim objBCPExport As New SQLDMO.BulkCopy2

и строка подключения, которую я использую:

     Dim cnnNewDB As New SqlConnection("Data Source=" + pServer + "Initial Catalog="    +   pDatabase + ";Persist Security Info=True;User ID=" + pUserName + ";Password=" + pPassword)

Может ли кто-нибудь помочь мне решить проблему.

Спасибо, Сентил.

1 Ответ

0 голосов
/ 14 апреля 2011

эй, если вы уверены в точности имени пользователя и пароля сервера ваш проект может не иметь права писать журнал событий .. чтобы исправить это перейти к \ HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Eventlog \ Application \ RestrictGuestAccess и измените его значение на (0) для перезагрузки

...