Hi Chris,
This is probably going to sound more complicated than it is but anyway....

You need to make sure that both sides of the line talks the same language so to speak. It's pretty clear that what you are typing into the text box in your VB program is the binary representation of the pins on the PIC but HOW is the VB program sending that information to the PIC?

For example, it could (and in this case it's probably the easiest to handle) send it as a single byte with the value of 240 (11110000 in binary) or it could send it as 8 individual bytes, each one either 0 or 1 indicating the desired state of each pin or it could send it as a text string of 8 bytes, each byte containging the ASCII code for '0' (48)or '1' (49). Whatever it does you need to match the receiving end to what the other end is sending.

/Henrik.