Fix System.ComponentModel.Win32Exception with Process.Start
Add button link to GitHub
MODIFY
XRayBuilder/src/UI/frmMain.Designer.cs
XRayBuilder/src/UI/frmMain.Designer.cs
@@ -98,6 +98,7 @@ private void InitializeComponent()
this.pbFile2 = new System.Windows.Forms.PictureBox();
this.pbFile1 = new System.Windows.Forms.PictureBox();
this.pbCover = new System.Windows.Forms.PictureBox();
+ this.btnVisitGithub = new System.Windows.Forms.ToolStripMenuItem();
this.groupBox1.SuspendLayout();
this.groupBox3.SuspendLayout();
this.cmsLog.SuspendLayout();
@@ -114,7 +115,7 @@ private void InitializeComponent()
// lblGoodreads
//
this.lblGoodreads.AutoSize = true;
- this.lblGoodreads.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.lblGoodreads.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
this.lblGoodreads.Location = new System.Drawing.Point(9, 24);
this.lblGoodreads.Name = "lblGoodreads";
this.lblGoodreads.Size = new System.Drawing.Size(91, 15);
@@ -126,7 +127,7 @@ private void InitializeComponent()
//
this.txtMobi.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
- this.txtMobi.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.txtMobi.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
this.txtMobi.Location = new System.Drawing.Point(13, 21);
this.txtMobi.Name = "txtMobi";
this.txtMobi.Size = new System.Drawing.Size(927, 23);
@@ -139,7 +140,7 @@ private void InitializeComponent()
| System.Windows.Forms.AnchorStyles.Right)));
this.groupBox1.Controls.Add(this.lblGoodreads);
this.groupBox1.Controls.Add(this.txtGoodreads);
- this.groupBox1.Font = new System.Drawing.Font("Segoe UI Semibold", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.groupBox1.Font = new System.Drawing.Font("Segoe UI Semibold", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point);
this.groupBox1.Location = new System.Drawing.Point(12, 143);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(953, 58);
@@ -151,7 +152,7 @@ private void InitializeComponent()
//
this.txtGoodreads.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
- this.txtGoodreads.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.txtGoodreads.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
this.txtGoodreads.Location = new System.Drawing.Point(107, 21);
this.txtGoodreads.Name = "txtGoodreads";
this.txtGoodreads.Size = new System.Drawing.Size(833, 23);
@@ -163,7 +164,7 @@ private void InitializeComponent()
this.groupBox3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.groupBox3.Controls.Add(this.txtMobi);
- this.groupBox3.Font = new System.Drawing.Font("Segoe UI Semibold", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.groupBox3.Font = new System.Drawing.Font("Segoe UI Semibold", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point);
this.groupBox3.Location = new System.Drawing.Point(12, 82);
this.groupBox3.Name = "groupBox3";
this.groupBox3.Size = new System.Drawing.Size(953, 58);
@@ -248,7 +249,7 @@ private void InitializeComponent()
//
this.lblFiles.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lblFiles.AutoSize = true;
- this.lblFiles.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.lblFiles.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point);
this.lblFiles.Location = new System.Drawing.Point(771, 639);
this.lblFiles.Name = "lblFiles";
this.lblFiles.Size = new System.Drawing.Size(33, 13);
@@ -261,7 +262,7 @@ private void InitializeComponent()
this.txtAsin.ActiveLinkColor = System.Drawing.Color.MediumBlue;
this.txtAsin.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.txtAsin.AutoSize = true;
- this.txtAsin.Font = new System.Drawing.Font("Segoe UI", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.txtAsin.Font = new System.Drawing.Font("Segoe UI", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
this.txtAsin.LinkBehavior = System.Windows.Forms.LinkBehavior.NeverUnderline;
this.txtAsin.LinkColor = System.Drawing.Color.MediumBlue;
this.txtAsin.Location = new System.Drawing.Point(851, 603);
@@ -276,7 +277,7 @@ private void InitializeComponent()
// txtAuthor
//
this.txtAuthor.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.txtAuthor.Font = new System.Drawing.Font("Segoe UI", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.txtAuthor.Font = new System.Drawing.Font("Segoe UI", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
this.txtAuthor.Location = new System.Drawing.Point(851, 585);
this.txtAuthor.Name = "txtAuthor";
this.txtAuthor.Size = new System.Drawing.Size(120, 13);
@@ -288,7 +289,7 @@ private void InitializeComponent()
// txtTitle
//
this.txtTitle.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.txtTitle.Font = new System.Drawing.Font("Segoe UI", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.txtTitle.Font = new System.Drawing.Font("Segoe UI", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
this.txtTitle.Location = new System.Drawing.Point(851, 567);
this.txtTitle.Name = "txtTitle";
this.txtTitle.Size = new System.Drawing.Size(120, 13);
@@ -301,7 +302,7 @@ private void InitializeComponent()
//
this.lblAsin.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lblAsin.AutoSize = true;
- this.lblAsin.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.lblAsin.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point);
this.lblAsin.Location = new System.Drawing.Point(772, 603);
this.lblAsin.Name = "lblAsin";
this.lblAsin.Size = new System.Drawing.Size(36, 13);
@@ -313,7 +314,7 @@ private void InitializeComponent()
//
this.lblAuthor.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lblAuthor.AutoSize = true;
- this.lblAuthor.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.lblAuthor.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point);
this.lblAuthor.Location = new System.Drawing.Point(772, 585);
this.lblAuthor.Name = "lblAuthor";
this.lblAuthor.Size = new System.Drawing.Size(47, 13);
@@ -325,7 +326,7 @@ private void InitializeComponent()
//
this.lblTitle.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lblTitle.AutoSize = true;
- this.lblTitle.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.lblTitle.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point);
this.lblTitle.Location = new System.Drawing.Point(772, 567);
this.lblTitle.Name = "lblTitle";
this.lblTitle.Size = new System.Drawing.Size(32, 13);
@@ -341,7 +342,7 @@ private void InitializeComponent()
this.groupBox4.Controls.Add(this.rdoFile);
this.groupBox4.Controls.Add(this.rdoGoodreads);
this.groupBox4.Controls.Add(this.txtXMLFile);
- this.groupBox4.Font = new System.Drawing.Font("Segoe UI Semibold", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.groupBox4.Font = new System.Drawing.Font("Segoe UI Semibold", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point);
this.groupBox4.Location = new System.Drawing.Point(12, 204);
this.groupBox4.Name = "groupBox4";
this.groupBox4.Size = new System.Drawing.Size(953, 58);
@@ -352,7 +353,7 @@ private void InitializeComponent()
// rdoRoentgen
//
this.rdoRoentgen.AutoSize = true;
- this.rdoRoentgen.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.rdoRoentgen.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
this.rdoRoentgen.Location = new System.Drawing.Point(113, 22);
this.rdoRoentgen.Name = "rdoRoentgen";
this.rdoRoentgen.Size = new System.Drawing.Size(76, 19);
@@ -364,7 +365,7 @@ private void InitializeComponent()
// rdoFile
//
this.rdoFile.AutoSize = true;
- this.rdoFile.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.rdoFile.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
this.rdoFile.Location = new System.Drawing.Point(213, 22);
this.rdoFile.Name = "rdoFile";
this.rdoFile.Size = new System.Drawing.Size(43, 19);
@@ -377,7 +378,7 @@ private void InitializeComponent()
//
this.rdoGoodreads.AutoSize = true;
this.rdoGoodreads.Checked = true;
- this.rdoGoodreads.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.rdoGoodreads.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
this.rdoGoodreads.Location = new System.Drawing.Point(13, 22);
this.rdoGoodreads.Name = "rdoGoodreads";
this.rdoGoodreads.Size = new System.Drawing.Size(82, 19);
@@ -392,7 +393,7 @@ private void InitializeComponent()
this.txtXMLFile.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtXMLFile.Enabled = false;
- this.txtXMLFile.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.txtXMLFile.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
this.txtXMLFile.Location = new System.Drawing.Point(262, 21);
this.txtXMLFile.Name = "txtXMLFile";
this.txtXMLFile.Size = new System.Drawing.Size(678, 23);
@@ -593,28 +594,28 @@ private void InitializeComponent()
// tmiAuthorProfile
//
this.tmiAuthorProfile.Name = "tmiAuthorProfile";
- this.tmiAuthorProfile.Size = new System.Drawing.Size(180, 22);
+ this.tmiAuthorProfile.Size = new System.Drawing.Size(148, 22);
this.tmiAuthorProfile.Text = "Author Profile";
this.tmiAuthorProfile.Click += new System.EventHandler(this.tmiAuthorProfile_Click);
//
// tmiEndAction
//
this.tmiEndAction.Name = "tmiEndAction";
- this.tmiEndAction.Size = new System.Drawing.Size(180, 22);
+ this.tmiEndAction.Size = new System.Drawing.Size(148, 22);
this.tmiEndAction.Text = "End Actions";
this.tmiEndAction.Click += new System.EventHandler(this.tmiEndAction_Click);
//
// tmiStartAction
//
this.tmiStartAction.Name = "tmiStartAction";
- this.tmiStartAction.Size = new System.Drawing.Size(180, 22);
+ this.tmiStartAction.Size = new System.Drawing.Size(148, 22);
this.tmiStartAction.Text = "Start Actions";
this.tmiStartAction.Click += new System.EventHandler(this.tmiStartAction_Click);
//
// tmiXray
//
this.tmiXray.Name = "tmiXray";
- this.tmiXray.Size = new System.Drawing.Size(180, 22);
+ this.tmiXray.Size = new System.Drawing.Size(148, 22);
this.tmiXray.Text = "X-Ray";
this.tmiXray.Click += new System.EventHandler(this.tmiXray_Click);
//
@@ -726,6 +727,7 @@ private void InitializeComponent()
this.btnHelp.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.btnViewHelp,
this.btnVisitForum,
+ this.btnVisitGithub,
this.toolStripSeparator6,
this.btnAbout});
this.btnHelp.Image = ((System.Drawing.Image)(resources.GetObject("btnHelp.Image")));
@@ -769,7 +771,7 @@ private void InitializeComponent()
//
this.btnCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btnCancel.Enabled = false;
- this.btnCancel.Font = new System.Drawing.Font("Segoe UI", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.btnCancel.Font = new System.Drawing.Font("Segoe UI", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
this.btnCancel.Location = new System.Drawing.Point(774, 661);
this.btnCancel.Name = "btnCancel";
this.btnCancel.Size = new System.Drawing.Size(192, 23);
@@ -783,7 +785,7 @@ private void InitializeComponent()
this.txtDatasource.ActiveLinkColor = System.Drawing.Color.MediumBlue;
this.txtDatasource.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.txtDatasource.AutoSize = true;
- this.txtDatasource.Font = new System.Drawing.Font("Segoe UI", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.txtDatasource.Font = new System.Drawing.Font("Segoe UI", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
this.txtDatasource.LinkBehavior = System.Windows.Forms.LinkBehavior.NeverUnderline;
this.txtDatasource.LinkColor = System.Drawing.Color.MediumBlue;
this.txtDatasource.Location = new System.Drawing.Point(851, 621);
@@ -799,7 +801,7 @@ private void InitializeComponent()
//
this.lblDatasource.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lblDatasource.AutoSize = true;
- this.lblDatasource.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.lblDatasource.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point);
this.lblDatasource.Location = new System.Drawing.Point(771, 621);
this.lblDatasource.Name = "lblDatasource";
this.lblDatasource.Size = new System.Drawing.Size(68, 13);
@@ -876,6 +878,13 @@ private void InitializeComponent()
this.pbCover.MouseEnter += new System.EventHandler(this.pbCover_MouseEnter);
this.pbCover.MouseLeave += new System.EventHandler(this.pbCover_MouseLeave);
//
+ // btnVisitGithub
+ //
+ this.btnVisitGithub.Name = "btnVisitGithub";
+ this.btnVisitGithub.Size = new System.Drawing.Size(180, 22);
+ this.btnVisitGithub.Text = "Visit Github";
+ this.btnVisitGithub.Click += new System.EventHandler(this.btnVisitGithub_Click);
+ //
// frmMain
//
this.AllowDrop = true;
@@ -904,7 +913,7 @@ private void InitializeComponent()
this.Controls.Add(this.pbCover);
this.Controls.Add(this.groupBox1);
this.Controls.Add(this.prgBar);
- this.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
@@ -1003,6 +1012,7 @@ private void InitializeComponent()
private System.Windows.Forms.ToolStripMenuItem btnViewHelp;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator6;
private System.Windows.Forms.ToolStripMenuItem btnAbout;
+ private System.Windows.Forms.ToolStripMenuItem btnVisitGithub;
}
}

MODIFY
XRayBuilder/src/UI/frmMain.cs
XRayBuilder/src/UI/frmMain.cs
@@ -807,6 +807,7 @@ private void SetDatasourceLink(string url)
if (string.IsNullOrEmpty(url))
{
txtDatasource.Text = "Search datasource...";
+ _tooltip.SetToolTip(txtDatasource, null);
return;
}
@@ -898,6 +899,7 @@ private void ClearInterface(bool bookOpened)
txtXMLFile.Text = "";
// todo another copy
txtDatasource.Text = "Search datasource...";
+ _tooltip.SetToolTip(txtDatasource, null);
prgBar.Value = 0;
_openedMetadata = null;
CheckFiles("","","","","","");
@@ -1027,7 +1029,7 @@ private void btnUnpack_Click(object sender, EventArgs e)
private void txtOutput_LinkClicked(object sender, LinkClickedEventArgs e)
{
- Process.Start(e.LinkText);
+ Process.Start(new ProcessStartInfo(e.LinkText) { UseShellExecute = true });
}
private async void btnOneClick_Click(object sender, EventArgs e)
@@ -1042,7 +1044,7 @@ private void txtAsin_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
if (string.Equals(txtAsin.Text, "ASIN"))
return;
- Process.Start(_amazonClient.Url(_settings.amazonTLD, txtAsin.Text));
+ Process.Start(new ProcessStartInfo(_amazonClient.Url(_settings.amazonTLD, txtAsin.Text)) { UseShellExecute = true });
}
private void btnExtractTerms_Click(object sender, EventArgs e)
@@ -1207,11 +1209,16 @@ private void clearAndSaveToolStripMenuItem_Click(object sender, EventArgs e)
txtOutput.Text = string.Empty;
}
- private void txtDatasource_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
+ private async void txtDatasource_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
- if (txtDatasource.Text.Contains("Search"))
- return;
- Process.Start(txtGoodreads.Text);
+ if (!Regex.IsMatch(txtDatasource.Text, "\\d+"))
+ {
+ ToggleInterface(false);
+ await btnSearchGoodreads_Run();
+ ToggleInterface(true);
+ }
+ else
+ Process.Start(new ProcessStartInfo(txtGoodreads.Text) { UseShellExecute = true });
}
private void txtGoodreads_TextChanged(object sender, EventArgs e)
@@ -1246,7 +1253,8 @@ private void btnViewHelp_Click(object sender, EventArgs e)
{
try
{
- Process.Start(Environment.CurrentDirectory + @"\doc\help.pdf");
+ Process.Start(new ProcessStartInfo(Environment.CurrentDirectory + @"\doc\help.pdf") { UseShellExecute = true });
+
}
catch
{
@@ -1256,12 +1264,17 @@ private void btnViewHelp_Click(object sender, EventArgs e)
private void btnVisitForum_Click(object sender, EventArgs e)
{
- Process.Start("http://www.mobileread.com/forums/showthread.php?t=245754");
+ Process.Start(new ProcessStartInfo("http://www.mobileread.com/forums/showthread.php?t=245754") { UseShellExecute = true });
}
private void btnAbout_Click(object sender, EventArgs e)
{
new frmAbout().ShowDialog();
}
+
+ private void btnVisitGithub_Click(object sender, EventArgs e)
+ {
+ Process.Start(new ProcessStartInfo("https://github.com/Ephemerality/xray-builder.gui") { UseShellExecute = true });
+ }
}
}
\ No newline at end of file

Fix System.ComponentModel.Win32Exception with Process.Start
Add button link to GitHub