Windows NT service - evaluation does not work - bug or lock?

104 views
Skip to first unread message

pedro rocha

unread,
Jan 1, 2025, 11:41:42 AM1/1/25
to VAST Community Forum
Hi All,

First, our context: I have a client who is stuck on version 8.5 of Visualage. We need to update their applications and decided to use version 9.2.2 as a step to finally bring everything to version 2024. 

The test with the applications was completed successfully, however, we have several 'Windows NT services' and, when we start the service, Windows takes a long time and does not complete the initialization. Is this a bug or is it a lock in the evaluation license? If it is a lock in the license, is there an alternative to test the applications generated as NT service in an evaluation version (V9.2.2)?

Thanks!

Marcus Wagner

unread,
Jan 2, 2025, 6:55:12 AM1/2/25
to VAST Community Forum
Hi Pedro,
I created and run Windows NT service in almost all Visual Age Versions (Envy OTI 3, VAST 4 through 11 or 12) until just recently (1993 -2021) in several different constellations, environments and applications. 
Even change of the bitness (16->32->64) (except in one case) caused problems.
I never observed a lock in any production version of a  service (packages without a graphical user interface).
The evaluation versions block execution of the development environment after a given time period, but instantly at execution start, not showing the behaviour of your description. In particular the Smalltalk VM stops execution in its own initialisation, being run out of the test period.
Look at other potential reasons, internal (Smalltalk code Q&A) or external (access rights, DLLs, DB, ...) resources causing the lock. 
Try to obtain external insights using tools like process explorer under Windows to gain more information: what is locked or contributing to the lost execution time. [for example, recently we found a memory leak accessing a DLL, causing tiny incremental memory loss, production code already operating several years ago].

Is there anything else causing timeouts and retries? 
And consider all envolved (other) changes along the version swap.
So switching from 8.5 to 9.2.2 implied a generation exchange of the VM as I remember.
Did you properly replace the whole installation of the server runtime support? 
It is not sufficent to just exchange the image alone (except in some tiny increments in rare cases, e.g. 6.3 -> 6.4). 
Usually the whole server software is to be installed on a different place than before, so have an eye on all pathnames involved.
I did observe locks of an application in a server environment running several instances with GUIs in parallel - when one image crashed (due to other reasons) it was not possible to start any other image until the whole Windows VM session was closed and restarted (not only a new login, but the whole server has to be restarted). 
We did not track that case further down. It seemed to be related to GUI logic of the login of the Smalltalk application, which was shared over all instances until the whole server was shut down (including an ODBC connection to be established).
This behaviour could not be reproduced in a client installation - the remote execution of the GUI was an essential part in this lock.
-

Richard Sargent

unread,
Jan 2, 2025, 1:15:23 PM1/2/25
to VAST Community Forum
Pedro,

Does the EMSRV.exe process remain running or has it disappeared?
What does the log file for it show?
Message has been deleted

pedro rocha

unread,
Jan 2, 2025, 10:12:41 PM1/2/25
to VAST Community Forum
Hi Marcus,

Thanks for your reply.

I've also been using it since version 4.5 (1998) and I've done many migrations in my own environment and providing services to clients... I migrated from 4.5 to 6.0 (6.0.3)... 7.. up to 8.5... in version 8.6 (if I'm not mistaken) they started the environment scheme and in 2021 the trial versions started to expire after 90 days... that's why I thought they had put a lock on abtntsrv.exe too... anyway, I just wanted to confirm that there is no lock to eliminate this possibility and track other items... I've already added the list of dll's to the ".ini" file and I've already checked all the path entries... I migrated my application by exporting from version 8.5 and importing it into version 9.2.2 (and, yesterday, I downloaded and installed the trial version 2024 (13.0) and the result was the same)... also, I generated the example application (AbtNtServiceExampleApp) and I got the same result... I have experience in setting up the execution environment for NT services because I have done this many times in several previous versions as well... I also thought about authorities (and even DEP)... well, it's getting long... I'll try to install the service directly in the original execution folder of the vast.. (I use a specific folder and copy the execution environment with the necessary subfolders (nls...)).. well, officially confirming that there is no lock I will continue looking for the problem here.

Thank you very much for your dedication!!

pedro rocha

unread,
Jan 2, 2025, 10:15:49 PM1/2/25
to VAST Community Forum
Hi Richard,  thanks.

In this case, I am not using it... I am starting the image in a stand alone mode (single user)...

Bob Brodd

unread,
Jan 3, 2025, 11:10:31 AM1/3/25
to VAST Community Forum
Hi Pedro,

The evaluation version of the older VAST products, such as 9.2.2,  have a popup window informing the user that they are using a trial version of the software.  Your NT service can not startup because this popup is not visible and thus the system can not continue past the required  push of the Ok button.   

Our current  trial download (13.0.1) uses a different mechanism for trial versions.  It is time-bombed  instead of using the 'nag' technique of older versions, so you can create and run NT Services for the duration of the trial period.  

Regards,
Bob

Bob Brodd

unread,
Jan 3, 2025, 11:42:49 AM1/3/25
to VAST Community Forum
Hi Pedro,

I may have misspoken about the 13.0.1 trial version. It is time bombed , but I forgot about  a popup that informs you of how many days you have left in the trial, so I suspect the same issue will occur with NT Services.   I will test this out and let you know for sure.   

Regards,
Bob

Bob Brodd

unread,
Jan 3, 2025, 12:25:43 PM1/3/25
to VAST Community Forum
Hi Pedro,

The popup informing you of how many days are left in the trial version of 13.0.1 presents the same issue as the  9.2.2 approach  does for NT Services.  

Regards,
Bob

pedro rocha

unread,
Jan 3, 2025, 1:28:44 PM1/3/25
to VAST Community Forum
Hi Bob,

Thank you very much for the clarification... in fact I already suspected that this was the case.

But does this mean that I can't test NT services on any of the available trial versions, am I right? If so, isn't there a way I can show my client that everything will work normally so that they feel encouraged to upgrade their version of VAST and we can update and improve their applications?

Regards!

Bob Brodd

unread,
Jan 5, 2025, 5:58:26 PM1/5/25
to VAST Community Forum
Hi Pedro,

You are correct that you will not be able to run a VAST trial generated NT Service. 

Option #1 is to become. a supported customer and use a fully functioning image.

Option #2 is to adjust your  NT service apps to run as headless runtime images instead.  This is usually pretty easy to do and should retain all of the function of the application other than the NT service support.  When I create applications that are intended to run as an NT service, I typically also create an entry point into that application that skips the NT Service registration code. I start these up  using  esvio.exe  instead of abtntsrv.exe.  Even though the app is 'headless' , the time remaining dialog will be visible  and you will be able to  press the ok button and the app will run until terminated.

Regards,
Bob

pedro rocha

unread,
Jan 6, 2025, 9:48:58 PM1/6/25
to VAST Community Forum
Hi Bob,

Thanks a lot.

I will follow the option #2 just to show to my prospect that it is possible migrate his applications to the current supported version.

I hope I can get them to decide to upgrade and maintain the platform and, then, go with option #1.

Regards.
Reply all
Reply to author
Forward
0 new messages