This isn't natively possible with only one audio card, unless you use some sort of audio routing software - but even then you'd basically be taking, say, the music and routing it through the "left channel" (which the routing software could theoretically output to both of your speakers) and the voices through the "right channel" (which the routing software could output to both of your headphone speakers). Note that this assumes a stereo (laptop) configuration.
If you have a 5.1 setup you can use the routing software to route one source to the front channels and another source to the rear channels, thus maintaining two stereo outputs instead of two dual-mono outputs.
I've had some luck in the past using kX Project for SoundBlaster cards, but that was years ago and I'm not sure what their support for your specific hardware is. At any rate, a google search on "windows audio routing" should turn up some results.