In COM programming, each COM object has a unique pointer. You can easily compare two objects for equality using this pointer. Depending on the programming language you're using, the process of comparing may vary. I fail to see the issue.