2015-02-12 1 views
0

Я реализую платежный шлюз под названием Cybersource для своего проекта. Пожалуйста, перейдите по этой ссылке для получения более подробной информации. http://www.cybersource.com/developers/integration_methods/simple_order_and_soap_toolkit_api/Как зарегистрировать CyberSource.WSSecurity.dll на MS azure

Я использую simple_order_and_soap_toolkit_api, и для этого требуется установка WSE. Я установил WSE. Приложение работает нормально на моей локальной машине, но при публикации сайта на сервере Microsoft Azure http://azure.microsoft.com/ возникает ошибка. Подробно об являются следующие: -

"<!DOCTYPE html> 
 
<html> 
 
    <head> 
 
     <title>Retrieving the COM class factory for component with CLSID {698BFD43-76AA-4D13-98FE-5BE9FF5E05B8} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).</title> 
 
     <meta name="viewport" content="width=device-width" /> 
 
     <style> 
 
     body {font-family:"Verdana";font-weight:normal;font-size: .7em;color:black;} 
 
     p {font-family:"Verdana";font-weight:normal;color:black;margin-top: -5px} 
 
     b {font-family:"Verdana";font-weight:bold;color:black;margin-top: -5px} 
 
     H1 { font-family:"Verdana";font-weight:normal;font-size:18pt;color:red } 
 
     H2 { font-family:"Verdana";font-weight:normal;font-size:14pt;color:maroon } 
 
     pre {font-family:"Consolas","Lucida Console",Monospace;font-size:11pt;margin:0;padding:0.5em;line-height:14pt} 
 
     .marker {font-weight: bold; color: black;text-decoration: none;} 
 
     .version {color: gray;} 
 
     .error {margin-bottom: 10px;} 
 
     .expandable { text-decoration:underline; font-weight:bold; color:navy; cursor:hand; } 
 
     @media screen and (max-width: 639px) { 
 
      pre { width: 440px; overflow: auto; white-space: pre-wrap; word-wrap: break-word; } 
 
     } 
 
     @media screen and (max-width: 479px) { 
 
      pre { width: 280px; } 
 
     } 
 
     </style> 
 
    </head> 
 

 
    <body bgcolor="white"> 
 

 
      <span><H1>Server Error in '/' Application.<hr width=100% size=1 color=silver></H1> 
 

 
      <h2> <i>Retrieving the COM class factory for component with CLSID {698BFD43-76AA-4D13-98FE-5BE9FF5E05B8} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).</i> </h2></span> 
 

 
      <font face="Arial, Helvetica, Geneva, SunSans-Regular, sans-serif "> 
 

 
      <b> Description: </b>An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 
 

 
      <br><br> 
 

 
      <b> Exception Details: </b>System.Runtime.InteropServices.COMException: Retrieving the COM class factory for component with CLSID {698BFD43-76AA-4D13-98FE-5BE9FF5E05B8} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).<br><br> 
 

 
      <b>Source Error:</b> <br><br> 
 

 
      <table width=100% bgcolor="#ffffcc"> 
 
       <tr> 
 
        <td> 
 
         <code> 
 

 
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.</code> 
 

 
        </td> 
 
       </tr> 
 
      </table> 
 

 
      <br> 
 

 
      <b>Stack Trace:</b> <br><br> 
 

 
      <table width=100% bgcolor="#ffffcc"> 
 
       <tr> 
 
        <td> 
 
         <code><pre> 
 

 
[COMException (0x80040154): Retrieving the COM class factory for component with CLSID {698BFD43-76AA-4D13-98FE-5BE9FF5E05B8} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).] 
 
    CyberSource.WSSecurity.Signature..cctor() +18 
 

 
