Adding new COM Interface version

Leave a comment

Just for my self and other people like me who forget interestingly fast, and do not wish to get E_NOINTERFACE from C++ QueryInterface method after they add new COM interface version for maintaining backward compatibility for the COM object.

4 places to add the new version info..

1-In the idl file used for the description of the interface, Add the new interface and make sure you put a new UUID for it, make sure it inherits the old interface


[
 object,
 uuid(69BBF687-D8AE-4f7c-8E61-96DD47FA12C8),
 dual,
 helpstring("OldInterface Interface"),
 pointer_default(unique)
 ]
 interface IOldInterface : IDispatch
 {

//Some old functions

};

[
 object,
 uuid(9BFB8CD2-C090-4e37-A9AB-AE001B9EB4DC), //new UUID
 dual,
 helpstring("INewInterface Interface"),
 pointer_default(unique)
 ]
 interface INewInterface : IOldInterface
 {
//Some new functions

};

More

Advertisements

TopCoder Arena launcher in Ubuntu

5 Comments

well..

that took me some time to create the launcher 😀

first i’m running on Ubuntu 9.04, all what i wanted is a launcher to start the Arena without the need to digg into folders for it

so i made the icon, put it in the Application launcher and added the command wich was “javaws %ArenaPath%/ContestAppletProd.jnlp”

and when i click it, nothing happens More