quasar / Quasar

Remote Administration Tool for Windows

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Correctly applying modifications to client and server

AlphaCharry opened this issue · comments

Quasar version

1.4.0

Server installed .NET version

.NET 4.5.2

Server operating system

Windows 10/Server 2019/2016

Client installed .NET version

.NET 4.5.2

Client operating system

Windows 11/Server 2022

Build configuration

Release

Describe the bug

I recently found a very strange problem while trying to develop this application extension, I changed the version numbers of the client and server in the source code, I rebuilt the client 1.4.3, but before , I had run the 1.4.1 client on many hosts, but once I rebuilt server code, The old 1.4.1 client would not perform its functions properly, and it would automatically disconnect and reconnect after a few seconds.

How to reproduce

I can't guarantee how this went wrong, but would like to be sure that there was a problem with the old build and the new build?

Expected behavior

Older versions should work fine

Actual behavior

Older versions shouldnt work fine

Additional context

No response

image
As shown in the figure, I ran several versions, but the older version appeared online, but it was abnormal when performing various functions

Does the author have some sort of judgment client version or modification in the execution of some functionality during development? Because I found that once I changed the client code myself to build a new client, the server couldn't perform some functions of the old version client,But I can't guarantee it, because it does feel like there's some sort of judgment mechanism

Simply changing the version doesn't matter. The version is just informational. What matters are the implemented messages and handlers. Once these diverge, the client may behave weirdly. Also, yes the client in debug mode behaves different than in release mode, but that is mostly related to the client settings and certificate validation.

If you don't want to share exactly what changes you made, I'm afraid I can't help you.

8e6ac96ff1d5d9d6a6a83bed1efa971
8035b08a9efcc5cfc9537122db38b0c

a5bdf62c6c62a1469e6699214a29f27

yep ,As you can see, I added my own extensions to the server common client.Then the version is changed to build

I am now 100% sure that there will be problems after I add my newly added Handle and Message, the rebuilt client will work fine, but some features of the old client such as 1.4.1 will crash (I did not change the old client, it has been stable for a month), such as file management is running bad. This should be a major BUG because I only changed the client on some hosts, I didn't change it on the old version, it was running a month ago. But now the problem is that the old client, which I was not involved in modifying, won't turn on some of the 1.4.1 features (such as file management) properly. Can the developer give me some ideas and situation descriptions? Or a solution to the cause of the problem. I think it needs to be compatible with older versions.

I still don't know what the cause of this problem is. But I didn't touch any of the 1.4.1 hosts. But it doesn't work?

(1)_ On July 1, 2023, I compiled the source code, constructed the original version of 1.4.1, and ran the client 1.4.1 on the industrial host named WindowsServer2019 A1, which ran stably.

(2) _On July 25, 2023, I added a function of my own to Message and Handle based on the developer's source code, and I copied the other structures. And construct a new winform. Finally compile and build to 1.4.3. Then I put the client on the WindowsServer2019 host named A2.

(3)_On the same day, I found that A1 was still online on the server of 1.4.3, but when I opened the file management of A1, it crashed, and then immediately displayed online.

(4)_ 28 July 2023. I added another feature, adding Message and Handle, but an accident happened again and I changed the compiled client to 1.5.0 and deployed it on a WindowsServer 2019 machine named A3. At this time, the 1.4.3 client can not access some functions.

(5)_I have not changed the operation of A1 after July 1, 2023. Now, my server shows that A1, A2 and A3 are online, but A1 version is 1.4.1, A2 version is 1.4.3, A3 version is 1.5.0 and it turns out that neither 1.4.1 nor 1.4.3 can use file management.

Hello?

If you do not share your modifications (e.g. as fork of Quasar) I'm not willing to help you.