NULL does not have to be 0x0000, NULL is just supposed to be an area where if you try to access it it will give you an error. I believe VC++ uses the 0xCDCD to help the OS know that it was a program that was being debugged that caused the error.
VB++ is, as the name indicates, a knock off of C++ so there should be a preprocessor equal to typedef or #define. Alternativley you could write up a header to define your error codes for you.