locked
Cannot registering external assembly - System.EnterpriseServices.dll RRS feed

  • Question

  • Hi,

    I'm trying to register assembly System.EnterpriseServices.dll. I registred several assemblies, that are referenced:
    System.DirectoryServices.dll
    System.DirectoryServices.Protocolls.dll
    System.Drawing.dll

    But then, I found a problem:
    While registring System.EnterpriseServices.dll I recieve error message with  requirement for registration System.Runtime.Remoting.
    While registring System.Runtime.Remoting.dll I recieve error message with requirement for registration  System.Web.
    An finally, when i try to register System.Web, I recieve message requiring registration of System.EnterpriseServices:

    Create failed for SqlAssembly 'System.Web'.  (Microsoft.SqlServer.Smo)

    Assembly 'system.enterpriseservices, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a.' was not found in the SQL catalog.
    Warning: The Microsoft .Net frameworks assembly 'system.web, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=x86.' you are registering is not fully tested in SQL Server hosted environment. (Microsoft SQL Server, Error: 6503)

    For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=09.00.1314&EvtSrc=MSSQLServer&EvtID=6503&LinkId=20476


    All assemblies were loaded from the same folder c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\*.dll
    Version of sqlServer 9.00.1314.06

    Thanks

    Tuesday, October 18, 2005 10:39 AM

Answers

  • This should work if you from SQL Server Management Studio execute the CREATE ASSEMBLY statement against where the dll is originally located:

    create assembly entService
    from 'C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.EnterpriseServices.dll'
    with permission_set = UNSAFE

    When doing it that way, SQL Server is smart enough to work around the various circular references.

    Niels
    Tuesday, October 18, 2005 3:10 PM

All replies

  • This should work if you from SQL Server Management Studio execute the CREATE ASSEMBLY statement against where the dll is originally located:

    create assembly entService
    from 'C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.EnterpriseServices.dll'
    with permission_set = UNSAFE

    When doing it that way, SQL Server is smart enough to work around the various circular references.

    Niels
    Tuesday, October 18, 2005 3:10 PM
  • I tried this in Sql Server 2008 and it failed with this error message:

    Assembly 'System.EnterpriseServices' references assembly 'system.enterpriseservices, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a.', which is not present in the current database. SQL Server attempted to locate and automatically load the referenced assembly from the same location where referring assembly came from, but that operation has failed (reason: version, culture or public key mismatch). Please load the referenced assembly into the current database and retry your request.

    What else could we try?
    The human knowledge belongs to the world.
    Thursday, September 3, 2009 6:38 AM