I have some 3rd party DLL's which all have the same structured interface. The variables, procedures and functions are all published the same, and I have the details of the structrure.
They are plugins for another application -- Winamp audio input plugins to be precise. My program should operate on any of the DLL's, no matter which one is loaded, to decode an andio codec to PCM. I'm having great success with several of the DLL's but a couple are are generating access violations like this: Project Myproject.exe raised exception class C0000005 with message 'access violation at 0x00000000: read of address 0x00000000'. I can't see any way of debugging this. I don't have access to the 3rd party DLL source to see what is going on. These same DLL's work when used with Winamp. Is there any way to find out what address offset in the DLL the error occured? Or is it more likely that the error occured in my code? Perhaps the DLL is attempting to call a function in my program which is undefined (unassigned pointer address)? I've checked all the functions and procedures that are called from the DLL to my program, and these appear to all be assigned correctly. I haven't altered the pointers to the procedures that are called from my program to the DLL (the reverse situation). I think that is correct. I've never attempted to use DLL's at all in the past so this is all new to me. I'm wondering if Winamp has some way to ignore the exceptions caused by buggy plugins. I can do this while running in the IDE, and one problem DLL seems to work fine just clicking F9 after an exception occurs. So is there some way to prevent the exceptions from terminating the app? When the app is run outside the IDE, I don't get any errors at all, the app just terminates. Any help most appreciated. Regards, Ross. _______________________________________________ Delphi mailing list -> [email protected] http://www.elists.org/mailman/listinfo/delphi

