I don't have much use for .NET, but since no on else has responded... I've tried this code non-DLL (~5 minute using VS2010 Express is all I can tolerate
) and it works fine. Have you done so, as well?
I just want to be sure that this issue is only related to the DLL or how it is called (not e.g. a D:\ root permissions/FAT32 issue). That being the case, show us how it is called (and make sure it is called only once). Otherwise, make the files/file references in a folder and see if same result.
Also, couldn't help but notice the 'xlTextMSDOS'... which seems odd. Is that intentional (as opposed to 'xlCSV' or 'xlCSVMSDOS')?
My Intel Paxville CPUs (dual socket) are supported by Windows 8.0 (which patch support ends for on Jan. 12 2016), but are not supported by Windows 8.1 due to a lack of a PrefetchW instruction. This instruction could be patched out with a NOP for borderline CPUs, if Microsoft chose to. So, Windows 7 it is.