[TypeInitializationException: The type initializer for &#39;CyberSource.WSSecurity.Signature&#39; threw an exception.] 
 
    CyberSource.WSSecurity.Signature.get_Version() +24 
 
    CyberSource.Clients.NVPClient.SetVersionInformation(Hashtable request) +77 
 
    CyberSource.Clients.NVPClient.RunTransaction(Configuration config, Hashtable request) +48 
 
    RaftingScene.Web.Areas.PublicSite.Controllers.PublicGearController.PayToCheckOut(String Amount, String Currency, String cardname, String cardnumber, String cvv, String exdate) +560 
 
    lambda_method(Closure , ControllerBase , Object[]) +331 
 
    System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters) +14 
 
    System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) +181 
 
    System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters) +27 
 
    System.Web.Mvc.Async.&lt;&gt;c__DisplayClass42.&lt;BeginInvokeSynchronousActionMethod&gt;b__41() +28 
 
    System.Web.Mvc.Async.&lt;&gt;c__DisplayClass8`1.&lt;BeginSynchronous&gt;b__7(IAsyncResult _) +10 
 
    System.Web.Mvc.Async.WrappedAsyncResult`1.End() +50 
 
    System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult) +32 
 
    System.Web.Mvc.Async.&lt;&gt;c__DisplayClass39.&lt;BeginInvokeActionMethodWithFilters&gt;b__33() +58 
 
    System.Web.Mvc.Async.&lt;&gt;c__DisplayClass4f.&lt;InvokeActionMethodFilterAsynchronously&gt;b__49() +225 
 
    System.Web.Mvc.Async.&lt;&gt;c__DisplayClass37.&lt;BeginInvokeActionMethodWithFilters&gt;b__36(IAsyncResult asyncResult) +10 
 
    System.Web.Mvc.Async.WrappedAsyncResult`1.End() +50 
 
    System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult) +34 
 
    System.Web.Mvc.Async.&lt;&gt;c__DisplayClass2a.&lt;BeginInvokeAction&gt;b__20() +24 
 
    System.Web.Mvc.Async.&lt;&gt;c__DisplayClass25.&lt;BeginInvokeAction&gt;b__22(IAsyncResult asyncResult) +99 
 
    System.Web.Mvc.Async.WrappedAsyncResult`1.End() +50 
 
    System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) +27 
 
    System.Web.Mvc.&lt;&gt;c__DisplayClass1d.&lt;BeginExecuteCore&gt;b__18(IAsyncResult asyncResult) +14 
 
    System.Web.Mvc.Async.&lt;&gt;c__DisplayClass4.&lt;MakeVoidDelegate&gt;b__3(IAsyncResult ar) +23 
 
    System.Web.Mvc.Async.WrappedAsyncResult`1.End() +55 
 
    System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +39 
 
    System.Web.Mvc.Async.&lt;&gt;c__DisplayClass4.&lt;MakeVoidDelegate&gt;b__3(IAsyncResult ar) +23 
 
    System.Web.Mvc.Async.WrappedAsyncResult`1.End() +55 
 
    System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) +29 
 
    System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult) +10 
 
    System.Web.Mvc.&lt;&gt;c__DisplayClass8.&lt;BeginProcessRequest&gt;b__3(IAsyncResult asyncResult) +25 
 
    System.Web.Mvc.Async.&lt;&gt;c__DisplayClass4.&lt;MakeVoidDelegate&gt;b__3(IAsyncResult ar) +23 
 
    System.Web.Mvc.Async.WrappedAsyncResult`1.End() +55 
 
    System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +31 
 
    System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) +9 
 
    System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +9651188 
 
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean&amp; completedSynchronously) +155 
 
</pre></code> 
 

 
        </td> 
 
       </tr> 
 
      </table> 
 

 
      <br> 
 

 
      <hr width=100% size=1 color=silver> 
 

 
      <b>Version Information:</b>&nbsp;Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.36215 
 

 
      </font> 
 

 
    </body> 
 
</html> 
 
<!-- 
 
[COMException]: Retrieving the COM class factory for component with CLSID {698BFD43-76AA-4D13-98FE-5BE9FF5E05B8} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)). 
 
    at CyberSource.WSSecurity.Signature..cctor() 
 
[TypeInitializationException]: The type initializer for &#39;CyberSource.WSSecurity.Signature&#39; threw an exception. 
 
    at CyberSource.WSSecurity.Signature.get_Version() 
 
    at CyberSource.Clients.NVPClient.SetVersionInformation(Hashtable request) 
 
    at CyberSource.Clients.NVPClient.RunTransaction(Configuration config, Hashtable request) 
 
    at RaftingScene.Web.Areas.PublicSite.Controllers.PublicGearController.PayToCheckOut(String Amount, String Currency, String cardname, String cardnumber, String cvv, String exdate) 
 
    at lambda_method(Closure , ControllerBase , Object[]) 
 
    at System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters) 
 
    at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) 
 
    at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters) 
 
    at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass42.<BeginInvokeSynchronousActionMethod>b__41() 
 
    at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass8`1.<BeginSynchronous>b__7(IAsyncResult _) 
 
    at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`1.End() 
 
    at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult) 
 
    at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass37.<>c__DisplayClass39.<BeginInvokeActionMethodWithFilters>b__33() 
 
    at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.<InvokeActionMethodFilterAsynchronously>b__49() 
 
    at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass37.<BeginInvokeActionMethodWithFilters>b__36(IAsyncResult asyncResult) 
 
    at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`1.End() 
 
    at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult) 
 
    at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass25.<>c__DisplayClass2a.<BeginInvokeAction>b__20() 
 
    at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass25.<BeginInvokeAction>b__22(IAsyncResult asyncResult) 
 
    at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`1.End() 
 
    at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) 
 
    at System.Web.Mvc.Controller.<>c__DisplayClass1d.<BeginExecuteCore>b__18(IAsyncResult asyncResult) 
 
    at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass4.<MakeVoidDelegate>b__3(IAsyncResult ar) 
 
    at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`1.End() 
 
    at System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) 
 
    at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass4.<MakeVoidDelegate>b__3(IAsyncResult ar) 
 
    at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`1.End() 
 
    at System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) 
 
    at System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult) 
 
    at System.Web.Mvc.MvcHandler.<>c__DisplayClass8.<BeginProcessRequest>b__3(IAsyncResult asyncResult) 
 
    at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass4.<MakeVoidDelegate>b__3(IAsyncResult ar) 
 
    at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`1.End() 
 
    at System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) 
 
    at System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) 
 
    at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 
 
    at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) 
 
