anchor.diff:                  info.Arguments <- withFileToSign) System.TimeSpan.MaxValue
           if result <> 0 then failwithf "Error during sign call ")
   
  -    traceEndTask "SignTool" "Successfully signed the specified assemblies"+    traceEndTask "SignTool" "Successfully signed the specified assemblies"
  +
  +/// Signs all files in filesToSign with the certification file certFile, 
  +/// protected with the password in the file passFile. 
  +/// The signtool will be search in the toolPath.
  +[<Obsolete>]
  +let SignTool toolsPath certFile passFile filesToSign =
  +    let certToUse = {
  +        CertFile = certFile
  +        PasswordFile = passFile
  +    }
  +
  +    let signParams = {
  +        FilesToSign = filesToSign
  +        Certificate = Some certToUse
  +        DevCertificate = certToUse
  +        TimeStampUrl = None
  +    }
  +
  +    Sign toolsPath signParams
positive.code: 
  /// Represents a certificate file and an optional password
  type SignCert = {
      File : string
      Password : string option
  }
  
  /// Parameters used for signing.
  
negative.code:     let signPath = toolsPath @@ "signtool.exe"
  
      let certToUse = match parameters.Certificate with
                          | Some cert -> if File.Exists cert.CertFile then cert else parameters.DevCertificate
                          | None -> parameters.DevCertificate
      
      let baseCall = sprintf "sign /a /f \"%s\"" certToUse.CertFile
  
      let withTimeStamp = baseCall + match parameters.TimeStampUrl with
                                          | Some url -> sprintf " /t \"%s\"" url.AbsoluteUri
                                          | None -> ""
  
      let withPassword = withTimeStamp + match certToUse.PasswordFile with
                                             | Some pass -> sprintf " /p \"%s\"" (ReadLine pass)
                                             | None -> ""
  
  