public int Execute(CommandLineApplication cmd) { bool showKey = _showKey.HasValue(); string keyFile = _keyFile.Value; StrongNamePublicKey publicKey; try { publicKey = _keyLoader.LoadPublicKey(keyFile); } catch (Exception error) { cmd.Error.WriteLine("ERROR: {0}", error.Message); return(ExitCodes.FromException(error)); } if (showKey) { cmd.Out.WriteLine("Public key (hash algorithm {0}) is:"); cmd.Out.WriteLine(publicKey.CreatePublicKey().ToHexString()); cmd.Out.WriteLine(); } cmd.Out.WriteLine("Public key token is:"); cmd.Out.WriteLine(publicKey.CreatePublicKeyToken().ToHexString()); return(ExitCodes.Success); }
public int Execute(CommandLineApplication cmd) { bool delaySign = _delaySign.HasValue(); bool force = _force.HasValue(); string keyFile = _keyFile.Value; string assemblyFile = _assemblyFile.Value; string outAssemblyFile = !string.IsNullOrEmpty(_outAssemblyFile.Value) ? _outAssemblyFile.Value : null; try { if (File.Exists(outAssemblyFile) && !force) { throw new FileAlreadyExistsException(outAssemblyFile); } if (delaySign) { StrongNamePublicKey publicKey = _keyLoader.LoadPublicKey(keyFile); _signer.DelaySignAssembly(assemblyFile, publicKey, outAssemblyFile); } else { StrongNameKey key = _keyLoader.LoadKey(keyFile); _signer.SignAssembly(assemblyFile, key, outAssemblyFile); } } catch (Exception error) { cmd.Error.WriteLine("ERROR: {0}", error.Message); return(ExitCodes.FromException(error)); } cmd.Out.WriteLine("Assembly '{0}' successfully signed.", outAssemblyFile); return(ExitCodes.Success); }