--><!-- 
 
This error page might contain sensitive information because ASP.NET is configured to show verbose error messages using &lt;customErrors mode="Off"/&gt;. Consider using &lt;customErrors mode="On"/&gt; or &lt;customErrors mode="RemoteOnly"/&gt; in production environments.-->"

Я получаю сообщение об ошибке из-за этого DLL файла CyberSource.WSSecurity.Signature

Я искал в гугле и нашел, что это http://forums.asp.net/t/1071492.aspx?COM+problem+Retrieving+the+COM+class+factory+for+component
поэтому необходимо зарегистрировать cybswssecurity.dll как упоминалось в сообщении Try running Regsvr32 cybswssecurity.dll. Я попробовал консоль отладки azure https://raftingscenewebdev.scm.azurewebsites.net/DebugConsole, но получил ошибку «Отказано в доступе». Я зарегистрировался как администратор, но все еще получаю ошибку Access denied. Есть ли другой способ зарегистрировать cybswssecurity.dll? Как я могу управлять безопасностью файлов или доступом пользователей к файлам на лазури? Любая помощь будет оценена. Заранее спасибо!

ответ

1

Похоже, вы используете лазурный веб-сайты, лазурные сайты не поддерживают регистрацию COM-компоненты на машине (а также нет поддержки GAC для .net DLL файлов) http://azure.microsoft.com/en-us/documentation/articles/web-sites-migration-from-iis-server/

Вы должны использовать ВМ или использовать PaaS облачных сервисов, где у вас есть полный контроль над машиной.

+0

Я пробовал это на своем локальном сервере IIS, вызывая ту же ошибку. Я следую этой ссылке http://azure.microsoft.com/en-in/documentation/articles/web-sites-migration-from-iis-server/ Мне нужно понять это, я думаю, что это связано с WSE. –

+0

Может быть какая-то проблема WSE, это точно такая же ошибка (класс не зарегистрирован) на вашем локальном IIS? –

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