I've not used these much, but this sounds like a situation where COM Objects would be used.