Note that 0x80004005 does not originate from Oracle, it's a standard windows error for "Unspecified failure".
Possible reasons are missing files or access rights.
My guess is that there are missing access rights on the Oracle Client installation.
I suggest you start reading here
Note that the filenames in step 6 will differ.
Next step is to read this
Crucial question though, do you really need to use TransactionScope?
If not, use normal transactions and add Enlist=false; in the connectionstring