We have an API for PDM that works most of the time but some users get the error " 0x080004002 (No such interface supported) once in a while. I don’t get the error on my own computers.
This is the error message:
Any idea what this could be, in what direction to start searching for errors or how to troubleshoot this one?
Only code can tell.
Try to wrap your OnCmd’s implementation with a try catch block and print the error message in the dialog box.
First thing I would Check before diving into the code, is does each machine have the required frameworks installed on their computers. I get similar once if we don’t have the older framework installed.
The OnCmd is already in a try catch block with error message dialog box.
Since the error message is not directly from my code (I have a different layout of the error dialog box) I will look into the different framework versions on each computer.
It is possible that the dlls are not signed and different add-ins are not using the same version of the PDM interop PIAs.
I’m not sure if I have your answer, but we’ve done some big add-in troubleshooting in the past and would be happy to share what we’ve learned.
We used to get add-in similar errors after something would happen to take the database server offline when a client was still connected. In our case, the backup method our IT dept was using was actually taking the whole server offline for about ten min each night, then client computers that were still connected would have an error like this the first time they did something that triggered the add-in the following morning. If some users are seeing this only sometimes, while others may not see it at all, it might be a good idea to see if there might be any common log off or reboot habits between users that could be playing a role, just in case you might be experiencing an issue similar to ours that was more related to the server than the software.
Additionally, as Amen pointed out, I have noticed weird errors if any of the loaded add-ins are using different versions of the interop files or if any default add-ins like Dispatch or Task weren’t updated with the latest version after the system was last upgraded. I had to learn the hard way that every. single. add-in. needs to be reloaded with each upgrade and every custom add-in needs to be recompiled with the new interop files with each upgrade. Skipping this step in the past has caused us issues more than once.
The last add-in issue we’ve had to chase was related to clients that need to re-register the dll, which was a process that included some registry wipes and files in a hidden system folder deleted. It may be worth looking into but I think that error was different.
Hope something in here proves helpful!
Thank you so much for your extended answer.
After excluding the earlier proposed options we think that it is indeed a server connection error.
Recently we have been working on an API with our VAR that he had written for us in the past and gave now frequently errors. After a lot of logging and troubleshooting he came to the conclusion that there were short communication failures / delays between the different servers. It seems to happen to other clients as well. It has nothing to do with internet speed or firewall settings, so it seems. His solution was to make a loop in the API that, after an error, tries to repeat the function. It does this 3 times before it gives the error message. It has worked for his API.
We might give it a try as well and see if that fixes this specific error in our API.
A warm welcome to our forum!