View Issue Details

IDProjectCategoryView StatusLast Update
00029941 - BacklogMaintenancepublic2019-04-18 15:19
ReporterPD9FERAssigned ToWA9PIE 
PrioritynormalSeverityminorReproducibilityalways
Status assignedResolutionopen 
Summary0002994: HRDRemoteSvr.cfg created in C:\ProgramData\HRDLLC\
DescriptionSame goes for HRDSerialPortSvr.cfg

When configuring the Remote Server in RC, the settings are stored in the HKEY_CURRENT_USER\Software\Amateur Radio\Ham Radio Deluxe\Remote Hyve

And in the HKEY_CURRENT_USER\Software\Amateur Radio\Ham Radio Deluxe\SerialPortSvr Hyve

But also old obsolete cfg files are written to C:\ProgramData\HRDLLC\
These don't contain any config data.

Also noticed at some times they are created in our installation and Roaming folders.
Steps To ReproduceOpen RC
Go to Tools > Programs > Remote Servers
Configure both The remote server as well as the Serial Port client

Now check the Reg Hyves I mentioned above...
And look at the ProgramData\HRDLLC, the install folder and the Roaming\HRDLLC folders.
TagsNo tags attached.
ModuleRig Control
Sub-ModuleVarious
TestingNot Started

Activities

K7ZCZ

2018-12-14 11:57

manager   ~0006642

I don't think these files are obsolete. I don't see any code in the SerialPortServer or in the RemoteSvr applications that reads from the registry. Instead, there's a CConfigFile class that reads the text file and loads its settings. The program's behavior is based on those values.

K7ZCZ

2018-12-14 12:03

manager   ~0006643

Also, is this a duplicate of Mantis 2115?

K7ZCZ

2018-12-14 12:30

manager   ~0006646

The product documentation says to use the file for configuring the server. Here's a link to the docs:
https://wiki.hamradiodeluxe.com/index.php?title=Rig_Control#Ham_Radio_Deluxe_Remote_Server

PD9FER

2018-12-14 12:31

updater   ~0006647

This gets created in ProgramData:
 Note no settings are stored

 #
 # Ham Radio Deluxe Remote Access Server
 # -------------------------------------
 #
 # Copright (c) 2004 by Simon Brown, HB9DRV.
 # Copright (c) 2015 by HRD Software, LLC.
 #
 # Note: this only runs on Windows Vista or newer.
 #
 # This file defines the configuration of the Remote Access Server.
 # The format of each entry is TOKEN = VALUE.
 #
 # Supported tokens
 # ----------------
 # COM
 # PORT
 # USER1 to USER20
 # WELCOME
 #

 #
 # A comma-separated list of COM ports that are returned. If not defined then
 # the server returns a list of all COM ports available on the computer.
 #
 #COM = COM1,COM2,COM3,COM4
 #COM = COM1

 #
 # The TCP/IP port on which the server listens for connections. If not defined
 # then the default value of 7805 is used. Select any port number you want which
 # is not in use by other programs.
 #
 PORT = 7805

 #
 # Username/passwords, these are case-insensitive. Spaces are removed
 # from the beginning and end of the username and password.
 #
 # The format is USERx = username,password,options where options is a
 # list of case-insensitive tokens seperated by spaces (not commas).
 #
 # The supported options are:
 # NO_TX
 # NO_MACROS
 #
 # For example: USER1 = Simon,SnowTime,no_tx no_macros
 # Disables the TX button and all Macros on the user's instance of HRD.
 # (The user could enable TX via a Macro or CAT Command.)
 #
 USER1 = Simon,SnowTime
 USER2 = Peter,Uberwald
 USER20 = Donald,California,NO_TX NO_MACROS

 #
 # Optional welcome text, displayed on the remote user's computer. Note that
 # \n is replaced with a newline. Enter up to 511 characters on a single line.
 #
 # Remove this line if you do not want a welcome message.
 #
 WELCOME = Welcome to the HRD Remote Access Server.\n\nPlease don't break anything!

 Now look at the attached screenshots...
 You will notice the settings are in the registry and the files created are bogus

2018-12-14_19-23-52.png (38,030 bytes)
2018-12-14_19-23-52.png (38,030 bytes)
2018-12-14_19-22-34.png (51,740 bytes)
2018-12-14_19-22-34.png (51,740 bytes)
2018-12-14_19-21-14.png (80,347 bytes)
2018-12-14_19-21-14.png (80,347 bytes)

PD9FER

2019-03-07 15:53

updater   ~0007638

Settings are stored in HKEY_CURRENT_USER\Software\Amateur Radio\Ham Radio Deluxe\Remote

K7ZCZ

2019-04-11 15:19

manager   ~0007851

Code in HRDRemoteSvr2\ConfigFile.cpp reads the HRDRemoteSvr.cfg file.

This issue is really a symptom of the overall problems with the remote server and serial port server applications. The desired architecture and featureset for those applications needs to be described before it makes sense to address individual problems like this one. At the very least, we'd need to decide on how user settings are migrated from the previously used file to the new location in the registry. Seems like a story is needed fro users who want to migrate settings from one machine to another -- they shouldn't have to manage the registry directly, themselves.

There's also the question of using HKCU instead of HKLM for the parameters involved in running a service. The service runs under its own user account, so it wouldn't be able see the HKCU -- and since the machine probably has multiple users, it wouldn't know which HKCU to look into even if it could.

PD9FER

2019-04-18 15:19

updater   ~0007872

Try to get all remote config stored in HKLM
Remove/rewrite code to skip the Appdata cfg file..
Store all in registry

Issue History

Date Modified Username Field Change
2018-12-14 11:32 PD9FER New Issue
2018-12-14 11:57 K7ZCZ Assigned To => K7ZCZ
2018-12-14 11:57 K7ZCZ Status new => feedback
2018-12-14 11:57 K7ZCZ Note Added: 0006642
2018-12-14 11:57 K7ZCZ Assigned To K7ZCZ => PD9FER
2018-12-14 12:03 K7ZCZ Note Added: 0006643
2018-12-14 12:30 K7ZCZ Note Added: 0006646
2018-12-14 12:31 PD9FER File Added: 2018-12-14_19-23-52.png
2018-12-14 12:31 PD9FER File Added: 2018-12-14_19-22-34.png
2018-12-14 12:31 PD9FER File Added: 2018-12-14_19-21-14.png
2018-12-14 12:31 PD9FER Note Added: 0006647
2019-03-07 15:53 PD9FER Note Added: 0007638
2019-04-11 14:21 KB3NPH Assigned To PD9FER => K7ZCZ
2019-04-11 15:19 K7ZCZ Note Added: 0007851
2019-04-18 15:19 WA9PIE Assigned To K7ZCZ => WA9PIE
2019-04-18 15:19 PD9FER Note Added: 0007872
2019-04-18 15:19 PD9FER Status feedback => assigned