xsharp.eu • VO 2.8: GetTickCountLow() does not seem to work correctly anymore
Page 1 of 3

VO 2.8: GetTickCountLow() does not seem to work correctly anymore

Posted: Fri Oct 06, 2017 11:44 am
by wriedmann
Hi,

I have a very strange issue in VO: the function GetTickCountLow() seems to not give the expected results anymore.

It returns the same value all the time, and for all applications (my console test application returns the same value as my large application from another project).

This is reproducible also in a small console application:
GetTickCountLow.png
GetTickCountLow.png (165.29 KiB) Viewed 836 times
I have also added a zipped AEF, so you can test this.

My OS is a fully patched Windows 10 Pro.

On a Windows Server 2008 R2 it the test application works as expected, giving different results.

Wolfgang

VO 2.8: GetTickCountLow() does not seem to work correctly anymore

Posted: Fri Oct 06, 2017 12:09 pm
by wriedmann
Hello,

I have now found the source of the problem: since Windows 10 does not fully restarts, but goes in a sort of sleep mode, it does not resets these counters when shutting down and starting again - you need a "restart" to reset them.

And in my understanding, after 5 days the counter should restart from 0 after reaching the limit of a double (the 2008 server is running for more than 5 days....).

Wolfgang

VO 2.8: GetTickCountLow() does not seem to work correctly anymore

Posted: Fri Oct 06, 2017 12:39 pm
by ArneOrtlinghaus
Hi Wolfgang,
I have tested it, it is the same for me on a fully patched Win10 Pro. But we haven't never used this function before.

Arne

VO 2.8: GetTickCountLow() does not seem to work correctly anymore

Posted: Fri Oct 06, 2017 12:57 pm
by Chris
Hi Wolfgang,

Hmm, that's interesting, I'm on Win7 and I never shut it down (only sleep/hibernate), and I can also see the problem with the VO code. But in x#/vulcan, it works correctly, I always do get a different value as expected. Looks like a bug in the VO runtime to me, the function probably tries to be smart in returning a value with no overflow but fails somehow. In the vulcan runtime this function simply uses Environment.TickCount() which works nicely as it seems.

Chris

VO 2.8: GetTickCountLow() does not seem to work correctly anymore

Posted: Fri Oct 06, 2017 1:38 pm
by wriedmann
Hi Chris,

I thought about testing it in X#, but had not the time to do it.

Thank you for confirming it!

Wolfgang

VO 2.8: GetTickCountLow() does not seem to work correctly anymore

Posted: Fri Oct 06, 2017 1:45 pm
by ic2
Hello Wolfgang,

Interesting. Apparently you force a complete shutdown by creating a containing C:WindowsSystem32shutdown.exe /s /f /t 0

See here

1 I wonder if shutdown from Classic Shell menu does do a full shutdown. (as they have more command including Hibernate, which I suspect could be the 'normal' W10 shutdown.
2 I have most machines (pc, internet router and monitors) connected to a power cord with a switch so I always shut down power completely at night and parts of the weekend. I wonder if a shutdown like this still means Windows keeps starting from a hibernation file. It would explain a lot of W10 problems.

Dick

VO 2.8: GetTickCountLow() does not seem to work correctly anymore

Posted: Fri Oct 06, 2017 1:53 pm
by wriedmann
Hi Dick,

this is my main development notebook that is shutdown at night, and since I work at customers sites most of my days, it is started again at least 3 times a day (in the morning in my office, later at customers site, and at the evening agian in my office).

It is a known fact that Windows 10 uses a sort of standby to startup faster, but I don't knew that it does not resetted these counters. Combined with the (confirmed) bug in the VO runtime library it leds to unexpected results.

Wolfgang

VO 2.8: GetTickCountLow() does not seem to work correctly anymore

Posted: Fri Oct 06, 2017 2:00 pm
by ArneOrtlinghaus
With every new operating system version we discover some parts that do not work as before. But in total Windows 10 works very well - stable, good performance, nice windows design. Most users accept this Windows version. If our programs will work with future releases as until now we can be happy.

Arne

VO 2.8: GetTickCountLow() does not seem to work correctly anymore

Posted: Fri Oct 06, 2017 2:30 pm
by wriedmann
Hi Arne,

I agree: Windows 10 is the most stable and well working Windows version of the last years. It had some suprises, but less than earlier versions, and most were caused by a programmer error (to be clear: mine).

Microsoft seems to understand that one of the most important things to maintain Windows alive is to give a stable application execution platform to the companies to this world (including themself with their Office software).

Wolfgang

VO 2.8: GetTickCountLow() does not seem to work correctly anymore

Posted: Fri Oct 06, 2017 7:09 pm
by ic2
Hello Arno, Wolfgang,

Performance of W10 is good, Window design a matter of taste. Compare for example the attractive Alarms & Clocks with the circular dials which worked very well to quickly select hours & minutes. This is replaced by the very basic app looking like gray toilet paper and a scroll list which is taking much more effort and mouse clicks to find a minute amount in the higher numbers. I don't know what you prefer but the old app was much better and nicer looking. Also I always install the W7 calculator because it accepts both a . and , as decimal point while the W10 app doesn't.

There are countless problems with W10. Much more than with W7. I've written an article about it (Dutch...) http://webwereld.nl/software/100992-win ... te-wachten. I don't think Microsoft is doing a good job. Considerable faster startup & shut down times and a few small improvements (and maybe the W10 apps but they are more a nice idea than something the world is waiting for) balance W10 IMO to a very small advantage above W7. And as we see in this subject, even that fast start comes at a price...

Dick