private void Install(string path, bool force) { // Get the IAssemblyCache interface NativeMethods.IAssemblyCache assemblyCache = this.GetIAssemblyCache(); // Set the flag depending on the value of force int flag = force ? 2 : 1; // Install the assembly in the cache int result = assemblyCache.InstallAssembly(flag, path, IntPtr.Zero); // If the result is not zero throw an exception if (result != 0) { Log.LogError(string.Format(CultureInfo.CurrentCulture, "Failed to install assembly into the global assembly cache. Result Code: {0}", result)); } }