private void btnSave_Click(object sender, EventArgs e) { AdapterInfo adapter = cbAdapters.SelectedItem as AdapterInfo; if (adapter != null) { uint result; try { if (cbAutomatic.Checked) { result = adapter.SetDNSAutomatic(); } else { string primaryDNS = txtPreferredDNS.Text.Trim(); string secondaryDNS = txtAlternateDNS.Text.Trim(); if (Helpers.IsValidIPAddress(primaryDNS) && Helpers.IsValidIPAddress(secondaryDNS)) { result = adapter.SetDNS(primaryDNS, secondaryDNS); } else { throw new Exception("Not valid IP address."); } } if (result == 0) { NativeMethods.DnsFlushResolverCache(); MessageBox.Show(Resources.DNSChangerForm_btnSave_Click_DNS_successfully_set_, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information); } else if (result == 1) { MessageBox.Show(Resources.DNSChangerForm_btnSave_Click_DNS_successfully_set__Reboot_is_required_, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information); } else if (result > 1) { MessageBox.Show(Resources.DNSChangerForm_btnSave_Click_Setting_DNS_failed_with_error_code_ + " " + result, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception ex) { MessageBox.Show(Resources.DNSChangerForm_btnSave_Click_Setting_DNS_failed_ + "\r\n" + ex, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
private void btnSave_Click(object sender, EventArgs e) { AdapterInfo adapter = cbAdapters.SelectedItem as AdapterInfo; if (adapter != null) { uint result; try { if (cbAutomatic.Checked) { result = adapter.SetDNSAutomatic(); } else { string primaryDNS = txtPreferredDNS.Text.Trim(); string secondaryDNS = txtAlternateDNS.Text.Trim(); if (Helpers.IsValidIPAddress(primaryDNS) && Helpers.IsValidIPAddress(secondaryDNS)) { result = adapter.SetDNS(primaryDNS, secondaryDNS); } else { throw new Exception("Not valid IP address."); } } if (result == 0) { NativeMethods.DnsFlushResolverCache(); MessageBox.Show("DNS successfully set.", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information); } else if (result == 1) { MessageBox.Show("DNS successfully set. Reboot is required.", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information); } else if (result > 1) { MessageBox.Show("Setting DNS failed with error code: " + result, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception ex) { MessageBox.Show("Setting DNS failed.\r\n" + ex.ToString(), Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error); } } }