v22 expired!

#1
I just upgraded to build 32. It came up expired. When I pressed "Register" everything disappeared. So I uninstalled, downloaded the distribution and re-installed. The same thing happened ... expired ... "Register" made it disappear.

I did a little better with TCMD ... unregistered ... press "Register" ... no registration dialog but TCMD stayed open ... options ... register ... registration successful ... but the next time I start it, expired!
 
#3
That means Windows couldn't verify the code auth signature on the executable (TCC.EXE or TCMD.EXE). Did you do anything to modify the files?
Yes, I've been patching 4 bytes of TCC.EXE since v21 to eliminate its polling its own window twice a second.. What was that polling for? I have forgotten.

Is this something new? I notice that I can edit the binary in other ways and it still works. For example, I can use EDITBIN to make a subsystem:windows version of it.
 

rconn

Administrator
Staff member
May 14, 2008
10,787
97
#4
Yes, I've been patching 4 bytes of TCC.EXE since v21 to eliminate its polling its own window twice a second.. What was that polling for? I have forgotten.
Then the behavior on your system is WAD.

[/QUOTE]Is this something new? I notice that I can edit the binary in other ways and it still works. For example, I can use EDITBIN to make a subsystem:windows version of it.[/QUOTE]

It's Windows that is validating the EXE. The code signature probably doesn't include everything in the header.
 
#7
That has never been supported. It isn't anything new in TCC -- Windows should never have allowed you to do that to a signed executable.
As I said, it had worked many times, notably with every build of v22 until this one. This time, the patch is at exactly the same place in the file as in the previous build. In fact, I can uninstall build 32, re-install build 31, patch it, and it works fine!