When clicking Deploy Citrix Receiver in the Citrix StoreFront v3.0 MMC it crashed immediately and I received an error stating: MMC has detected an error in a snap-in and will unload it:
Check your Event Log’s Application Log for accompanying Event IDs 1026 and 1000:
I searched the Internet for this quite generic .NET Framework error and came up with EventID.net:
Since this event can be recorded for a wide variety of applications and theirs specific problems, there are several details recorded in this event that have to be considered before following various suggestions found on support forum:
1. The application name (the application that crashed) – MSHelpListener.exe for the example above
2. The .Net Framework version – i.e. v4.0.21006
3. The cause of the crash. For example, “the process was terminated due to an unhandled exception” means that while running, the application encountered a problem that was not programmed to handle properly (an “exception”).
4. The exception itself: System.Net.HttpListenerException in this case, an error that occurs while processing an HTTP request.
5. The stack (where in the program did that happen).
Since this is a problem with the application itself, unless you are the programmer, you cannot change it. So, what can be done is to try to install the latest version for that application or any hotfixes or contact the developer. In certain situations, understanding the reason of the failure (the “exception”) may help in identifying the nature of the problem and maybe determine ways to avoid it. For example, the System.Net.HttpListenerException, related to a problem with an HTTP request may be caused by a network connection issue or maybe by the local TCP/IP configuration. Other exceptions may point to a permissions problem, lack of space, etc.
Didn’t help pretty much so I was wondering: what causes the MMC crash in the first place? The crash appeared only when clicking Deploy Citrix Receiver and as the MMC configures/changes the underlying Store’s configuration files, e.g. web.config for the Receiver for Web node, I started looking there.
Note: the web.config file can be found in C:\inetpub\wwwroot\Citrix\<ReceiverForWebSiteNameWeb>, e.g. C:\inetpub\wwwroot\Citrix\DemoWeb
For StoreFront v3.0 the different HTML5 Deployment modes are encoded by the following tags within the pluginAssistant group element in web.config file:
- <html5 enabled=”Off” = Install locally
- <html5 enabled=”Fallback” = Use Receiver for HTML5 if local install fails
- <html5 enabled=”Always” = Always use Receiver for HTML5
Simply search for html5 and verify being within the pluginAssistant group element, representing Deploy Citrix Receiver in the StoreFront MMC:
The pluginAssistant group element should be similar to this example:
<pluginAssistant enabled=”true” upgradeAtLogin=”false”>
<win32 path=”http://downloadplugins.citrix.com/Windows/CitrixReceiverWeb.exe” />
<html5 enabled=”Fallback” platforms=”Firefox;Chrome;Version/([6-9]|\d\d).*Safari;MSIE \d\d;Trident/([6-9]|\d\d);Android;iPad;iPhone;iPod;”
<protocolHandler enabled=”true” platforms=”(Macintosh|Windows NT).*Chrome/((4[2-9]|[0-9])|\d\d\d)(?!.*Edge)”
Upon checking the web.config file I realized the html5 tag being different for the affected Receiver for Web site, i.e. <html5 enabled=”on” in my case, and the whole pluginAssistant group being a little bit bogus:
I then tried to simply copy the whole groupAssistant group from a correctly formatted web.config file and pasting it into my seemingly corrupt web.config file and saving it. After that I restarted my StoreFront MMC and clicked Deploy Citrix Receiver once more – et voilá – it worked!
Now I was once more able to adjust the Deploy Citrix Receiver settings in the StoreFront MMC. I guess something went wrong during my upgrade from StoreFront v2.6 to StoreFront v3.0 that messed with the web.config file.