Actually I had the same problem as well when using iTunes 7.01, Multi Plug-in 2.4.2, Foobar 0.9.4, and ASIO4ALL. The time slider within iTunes would move and the "Total Time Played" indicator within foobar2000 preferences would be moving as well, but there was still no sound. (It should be noted that my foobar2000 pass-through works when using DirectSound.) Before I get into more details about how I managed to get ASIO to work with foobar2000 pass-through, I should state my setup consists of my IBM T42 notebook which has an internal soundcard (SoundMAX) and HeadRoom MicroStack connected via USB.
Now, I noticed that when iTunes is running ASIO4ALL would indicate that my USB Audio Codec (MicoDAC) was "beyond logic", but it would indicate it as being available when iTunes was not on. Secondly, ASIO output works fine when just running foobar2000 and not via the foobar pass-through. I do not know the exact mechanism behind how it actually works, but I supposed that iTunes was using the same channels that foobar2000 was trying to use for ASIO at the same time for output (since the MicroDAC only has 2 channels). Therefore, I went into the "Sounds and Audio Devices" settings under control panel and set my default audio output device as the SoundMAX (onboard) card. This makes iTunes output music using the Soundmax card which I don't care about. With foobar passthrough enabled, I set the foobar2000 output back to ASIO4ALL through my USB Audio Codec (MicroDAC) and voila! Music is playing through the MicroStack and I don't hear anything through the onboard sound.
From the way that the music sounds after having done this is noticeably better than through DirectSound, but just to make sure that I was bypassing the kmixer, I tried fiddling with the volume tabs in windows and they had no effect. However, the iTunes volume tab seems to be able to change the volume (although it was able to even when running DirectSound output as well).
I hope this helps.
Fan