private void RequestTimeStamp() { try { X509Certificate2 sslCert = null; string password = null; if (!string.IsNullOrEmpty(this.UserCertPassword.Text)) { password = this.UserCertPassword.Text; } if (!string.IsNullOrEmpty(this.UserCert.Text)) { sslCert = new X509Certificate2(this.UserCert.Text, password); } NetworkCredential networkCredential = null; if (!string.IsNullOrEmpty(this.UserPassword.Text) || !string.IsNullOrEmpty(this.UserName.Text)) { networkCredential = new NetworkCredential(this.UserName.Text, this.UserPassword.Text); } UserCredentials credentials = null; if (networkCredential != null || sslCert != null) { credentials = new UserCredentials(sslCert, networkCredential); } TimeStampToken token = SharedUtils.RequestTimeStamp( this.ServerAddress.Text, this.SourceFile.Text, ((ComboItemHash)this.HashAlgorithm.SelectedValue).Value, this.RequestedPolicy.Text, this.Nonce.Text, ((ComboItemCertReq)this.TSACertificate.SelectedValue).Value, credentials, new LogDelegate(this.TextAreaLog), this.LogExceptions.Checked); SharedUtils.SaveInFormat(this.SourceFile.Text, token, ((ComboItemFormat)this.ResponseFormat.SelectedValue).Format, this.OutFile.Text); this.TextAreaLog(string.Format("Response saved in {0}", this.OutFile.Text)); MessageBox.Show(string.Format("Time-stamp successfully received."), "Info", MessageBoxType.Information); } catch (Exception e) { MessageBox.Show(string.Format("{0}: {1}", e.GetType(), e.Message), "Error", MessageBoxType.Error); } }