COM API 4.2 / 4.3 compatibility

Discussion about using the VirtualBox API, Tutorials, Samples.

COM API 4.2 / 4.3 compatibility

Postby rousseauhk » 24. Oct 2013, 04:22

All my users are currently on 4.2.x, but at some stage I'd like to upgrade everyone to 4.3. However looks like the COM API throws a System.InvalidCastException if we run a .Net program that was built with the 4.2 SDK on a machine with VirtualBox 4.3 installed.

What is the recommended way to ensure compatibility? I don't want to have to force all users to upgrade to 4.3 unless I can help it (and then we'll presumably have the same compatibility issue once 4.4 comes out). Ideally I'd like to be able to support multiple VirtualBox versions from the same agent.

Posts: 45
Joined: 8. Apr 2013, 09:16
Primary OS: MS Windows 7
VBox Version: OSE other
Guest OSses: Ubuntu Server

Re: COM API 4.2 / 4.3 compatibility

Postby klaus » 24. Oct 2013, 15:04

We only guarantee API compatibility for the maintenance releases of a particular major release (i.e. 4.2.x). Between major releases we do change the API in incompatible ways, and the client code needs to be adjusted. I'm not aware of projects which use some abstraction layer (linking against several SDK versions) in the "local COM/XPCOM" API case, but it might be possible with enough linker trickery. It's guaranteed that the IVirtualBox::version attribute is always the first one, so it can be called without knowing the VBox (or API) version before.
Oracle Corporation
Posts: 754
Joined: 10. May 2007, 14:57

Return to The VirtualBox API

Who is online

Users browsing this forum: No registered users and 2 guests