using tListProc() with errormode(@OFF)

Started by ycadorette, July 17, 2014, 01:17:57 PM

Previous topic - Next topic

ycadorette

Hi everyone,

I need some information about the tListProc() function in the WWPRC44I.DLL.  We are using in our code the tListProc() function to get the list of process with there processID to check if our program is already running on the system.  It seem that some of our client are not able to run the tListProc() function returning a winbatch error with 215 ou 213 as number.  On the forum it said that it is an access problem to the registry.  So we tried to put the function between a errorMode(@OFF) and a errorMode(@CANCEL).  But the winbatch error in the tListProc() function still appear in the client screen, so we don't seem to be able to hide the error to the client and use an other way to work in case of the tListProc() function don't work.

Can anyone help us in a way to hide the winbatch error in case that the tListProc() function return an error ?

Thanks by advance.

Deana

I would expect the ErrorMode to capture any minor, moderate or extender errors. Please add DebugTrace to the beginning of the script, run the script again until error and post the resulting trace file here. It should contain extended error information that might be helpful.
Deana F.
Technical Support
Wilson WindowWare Inc.

ycadorette

I think you answer my question about the error type than the errormode(@off) catch.  Because I was unable to crash the tListProc() function in my computer or any computer of the office, I try to put a parameter un the parentheses of the call:

debugtrace(1, `C:\vigilwin\test.log`)
errormode(@OFF)
Processlist    = tListProc("")
errormode(@CANCEL)

When I edit the log file, it said error 3066, I search the forum to know what kind of error it is and it is consider as a fatal error, si I think the reason of the error show is that.

I will ask a distributor that as the tListProc() error to test my code and if it doesn't succeed, I will ask again somme information to the forum.  Thanks for the reply, it help me.

Deana

Yes error 3066 is a fatal error indicating "Wrong Number of Arguments in Function". You will need to determine exactly which line it is failing on and address the number of parameters passed to that function. 
Deana F.
Technical Support
Wilson WindowWare Inc.

td

99% of the time, a  tListProc problem is the result of corrupt, disabled, or restricted performance counters on a system.  The likely reason your script terminates execution on an error is that you have not written the script to check for tListProc errors in subsequent lines.  The tech database contains advice on correcting performance counter errors. 

Also, extenders can generate level 3 (fatal) errors but the Process extender's tListProc function does not.
"No one who sees a peregrine falcon fly can ever forget the beauty and thrill of that flight."
  - Dr. Tom Cade

keslaa

I know this is an old thread, but I have just run into this same error. The script as written has been successfully run on all of our physical machines. Now, however, our Citrix admins are trying to run this in their VDIs for the first time. This has been compiled into an executable and is distributed via SCCM. From the session, it has been confirmed that the registry key that is read is available to to system account, which SCCM adverts run under. Is there something special about a Citrix session that might affect this command?

td

Can't answer the question because it is vague on certain details.  You need to indicate which error our your referring to as this thread mentions 3 different errors.  You also need indicate which WIL or WIL extender function is generating the error. If you are referring to Process extender error 213 and the error is definitely coming from the tLisProc function then either the performance counters are corrupt or the script does not have sufficient privilege to read performance counters.  If you are referring to  Process extender error 215 and the error is definitely coming from the tLisProc function then either the performance counters are corrupt or your script has run out of heap  memory.  If you are referring to error 3066, you have a poorly written script.
"No one who sees a peregrine falcon fly can ever forget the beauty and thrill of that flight."
  - Dr. Tom Cade

keslaa

Sorry about the lack of details. It was perfectly clear to me in my head while I was typing it.  :)

This is the error 213 from the tListProc() function. I have attached the screen shot. This only fails on the Citrix boxes. We tried running as the local admin account and through SCCM Adverts as the system account. How can I test whether the performance counters are hosed?

td

Lots of info here.  Read through it carefully.

http://techsupt.winbatch.com/webcgi/webbatch.exe?techsupt/nftechsupt.web+WIL~Extenders/Process~ID+213~Cannot~Retrieve~Counter~Index.txt


However, your problem looks suspiciously like a permissions issue but that would depend on your OS version, UAC settings and compiled script UAC compiler options.
"No one who sees a peregrine falcon fly can ever forget the beauty and thrill of that flight."
  - Dr. Tom Cade