private void button1_Click(object sender, EventArgs e) { if (ClientThreadProc != null) { if (Client != null) { Client.Dispose(); Client = null; } Media.Common.Extensions.Thread.ThreadExtensions.TryAbortAndFree(ref ClientThreadProc); ClientThreadProc = null; GC.WaitForPendingFinalizers(); button1.Text = "Start"; } else { if (comboBox1.SelectedIndex == 1) { Client = new RtspClient(textBox1.Text, RtspClient.ClientProtocolType.Tcp); //comboBox1.SelectedItem); } else if (comboBox1.SelectedIndex == 2) { Client = new RtspClient(textBox1.Text, RtspClient.ClientProtocolType.Udp); //comboBox1.SelectedItem); } else { Client = new RtspClient(textBox1.Text); //comboBox1.SelectedItem); } if (!string.IsNullOrWhiteSpace(textBox3.Text)) { Client.Credential = new System.Net.NetworkCredential(textBox3.Text, textBox4.Text); if (comboBox2.SelectedIndex == 1) { Client.AuthenticationScheme = System.Net.AuthenticationSchemes.Digest; } } Client.DisableKeepAliveRequest = checkBox1.Checked; Client.OnConnect += client_OnConnect; ClientThreadProc = new Thread(() => Client.Connect()); ClientThreadProc.Start(); button1.Text = "Stop"; // Initialize the DataGridView. dataGridView2.AutoGenerateColumns = true; dataGridView2.AutoSize = true; dataGridView2.DataSource = RTPPacketBinding; dataGridView1.AutoGenerateColumns = true; dataGridView1.AutoSize = true; dataGridView1.DataSource = RTCPPacketBinding; } }
private void button1_Click(object sender, EventArgs e) { if (ClientThreadProc != null) { if (Client != null) { Client.Dispose(); Client = null; } Media.Common.Extensions.Thread.ThreadExtensions.TryAbort(ref ClientThreadProc); ClientThreadProc = null; GC.WaitForPendingFinalizers(); button1.Text = "Start"; } else { if (comboBox1.SelectedIndex == 1) { Client = new RtspClient(textBox1.Text, RtspClient.ClientProtocolType.Tcp); //comboBox1.SelectedItem); } else if (comboBox1.SelectedIndex == 2) { Client = new RtspClient(textBox1.Text, RtspClient.ClientProtocolType.Udp); //comboBox1.SelectedItem); } else { Client = new RtspClient(textBox1.Text); //comboBox1.SelectedItem); } if (!string.IsNullOrWhiteSpace(textBox3.Text)) { Client.Credential = new System.Net.NetworkCredential(textBox3.Text, textBox4.Text); if (comboBox2.SelectedIndex == 1) Client.AuthenticationScheme = System.Net.AuthenticationSchemes.Digest; } Client.DisableKeepAliveRequest = checkBox1.Checked; Client.OnConnect += client_OnConnect; ClientThreadProc = new Thread(() => Client.Connect()); ClientThreadProc.Start(); button1.Text = "Stop"; // Initialize the DataGridView. dataGridView2.AutoGenerateColumns = true; dataGridView2.AutoSize = true; dataGridView2.DataSource = RTPPacketBinding; dataGridView1.AutoGenerateColumns = true; dataGridView1.AutoSize = true; dataGridView1.DataSource = RTCPPacketBinding; } }