ajtruckle / meeting-schedule-assistant-support

Get support for Meeting Schedule Assistant.
https://www.publictalksoftware.co.uk/meeting-schedule-assistant/
5 stars 0 forks source link

Improvements to About Window > System Info #61

Closed ajtruckle closed 7 months ago

ajtruckle commented 7 months ago

Is your feature request related to a problem? Please describe. The System Info tab is very useful:

image

But it lacks useful information from the software itself.

Describe the solution you'd like Add a new category to the System Info tab. Perhaps call it Application.

Additional context We could include, for example:

Setting Value
Architecture 64 bit
Version 24.7.0.0
Version: MSATools 24.04.05.0
Version: MSAToolsLibrary 24.x.x.x
Version: MSAToolsGMailLibrary 24.x.x.x
Version: Google Sync 24.x.x.x
Monthly Data: Language ENG
Monthly Data: Latest Date DD/MM/YYYY
Monthly Data: Submit Statistics Yes
Foreign Language Group No
Active Template Default

I felt it best to include the full version number since I do make use of it on occasion.

ajtruckle commented 7 months ago

This is what I have come up with:

image

I don't think that we need to provide information about:

cengizu commented 7 months ago

@ajtruckle

If technically possible, you may want to also add:

ajtruckle commented 7 months ago

@cengizu

Version or Latest update date for the public talks db.

We do have access to the Version information for the chosen language. But not the last update date.

MSA install directory

That is simple enough to include. 👍

MSA install date

Again, I don't specifically store this information. But we do have the installation logs in the %programdata% folder. Eg:

Setup Log 2024-04-14 #002.txt

We could either decode the filename of just display the filename itself in the info grid.

Frameworks being used, if any, and their version

Technically speaker they should not be able to install MSA without the frameworks being present. Unless they subsequently uninstall one of those dependencies. I'll have to give this one some thought.

Do you think it is find to present this information at the bottom of the info grid as opposed to the top?

cengizu commented 7 months ago

@ajtruckle

Do you think it is find to present this information at the bottom of the info grid as opposed to the top?

You may keep the order as it is, or you may also move the Application section to the top. It doesn't matter much in my opinion. It's up to your personal preference

ajtruckle commented 7 months ago

@cengizu

Implemented the first two suggestions:

image

I recalled that the installation date is actually held in the registry. No need to fiddle with installation log filenames. 😊

ajtruckle commented 7 months ago

@cengizu

Frameworks being used, if any, and their version

I have decided that I will not include every installed framework.

  1. MSA can't be installed unless you have the dependencies installed.
  2. We are not really interested in knowing which other Frameworks are installed.

Having said this, I am willing to detect the versions that MSA is supporting. Eg.

This would indicate if there is an issue. The resolution being to run the latest installer again.

ajtruckle commented 7 months ago

@cengizu

Implemented .NET Framework 4.8.1 check. But I have added it to the Operating System panel:

image

ajtruckle commented 7 months ago

@cengizu

Implemented .NET Core 8.0.3 check.

image

ajtruckle commented 7 months ago

@cengizu

I think though I should use the phrases:

cengizu commented 7 months ago

@ajtruckle

It can be as installed or not installed, you are right.

Also when pressing the System Info tab, it takes a while to open the tab. Could this be due to analyzing how much free RAM is available? It would be nice if you could do something to speed it up.

ajtruckle commented 7 months ago

@cengizu

I am afraid that the delay in indeed due to all the information gathering that needs to be performed. At a guess, I would say it is the hardware gathering causing this, since reading registry information is virtually instant.

I can't see what else I can do really, beyond using worker threads, to obtain the information in the background and then drop it in once it is retrieved. But do we really need to do this?

ajtruckle commented 7 months ago

@cengizu

Firstly, I have decided to consolidate the WebView2 and .NET information together:

image

And I have been thinking about what you said:

Also when pressing the System Info tab, it takes a while to open the tab. Could this be due to analyzing how much free RAM is available? It would be nice if you could do something to speed it up

Whilst I can't speed up the gathering process, I could improve the GUI user experience:

  1. Gather the information in a worker thread. This means the tab will display immediately.
  2. Display a "Gathering information" label where the info grid is displayed and a progress bar.
  3. Display the info when it has been collated.
  4. Disable the Copy button until information has been gathered.
  5. Abort gathering if the user changes tab or closes the window.
ajtruckle commented 7 months ago

@cengizu

Adjusted to use a worker thread and progress monitoring:

https://github.com/ajtruckle/meeting-schedule-assistant-support/assets/7985331/658fdbfd-19c5-4b66-a460-affea1000985

I have sent you a beta to try.

cengizu commented 7 months ago

@ajtruckle

Works good.