This is a summary of our conversation that took place beneath the question.
80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
That means COM object you are trying to instantiate is a class that is not COM registered. COM uses the registry to maintain class registrations.
Try doing a regsvr32.exe DSOFile.dll from the command-line with admin rights on the target system.
I dont remember doing this in my Dev machine. This makes me wondering is there something else I am missing
Yes, try the following check:
Quick check
I recommend using Microsoft's free tool OleView (normally installed with Visual Studio) to check all things COM but in the event you don't have it, open up RegEdit and see if the following key exists:
HKCR\CLSID\{58968145-CF05-4341-995F-2EE093F6ABA3}
If it's not present on the target machine, then DSOFile is not registered.
If it is there, expand the above key and you should see a child key called InprocServer32. The (Default) value for this key will be the path to the DLL, in this case DSOFile.dll.
More
If you want to use OleView, take a look in:
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\
Actual location may vary based on version of Visual Studio or Windows SDKs installed I suspect.
Once running, look in Automation Objects for your class.
Failing that, look in All Objects.
regsvr32.exe DSOFile.dll
from the command-line with admin rights on the target system – Moustache