[alt text http://img440.imageshack.us/img440/6950/problemyd1.png](http://img440.imageshack.us/img440/6950/problemyd1.png)

(The curly lines with dots represent a network route.)

Having a process called "foo.exe", is there a way to forward everything it communicates over TCP/IP to a forwarding proxy located elsewhere? This forwarding should not reflect to other processes.

Another question: if there are multiple network adapters, is it possible to force a process to use one specific adapter.

Since in this example the targethost.com is known, I could just edit "system32\drivers\etc\hosts" to map targethost.com's IP to localhost, where on port 8765 would be the first forwarder waiting for an incoming connection and pass everything forward to proxy.foo.com. I was wondering if there's a more elegant way of doing this.

This is not for malware, I'm doing some network testing with my complex home network. Thank you for warning us.

Some free software for this would be perfect, alternatively a code idea (native or .net). Thank you very much.