This may be an old thread but I found it by Google searching, so it may be found by the same methods i used.
Ok so i installed ARMA 2 on my Vista 64 bit home premium, and i had the same problem as stated in this thread. I fully reinstalled (I used steam in administrative mode) and still had a problem (just a microsoft error message). Out of curiosity i started ARMA 2 out of its' steam directory and seen the same massage as above so I did my reinstall and reboot for DirectX. The problem was still there so i think "what if i find the file in the .cab file from the directx folder and copy it to the directory" (I only thought about this because I have used d3d9.dll based shaders in other games). I found the file X3dAudio1_6.dll in the Mar2009_X3DAudio_x86.cab with 7Zip and copied the file to the base Arma 2 directory.
Now the game loads up and I can get in game just fine. (I think 64bit windows tries to only load the 64 bit Directx only and i don't know why)
Note: I used the x86 cab file and not the x64