Uninstalling EPiServer CMO 1.0

Product version:

EPiServer CMO 1.0

Document version:

1.0

Document last saved:

This document describes how to uninstall EPiServer CMO 1.0.

Uninstallation Process

Uninstallation of module could be performed manually. Main uninstallation steps are:

Count of uninstallation steps may vary depending on particular module configuration and whether you want to remove CMO module from one site or from whole web-server. Let’s consider each step in details.

Delete Files Related to CMO Module

On EPiServer site files of CMO module stored in CMO, lang and bin folders in sites root folder. During uninstallation the CMO folder should be deleted completely.
From the lang folder only files with “CMO_” in the beginning of the name should be deleted:

  • CMO_EN.xml
  • CMO_SV.xml

From the bin folder only the following files should be deleted:

  • ComponentArt.UIFramework.lic
  • ComponentArt.Web.Visualization.Charting.dll
  • ComponentArt.Web.Visualization.Charting.Shader.dll
  • ComponentArt.Web.Visualization.Gauges.dll
  • EFExtensions.dll
  • EPiServer.Cmo.Cms.dll
  • EPiServer.Cmo.Core.dll
  • EPiServer.Cmo.UI.dll
  • EPiServer.Cmo.Wizard.dll
  • EPiServer.Trace.dll
  • EPiServer.Trace.CMS.dll
  • System.ServiceModel.PollingDuplex.dll
  • System.Web.DataVisualization.dll

Also CMO license file EPiServerCmoLicense.config in site root folder should be deleted as well.

Remove CMO-Specific web.config and  connectionstrings.config Entries

From the Web.config file:

  1. Remove following string from /configuration/system.web/compilation/assemblies node:
    <add assembly="System.Data.Entity, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
  2. Unregister CMO tag prefix by deleting following node in /configuration/system.web/pages/controls node :
    <add tagPrefix="cmo" namespace="EPiServer.Cmo.UI.Units" assembly="EPiServer.Cmo.UI"/>
  3. Unregister CMO HTTP module. Delete following string in /configuration/system.web/httpModules node:
    <add name="CMOModule" type="EPiServer.Cmo.Cms.HttpModule.Module, EPiServer.Cmo.Cms" />
  4. If you use IIS7 - remove module registration also in /configuration/system.webServer/modules node:
    <add name="CMOModule" type="EPiServer.Cmo.Cms.HttpModule.Module, EPiServer.Cmo.Cms" preCondition="managedHandler" />
  5. Unregister HTTP handler for web gaguges. Remove following strings in /configuration/system.web/httpHandlers node:
    <add verb="GET" path="GaugeHttpHandler.axd" type="ComponentArt.Web.Visualization.Gauges.GaugeHttpHandler, ComponentArt.Web.Visualization.Gauges" />
    <add verb="GET,HEAD" path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
  6. Unregister HTTP handler for web gaguges if you use IIS7. Remove following strings in /configuration/system.web/httpHandlers node:
    <add verb="GET,HEAD" name="ChartImageHandler" path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
    <add verb="GET" path="GaugeHttpHandler.axd" type="ComponentArt.Web.Visualization.Gauges.GaugeHttpHandler, ComponentArt.Web.Visualization.Gauges" />
  7. Remove Chart Handler configuration in /configuration/appSettings  (/configuration/appSettings in IIS7 )
    <add key="ChartImageHandler" value="storage=memory;timeout=20;" />
  8. Unregister Thumbnail Handler. Remove following string in /configuration/system.web/httpHandlers
    <add path="thumbhandler.axd" verb="*" type="EPiServer.Cmo.Cms.ThumbnailHandler.CmoThumbnailHandler" />
    If you use IIS7, the following string should be removed from: /configuration/system.webServer/handlers
    <add name="ThumbnailHandler" path="thumbhandler.axd" verb="*" type="EPiServer.Cmo.Cms.ThumbnailHandler.CmoThumbnailHandler" resourceType="Unspecified" requireAccess="Script" />
  9. Unregister Cached Image Service Handler. Remove following string in /configuration/system.web/httpHandlers
    <add verb="GET" path="cachedimageservice.axd" type="ComponentArt.Web.Visualization.Charting.CachedImageService,ComponentArt.Web.Visualization.Charting" />
    For IIs7 (/configuration/system.web/httpHandlers):
    <add verb="GET" name="cachedimageservice" path="cachedimageservice.axd" type="ComponentArt.Web.Visualization.Charting.CachedImageService,ComponentArt.Web.Visualization.Charting" />
  10. If you use IIS7 – remove handler registration also in /configuration/system.webServer/handlers node:
    <add name="WebGaugeHttpHandler" path="WebGaugeHttpHandler.axd" verb="GET" type="ComponentArt.Web.Visualization.Gauges.GaugeHttpHandler, ComponentArt.Web.Visualization.Gauges"/>

