private void connectButtton_Click(object sender, EventArgs e) { var btn = ((Button)sender); btn.Invoke((b) => { if (slavePipe.IsConnected) { slavePipe.Close(); btn.Text = "Connect"; btn.ForeColor = Color.Black; } else { var txt = connectionTextBox.Text; slavePipe.PipeAddress = txt; slavePipe.ServerProcessName = "ServerServiceExample"; slavePipe.ServerRegeditPath = @"Software\testv0"; slavePipe.ServerRegeditPathKey = "path"; slavePipe.Connect(100); btn.Text = "Disconnect"; btn.ForeColor = Color.Red; } }); }