Welcome to the FlexRadio Community! Please review the new Community Rules and other important new Community information on the Message Board.
Need the latest SmartSDR or 4O3A Genius Product Software?
SmartSDR v3.9.19 and the SmartSDR v3.9.19 Release Notes
SmartSDR v2.12.1 and the SmartSDR v2.12.1 Release Notes
The latest 4O3A Genius Product Software and Firmware
SmartSDR v3.9.19 and the SmartSDR v3.9.19 Release Notes
SmartSDR v2.12.1 and the SmartSDR v2.12.1 Release Notes
The latest 4O3A Genius Product Software and Firmware
If you are having a problem, please refer to the product documentation or check the Help Center for known solutions.
Need technical support from FlexRadio? It's as simple as Creating a HelpDesk ticket.
Need technical support from FlexRadio? It's as simple as Creating a HelpDesk ticket.
RadioAddedEventHandler not working ...
Options
Gary L. Robinson
Member ✭✭
I have made four or five small form based client programs for my Flex 6400 SDR Radio with SmartSDR 2.4.9 on it. I use Microsoft Visual Studio 2017. I have always used the same simple code (below) to detect the radio and connect to it.
But this code (below) does not work now when I start making a new cllient.
The clients I already have made and are still installed (manually) STILL work with NO problems. However, if I move the program files to another folder location - they stop working.
The reason they don't work is because the API.RadioAddedEventHandler is NEVER fired. It never gets the message from the radio.
This makes me think it may be some security issue caused by Windows 10 - or It might be some changes in the latest FlexLib code that I use. I always keep up with latest FlexLib. However, it seems to me that Windows 10 is a more likely culprit.
I do NOT use ANY virus or security software - except that which Windows 10 has included with it.
Any ideas or suggestions would be welcome.
---Gary WB8ROL
----------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Flex.Smoothlake.FlexLib;
using Flex.UiWpfFramework;
using System.Net.Sockets;
using System.Net;
using System.Threading;
using System.IO;
using System.Globalization;
namespace RecSlice
{
public partial class Form1 : Form
{
public Radio curRadio = null;
public Panadapter curPanadapter = null;
public Slice curSlice = null;
public List<Radio> clientList;
public NumberFormatInfo nfi;
public Form1()
{
InitializeComponent();
nfi = new CultureInfo("en-US", false).NumberFormat;
API.RadioAdded += new API.RadioAddedEventHandler(flexRadioAdded);
API.RadioRemoved += new API.RadioRemovedEventHandler(flexRadioRemoved);
API.ProgramName = "recSlice";
API.Init();
}
void flexRadioAdded(Radio radio)
{
curRadio = radio;
if (radio.Connect())
{
radio.SliceAdded += new Flex.Smoothlake.FlexLib.Radio.SliceAddedEventHandler(radio_SliceAdded); //.SliceAddedEventHandler(radio_SliceAdded);
radio.SliceRemoved += new Radio.SliceRemovedEventHandler(radio_SliceRemoved);
radio.PanadapterAdded += new Radio.PanadapterAddedEventHandler(radio_PanadapterAdded);
radio.PanadapterRemoved += new Radio.PanadapterRemovedEventHandler(radio_PanadapterRemoved);
radio.PropertyChanged += new PropertyChangedEventHandler(radio_PropertyChanged);
}
}
void flexRadioRemoved(Radio radio)
{
}
void radio_SliceAdded(Slice slice)
{
}
void radio_SliceRemoved(Slice slice)
{
}
void radio_PanadapterAdded(Panadapter panadapter, Waterfall waterfall)
{
}
void radio_PanadapterRemoved(Panadapter panadapter)
{
}
void radio_PropertyChanged(object obj, PropertyChangedEventArgs args)
{
}
//***************
//Windows Events
//***************
private void Form1_Load(object sender, EventArgs e)
{
CheckForIllegalCrossThreadCalls = false;
}
private void Form1_Shown(object sender, EventArgs e)
{
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
}
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
}
}
}
But this code (below) does not work now when I start making a new cllient.
The clients I already have made and are still installed (manually) STILL work with NO problems. However, if I move the program files to another folder location - they stop working.
The reason they don't work is because the API.RadioAddedEventHandler is NEVER fired. It never gets the message from the radio.
This makes me think it may be some security issue caused by Windows 10 - or It might be some changes in the latest FlexLib code that I use. I always keep up with latest FlexLib. However, it seems to me that Windows 10 is a more likely culprit.
I do NOT use ANY virus or security software - except that which Windows 10 has included with it.
Any ideas or suggestions would be welcome.
---Gary WB8ROL
----------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Flex.Smoothlake.FlexLib;
using Flex.UiWpfFramework;
using System.Net.Sockets;
using System.Net;
using System.Threading;
using System.IO;
using System.Globalization;
namespace RecSlice
{
public partial class Form1 : Form
{
public Radio curRadio = null;
public Panadapter curPanadapter = null;
public Slice curSlice = null;
public List<Radio> clientList;
public NumberFormatInfo nfi;
public Form1()
{
InitializeComponent();
nfi = new CultureInfo("en-US", false).NumberFormat;
API.RadioAdded += new API.RadioAddedEventHandler(flexRadioAdded);
API.RadioRemoved += new API.RadioRemovedEventHandler(flexRadioRemoved);
API.ProgramName = "recSlice";
API.Init();
}
void flexRadioAdded(Radio radio)
{
curRadio = radio;
if (radio.Connect())
{
radio.SliceAdded += new Flex.Smoothlake.FlexLib.Radio.SliceAddedEventHandler(radio_SliceAdded); //.SliceAddedEventHandler(radio_SliceAdded);
radio.SliceRemoved += new Radio.SliceRemovedEventHandler(radio_SliceRemoved);
radio.PanadapterAdded += new Radio.PanadapterAddedEventHandler(radio_PanadapterAdded);
radio.PanadapterRemoved += new Radio.PanadapterRemovedEventHandler(radio_PanadapterRemoved);
radio.PropertyChanged += new PropertyChangedEventHandler(radio_PropertyChanged);
}
}
void flexRadioRemoved(Radio radio)
{
}
void radio_SliceAdded(Slice slice)
{
}
void radio_SliceRemoved(Slice slice)
{
}
void radio_PanadapterAdded(Panadapter panadapter, Waterfall waterfall)
{
}
void radio_PanadapterRemoved(Panadapter panadapter)
{
}
void radio_PropertyChanged(object obj, PropertyChangedEventArgs args)
{
}
//***************
//Windows Events
//***************
private void Form1_Load(object sender, EventArgs e)
{
CheckForIllegalCrossThreadCalls = false;
}
private void Form1_Shown(object sender, EventArgs e)
{
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
}
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
}
}
}
0
Comments
-
Check your firewall settings. If your old firewall rule was for your original app then it is for the full path.0
-
Mark,
If I had a million dollars I would send it to you!! It was the firewall! I just turned the WIndows firewall OFF - not sure if there is a more simple solution. My router firewall is good enough.
Again, thanks very much. It just makes me wish even harder that FlexLib was available on Linux hihi
---Gary!0
Leave a Comment
Categories
- All Categories
- 332 Community Topics
- 2.1K New Ideas
- 600 The Flea Market
- 7.9K Software
- 6.2K SmartSDR for Windows
- 169 SmartSDR for Maestro and M models
- 399 SmartSDR for Mac
- 262 SmartSDR for iOS
- 247 SmartSDR CAT
- 181 DAX
- 370 SmartSDR API
- 9.1K Radios and Accessories
- 17 Aurora
- 167 FLEX-8000 Signature Series
- 7.1K FLEX-6000 Signature Series
- 912 Maestro
- 52 FlexControl
- 855 FLEX Series (Legacy) Radios
- 876 Genius Products
- 446 Power Genius XL Amplifier
- 315 Tuner Genius XL
- 115 Antenna Genius
- 278 Shack Infrastructure
- 196 Networking
- 440 Remote Operation (SmartLink)
- 137 Contesting
- 729 Peripherals & Station Integration
- 137 Amateur Radio Interests
- 948 Third-Party Software