You have a couple of options:
- If this happens in a specific call, try wrapping that call in a try..catch that might be able to catch the COMException object and allow you to look into it to get more details.
- Try to perform the same COM code through a non managed environment (Even a VBScript might do that trick) and see if you get the same problem
Basically you need to rule out that interoping with COM inside .NET is the cause of this problem.
In most cases these are just exceptions being thrown out of the COM component and you need to handle them or make sure them don't happen by verifying that the parameters you are passing to them are the correct one.