Frequently Asked Questions

Why is my .NET application very slow to start?

You may find that an application written with Ice for .NET is very slow to start, taking around a minute before it starts running (but runs normally thereafter).

This can happen if you are using the Ice for .NET binary distribution. The assemblies in this distribution have an Authenticode signature. This signature ensures that the assemblies indeed originated at ZeroC and have not been tampered with.

By default, at application load time, the .NET run time verifies the Authenticode signature of the assemblies that are loaded. Each assembly for which authentication succeeds is granted PublisherIdentityPermission; if authentication fails, the assembly is loaded, but not granted this permission.

If you run an Ice for .NET application on an isolated network, authentication cannot succeed because the necessary certificate authorities are unreachable. Moreover, it can take up to a minute or so for the network requests that verifies the signature to time out, causing a long delay until the application starts running.

You can disable Authenticode checking by adding the following to the application's configuration file:

<configuration>
  <runtime>
    <generatePublisherEvidence enabled="false"/>
</runtime> </configuration>

This disables Authenticode checking and therefore avoids the corresponding start-up delay.

Terms of Use | Privacy © 2010 ZeroC, Inc.