0

I've asked a related question before, but I have more information and a new question now.

I'm trying to use TAPI3 in my own program on Win8 64bit, however whenever tapi.shutdown() is called or the item is disposed, all other services inside the same svchost.exe that it is running in also ends.

I attached a debugger to the tapisrv.dll file to see what was going on. When this function is called, I get the following exception:

First-chance exception at 0x00007FFF4F8D311A (ntdll.dll) in svchost.exe: >0xC0000008: An invalid handle was specified.

If there is a handler for this exception, the program may be safely continued.

If I click continue, I get the next exception:

Unhandled exception at 0x00007FFF4F8D311A (ntdll.dll) in svchost.exe: >0xC0000008: An invalid handle was specified.

If there is a handler for this exception, the program may be safely continued.

Now, outside of debug mode I think that this exception isn't being ignored and that's what's causing the issue, as when I continue through in debug mode nothing ends and everything unloads correctly.

So here's my question: This exception happens outside of my code. Is there any way I can catch and handle this inside my code?

DavidG
  • 113,891
  • 12
  • 217
  • 223
Ryan Hargreaves
  • 267
  • 3
  • 16

1 Answers1

0

The TSP you use is simply buggy and crashes. You can never handle such a bug or crash in your code. You have just a stub DLL in your process and this communicates with the service. The service loads the TSPs (simple DLLs) and executes them. So all TSPs run in own service. If one crashes (causes a crash)all other TSPs and all other Services in the same host are affected.

You can isolate the TAPI process into its own service process. So your computer doesn't get instable. You find a description here.

xMRi
  • 14,982
  • 3
  • 26
  • 59