Basically punkbuster detects hack programs in your PC when you run the protected game, if something is detected you get a warning message and a ban.
It has many ways to stop punkbuster from banning, one is by ending the process (PnKBstr_A & PnKBstr_B) from Task Manager. (A way from BFBC2)
or like many hacks which uses "Winject" (Injector) to inject the .dll hack file into the process, Winject is also listed as a hack program by Punkbuster.
In recent version of Winject, it is most likely undetectable by punkbuster, so please make sure you read carefully from the comments (of various users) from many users to confirm yourself from being detected or banned.