Can't run some commands after some time in minlogon, why???

K

karl

Hi,
My image can't run some commands (such as cmd.exe, net.exe, but
internal commands like "dir", "cd" run ok) after about 33 minutes.
My developement environment is XPE SP2. My image uses minlogon.

After many tests, I found that ONLY after a service started, that
strange behavior appears. That service is develped by my colleague, and
is part of a product of my company. I asked him, but he didn't know why
either.

In Windows XP sp2, that service runs ok. So I think I must lose some
components. But I don't know which and why?

Can anyone help me, thanks in advance.

Karl
 
D

dferencz

Karl,

I discovered behavior with a printer driver (which runs as a service)
that sounds similar to your problem. Basically, the driver's print
monitor DLL calls the Terminal Services API (WTSEnumerateSessions) to
get a handle to the desktop and display GUI information. Thus, the
driver needs Terminal Services to work properly!! (Since you're using
minlogon, I know you don't have the TS component included.) Luckily I
found a way around this by disabling all GUI output from the driver
(via a registry entry).

This is very hard to diagnose, since the recommended way of accessing
the TS API is not via linking (to a LIB file), but by using
LoadLibrary() and GetProcAddress() (since the TS API was not available
until NT SP4, this maintains backward compatibility.) The print driver
also made calls to GetVersionInfo() to attempt to determine if it was
running on NT pre-SP4 (and then used an alternate method to attach to
the desktop.)

You might try using FileMon to see if there are any attempts to access
'wtsapi32.dll'...

-- Don
 
K

karl

dferencz,

Using FileMon, I cannot find any attemps to access 'wtsapi32.dll'.

My colleague told me that that service has too GUI interfaces: a
dialog and a systray icom. And that service check itselft for its
interfaces, if any of them is not displayed, try to show it again and
again. My minlogon image does not has the component about systray, so
its perpetual try to show the systray may use too much memory to cause
memory overflow.
Using task manager, I found that's not the causation.

Karl
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top