public FSharpTemplateTypeBuilder(TemplateOptions options) : base(options) { ProviderOptions.Add("CompilerVersion", "v2.0"); }
public CSharp2TemplateTypeBuilder() : base(new CSharpCodeProvider()) { ProviderOptions.Add("CompilerVersion", "v2.0"); }
public CSharp3TemplateTypeBuilder(TemplateOptions options) : base(options) { ProviderOptions.Add("CompilerVersion", "v3.5"); }
public CertWizard() { InitializeComponent(); // create a list of all csp providers CertEnroll.CCspInformations CspInformations = new CertEnroll.CCspInformations(); CspInformations.AddAvailableCsps(); // enumerate each provider foreach (CertEnroll.ICspInformation oCsp in CspInformations) { // create a structure for display purposes ProviderDetails oOpt = new ProviderDetails(); oOpt.IsHardware = oCsp.IsSmartCard || oCsp.IsHardwareDevice; oOpt.IsLegacy = oCsp.LegacyCsp; ProviderOptions.Add(oCsp.Name, oOpt); // populate display structure with algorithmn information foreach (CertEnroll.ICspAlgorithm oAlg in oCsp.CspAlgorithms) { // special case: eliminate generic ecdsa that does not work if (oAlg.Name.Equals("ECDSA")) { continue; } // hash algorithms if (oAlg.Type == CertEnroll.AlgorithmType.XCN_BCRYPT_HASH_INTERFACE) { if (oOpt.HashAlgorithmns.Contains(oAlg.Name)) { continue; } oOpt.HashAlgorithmns.Add(oAlg.Name); } // signature algorithms else if (oAlg.Type == CertEnroll.AlgorithmType.XCN_BCRYPT_SIGNATURE_INTERFACE || oAlg.Type == CertEnroll.AlgorithmType.XCN_BCRYPT_ASYMMETRIC_ENCRYPTION_INTERFACE) { if (oOpt.SignatureAlgorithmns.Contains(oAlg.Name)) { continue; } oOpt.SignatureAlgorithmns.Add(oAlg.Name); oOpt.SignatureMinLengths.Add(oAlg.Name, oAlg.MinLength); oOpt.SignatureMaxLengths.Add(oAlg.Name, oAlg.MaxLength); } } // sort so rsa is near the top oOpt.SignatureAlgorithmns = oOpt.SignatureAlgorithmns. OrderBy(x => x.Contains("_")).ThenBy(x => x).ToList(); } // set default values oValidFromDatePicker.SelectedDate = DateTime.Now; oValidUntilDatePicker.SelectedDate = DateTime.Now.AddYears(3); // populate extended key usage options foreach (Oid oOid in NativeMethods.GetExtendedKeyUsages()) { // skip weird looking or known problematic options if (oOid.FriendlyName.StartsWith("sz") || oOid.FriendlyName.StartsWith("@")) { continue; } // translate into our display structure EkuOption oKeyUsage = new EkuOption() { Name = oOid.FriendlyName, Oid = oOid.Value }; EnhancedKeyUsages.Add(oKeyUsage); } // populate key usage options foreach (string sKeyUsage in Enum.GetNames(typeof(X509KeyUsageFlags))) { EkuOption oOpt = new EkuOption(); oOpt.Name = Regex.Replace(sKeyUsage, "(\\B[A-Z])", " $1"); oOpt.Oid = sKeyUsage; KeyUsages.Add(oOpt); } // set combobox to sort oProviderComboBox.Items.SortDescriptions.Add(new SortDescription("", ListSortDirection.Ascending)); oKeyUsageCombobox.Items.SortDescriptions.Add(new SortDescription("Name", ListSortDirection.Ascending)); oEnhancedKeyUsageCombobox.Items.SortDescriptions.Add(new SortDescription("Name", ListSortDirection.Ascending)); oProviderType_Checked(null, null); // disable machine store option if user is not an admin oCertificateStoreMachineRadio.IsEnabled = new WindowsPrincipal(WindowsIdentity.GetCurrent()) .IsInRole(WindowsBuiltInRole.Administrator); }
public VisualBasicTemplateTypeBuilder(TemplateOptions options) : base(options) { ProviderOptions.Add("CompilerVersion", "v3.5"); }