Uninstalling Live Monitor

  1. Remove service section in /configuration/system.serviceModel/services  node: 
    <service behaviorConfiguration="EPiServer.Trace.Services.TraceServiceBehavior" name="EPiServer.Cmo.Cms.Trace.Services.CmoTraceService">
    <endpoint address="" binding="basicHttpBinding" contract="EPiServer.Trace.Services.ITraceService" />
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
    </service>
  2. Remove behavior section in /configuration/system.serviceModel/behaviors/serviceBehaviors :
    <behavior name="EPiServer.Trace.Services.TraceServiceBehavior">
          <serviceMetadata httpGetEnabled="true"/>
          <serviceDebug includeExceptionDetailInFaults="false"/>
    </behavior>
  3. Remove (edit)  “serviceHostingEnvironment “section (/configuration/system.serviceModel node):
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
  4. Remove “Location” sections in /configuration node:
    <location path="CMO/Trace">
          <system.web>
            <authorization>
              <allow roles="WebEditors, WebAdmins, Administrators"/>
              <deny users="*"/>
            </authorization>
          </system.web>
          <system.webServer>
            <handlers>
              <remove name="svc-Integrated" />
              <add name="svc-Integrated" path="*.svc" verb="*" type="System.ServiceModel.Activation.HttpHandler, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" resourceType="Unspecified" preCondition="integratedMode" />
            </handlers>
          </system.webServer>
        </location>
        <location path="CMO/Trace/Handlers">
          <system.web>
            <authorization>
              <allow users="*"/>
            </authorization>
          </system.web>
        </location>

From the connectionStrings.config:

Remove connection string to CMO database named “CmoEntities”. This string looks like this:

<add name="CmoEntities" connectionString="provider connection string=&quot;Data Source=.\sqlexpress;Initial Catalog=Cmo;Integrated Security=False;User ID=dbUserCMO;Password= dbUserCMO;Connect Timeout=10&quot;;metadata=res://*/Entities.CmoModel.csdl|res://*/Entities.CmoModel.ssdl|res://*/Entities.CmoModel.msl;provider=System.Data.SqlClient" providerName="System.Data.EntityClient" />

Remove "CmoLiveMonitor" connection string:

<add name="CmoLiveMonitor" connectionString="Data Source=.\sqlexpress;Initial Catalog= Cmo;Integrated Security=False;User ID=dbUserCMO;Password= dbUserCMO;Connect Timeout=10" providerName="System.Data.SqlClient" />

Delete Database and SQL Server Logins

  • Delete CMO module database.
  • Delete Live monitor database (if it was installed separately from CMO database)
  • Delete SQL server logins used to access CMO database and Live monitor database.

Delete Statistics Handler

If Statistics handler has been hosted inside CMS site (this is default scenario if you have installed Statistic handler by CMO module installer) than you need to delete following record from web.config in "/configuration/system.webServer/handlers node" for IIS7 or in "/configuration/system.web/httpHandlers node for IIS6".

<add verb="GET" name="StatisticsHandler" path="StatisticsHandler.axd" type="EPiServer.Cmo.Core.Statistics.StatisticsHandler, EPiServer.Cmo.Core" />

Also you can delete browser detection files from your web site App_Browsers folder: safari.browser and chrome.browser. If Statistics handler has been installed on separate web site than you just need to delete this site from IIS.

Delete Thumbnail Service (If Not Needed for Other Sites)

First of all you need to stop Thumbnail service. It can be done from Control Panel/Administrative tools/Services find service with name “EPiServer CMO Thumbnail Service” and stop it.  To uninstall the service you need to use standard .NET Framework utility InstallUtil (usually can be found here c:\Windows\Microsoft.NET\Framework\v2.0.50727):

InstallUtil.exe /u [Path to your thumbnail service files]\IECaptSvc.exe

Than you can delete Thumbnail Service files. If the service was installed by CMO module installer, all service files can be found in C:\Program Files\EPiServer\Shared\Services\Thumbnail Service\.

Delete Aggregation Service (If Not Needed for Other Sites)

Please, make sure that Aggregation service not used by other sites before uninstalling it.

Stop the service. It can be done from Control Panel/Administrative tools/Services find service with name “EPiServer CMO Aggregation Service” and stop it. 

To uninstall the service you need to use standard .NET Framework utility InstallUtil (usually can be found here c:\Windows\Microsoft.NET\Framework\v2.0.50727):

InstallUtil.exe /u [Path to your aggregation service files] \EPiServer.Cmo.AggregationService.exe

Than you can delete Aggregation Service files. If the service was installed by CMO module installer, all service files can be found in C:\Program Files\EPiServer\Shared\Services\ CMO Aggregation Service\.

Uninstall the Module

To uninstall the CMO module from server and remove it from EPiServer CMS Deployment center, please uninstall application ‘EPiServer CMS <your CMS version> - EPiServer CMO 1.0.0.0’ from Control panel / Uninstall Programs.