LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

lvrt.dll Error

Solved!
Go to solution
I am using the LabView RTE 8.2.0.4002 to execute a LV app that was built in LV 8.2. My app sporadically crashes. The output error file says the error is in TDUtility.cpp (1432) and sometimes (1041), Unexpected: 8, 4, tc: 48, 48. The PC Event log just reports that my application died and that the faulting module was lvrt.dll version 8.2.0.4002. The Microsoft error log shows that I received an Exception Code: 0xC0000005. My file reports the OS is Windows NT, OS Version 5.1, but the PC is running Windows XP, Service Pack 2. Any ideas?
0 Kudos
Message 1 of 9
(7,575 Views)

Hi,

 

Please try to uninstall and reinstall the RTE.

 

Are you making any calls to  kernel32.dll in your executable?

 

Are you seeing this issue across multiple computers?

 

Thanks!

Warm regards,
Karunya R
National Instruments
Applications Engineer
Message 2 of 9
(7,550 Views)
Solution
Accepted by bfieldi
I will try reinstalling the RTE. Yes, I am making a call to User32.dll which then passes a value to kernel32.dll. The call to User32.dll includes a typecast with a red 4.x on top of it. It's casting a Windows Refnum to a U32 and passing it in as a parameter to User32.dll:getWindowRect function. The function outputs a signed 32 bit integer which is an input to kernel32.dll:GetLastError. The crash is happening on several computers. I don't think the OS has been changed, but we have recently upgraded to LV 8.2. Thanks for your help.
0 Kudos
Message 3 of 9
(7,541 Views)

Hi,

 

Let me know what happens after you try to uninstall and reinstall the RTE.

 

Making any calls to the kernel32 DLL could be the source of the problem . If you are calling the kernel32 DLL to get the PC name, use the key registry to get the PC name instead.

 

Thanks!

Warm regards,
Karunya R
National Instruments
Applications Engineer
Message 4 of 9
(7,529 Views)
Good morning, I think you're on to something in terms of the call to kernel32.dll. I haven't been able to get access to resources to reinstall the RTE, but I wonder if the typcast is causing the problem. Could this - Unexpected: 8, 4, tc: 48, 48 - be referring to a typecast. We are using an old version of the WINUTIL.llb. Perhaps there's a later version that we should be using or perhaps it didn't all get compiled into LV 8.2. Thanks so much for your help! Brenda
0 Kudos
Message 5 of 9
(7,524 Views)

Hi bfieldi,

 

I am not sure what the Unexpected: 8, 4, tc: 48, 48 message is referring to, but I wouldn't think it would be a typecast. Try the ideas that Karunya posted if you can, and if you want to send your error log in to National Instruments, you can choose to report the error when you get your TDUtility.cpp message. This will supply more information about what is happening.

 

Regards,

Stephen S.

National Instruments
Applications Engineering
Message 6 of 9
(7,495 Views)
I tried reinstalling the RTE - no luck. It's a long process to debug the problem since it can go a day and never occur or it will happen 5 times in 1 hour. I'm commenting out portions of the code and re-running. I'm making several calls in different places to kernel32.dll and User32.dll and ntdll.dll. Errors, if I get any at all, are inconsistent.
0 Kudos
Message 7 of 9
(7,493 Views)
My errors continue to reference TDUtility.cpp, line 1341 or 1054. It would sure be nice to know what TDUtility.cpp does and what those lines contain. Anyone know?
0 Kudos
Message 8 of 9
(7,484 Views)
I see that the WinUtils.llb VIs in LabView 7.0 were marked "Run In UI Thread". You had to choose between that and "Re-entrant". The default appeared to be "Run in UI Thread". When we upgrade to LabView 8.2, you can select "Run in UI Thread" separately from "Re-entrant". All our VIs are set to "Run in UI Thread", but not "Re-entrant". That may be causing my problem.
0 Kudos
Message 9 of 9
(7,482 Views)