Aha,
There is a way to do this, but it requires a two-tier approach to reading the data from the serial port.
Basically you need a while loop (running slowly if you wish) which reads a single byte at a time (make sure not to set the timeout to infinity!). If the character is NOT 'p', then quit the loop and send the acquired character to the next loop which then reads in byte for byte (and appends the characters to the original one from the first loop) until the character IS equal to 'p'.
This way your second loop should be able to give back the response from the instrument WITHOUT any 'p's. If, however you need to be able to receive two messages WITHOUT any 'p' between them, this method fails also and reading in lots of data and processing them later is your only choice really.....
hope this helps
Shane.
PS here's a (non-executable) example.
Using LV 6.1 and 8.2.1 on W2k (SP4) and WXP (SP2)