PDA

View Full Version : Lots of NTDLL.DLL errors


MadsRavn
25-Aug-2005, 10:43 AM
Hi!

I am using Eureka Log and it is really a cool debug tool.
But I am having a little problem, I keep getting error reports from Eureka
saying that some sort of error has occured in NTDLL.DLL sometimes it is an
External Exception, and sometimes it is an Access Violation.

I am without a clue how to find what is causing the error,
because the call stack only shows ntdll.dll and or kernel32.dll

Has anyone encountered similarly errors ?

My applications seems to function without any problem.

I dont know if it is possible to deselect detection of errors in the mentioned DLL's

Hope that someone can help

CU
Mads

admin
25-Aug-2005, 11:11 AM
MadsRavn wrote:
> Hi!
>
> I am using Eureka Log and it is really a cool debug tool.
> But I am having a little problem, I keep getting error reports from
> Eureka
> saying that some sort of error has occured in NTDLL.DLL sometimes it is
> an
> External Exception, and sometimes it is an Access Violation.
>
> I am without a clue how to find what is causing the error,
> because the call stack only shows ntdll.dll and or kernel32.dll
>
> Has anyone encountered similarly errors ?
>
> My applications seems to function without any problem.
>
> I dont know if it is possible to deselect detection of errors in the
> mentioned DLL's
>
> Hope that someone can help
>
> CU
> Mads

You can deselect its detection using an ExceptionNotify event but the
real problem is WHY the exception is raised, no? :)

Can you send to me a little source demo capable to reproduce it, please?

NOTE: if you want I can tell to you the code to use to don't catch the
exception!


--
Best regards...

Fabio Dell'Aria.

MadsRavn
25-Aug-2005, 02:38 PM
Hi Fabio

I would like to see the code that could disable the detection of errors in the ntdll.dll file.

It would be nice if I could send you a demo, but the error is inconsistant. Most of the time my application runs without any problem, but sometimes it returns an exception that eureka catches:confused:

But it could be nice to know why these errors occur.
My best guess is that it has something to do with my use of the parallelport.
I currently use NTPort from www.zealsoft.com to access the port.
The computer setup includes 3 parallelports and they are all used.
One of the other parallelports are used by an application dll from RTX telecom.
But I am only guessing :o

And if anyone wonders, then I can tell that I use the computer to perform a automatic test of a wireless product. I use a lot of hardware from different manufactures to perform such a test.

MadsRavn wrote:
> Hi!
>
> I am using Eureka Log and it is really a cool debug tool.
> But I am having a little problem, I keep getting error reports from
> Eureka
> saying that some sort of error has occured in NTDLL.DLL sometimes it is
> an
> External Exception, and sometimes it is an Access Violation.
>
> I am without a clue how to find what is causing the error,
> because the call stack only shows ntdll.dll and or kernel32.dll
>
> Has anyone encountered similarly errors ?
>
> My applications seems to function without any problem.
>
> I dont know if it is possible to deselect detection of errors in the
> mentioned DLL's
>
> Hope that someone can help
>
> CU
> Mads

You can deselect its detection using an ExceptionNotify event but the
real problem is WHY the exception is raised, no? :)

Can you send to me a little source demo capable to reproduce it, please?

NOTE: if you want I can tell to you the code to use to don't catch the
exception!


--
Best regards...

Fabio Dell'Aria.

admin
25-Aug-2005, 06:25 PM
MadsRavn wrote:
> Hi Fabio
>
> I would like to see the code that could disable the detection of errors
> in the ntdll.dll file.
>
> It would be nice if I could send you a demo, but the error is
> inconsistant. Most of the time my application runs without any problem,
> but sometimes it returns an exception that eureka catches:confused:
>
> But it could be nice to know why these errors occur.
> My best guess is that it has something to do with my use of the
> parallelport.
> I currently use NTPort from www.zealsoft.com to access the port.
> The computer setup includes 3 parallelports and they are all used.
> One of the other parallelports are used by an application dll from RTX
> telecom.
> But I am only guessing :o
>
> And if anyone wonders, then I can tell that I use the computer to
> perform a automatic test of a wireless product. I use a lot of hardware
> from different manufactures to perform such a test.
>
> admin Wrote:
>
>>MadsRavn wrote:
>>
>>>Hi!
>>>
>>>I am using Eureka Log and it is really a cool debug tool.
>>>But I am having a little problem, I keep getting error reports from
>>>Eureka
>>>saying that some sort of error has occured in NTDLL.DLL sometimes it
>>
>>is
>>
>>>an
>>>External Exception, and sometimes it is an Access Violation.
>>>
>>>I am without a clue how to find what is causing the error,
>>>because the call stack only shows ntdll.dll and or kernel32.dll
>>>
>>>Has anyone encountered similarly errors ?
>>>
>>>My applications seems to function without any problem.
>>>
>>>I dont know if it is possible to deselect detection of errors in the
>>>mentioned DLL's
>>>
>>>Hope that someone can help
>>>
>>>CU
>>>Mads
>>
>>You can deselect its detection using an ExceptionNotify event but the
>>real problem is WHY the exception is raised, no? :)
>>
>>Can you send to me a little source demo capable to reproduce it,
>>please?
>>
>>NOTE: if you want I can tell to you the code to use to don't catch the
>>exception!
>>
>>
>>--
>>Best regards...
>>
>>Fabio Dell'Aria.


As code you can use the following:



uses
ExceptionLog, ECore, ETypes; // The required units...

// The EurekaLog OnExceptionNotify event...
// ----------------------------------------
procedure TForm1.EurekaLog1ExceptionNotify(
EurekaExceptionRecord: TEurekaExceptionRecord; var Handled: Boolean);
var
HModule: THandle;
Module: string;

function GetModuleName(Module: THandle): string;
var
ModName: array[0..MAX_PATH] of Char;
begin
SetString(Result, ModName, GetModuleFileName(Module, ModName,
SizeOf(ModName)));
end;

begin
// Search the Handle of Module that has raised the exception...
HModule := FindHInstance(EurekaExceptionRecord.ExceptionAddre ss);
if (HModule <> 0) then
begin
// Search the Module Name...
Module := LowerCase(ExtractFileName(GetModuleName(HModule))) ;
if (Module = 'your module name in lower case') then Handled :=
False; // This disabled EurekaLog!!!
end;
end;

// The Application.OnException event...
// ------------------------------------
procedure TForm1.ApplicationEvents1Exception(Sender: TObject; E: Exception);
begin
// Nothing...
end;


--
Best regards...

Fabio Dell'Aria.