You could probably get rid of the OCX if you called wsock32 directly. It's a lot more involved though as the OCX provides a simplified interface. I think it's the only way you can get UDP support as well but don't quote me on that.