it is possible. you have to hook some function calls, though, and you definately need some good coding skills. have a look here:

http://www.farb-rausch.de/~fg/kkapture/