Trying to avoid Windows at nearly any cost for the last, oh, 10 years now, all I can ask is whether you're compiling in C or C++ mode, and, if C++, try in C mode, or just simply put 'extern "C"' in front of your function name:
extern "C" int PerlTest(int a)
{
return a+1;
}
Just a WAG, but I offer it in the off-chance that this is the problem. Last I recall, MSVC defaulted to C++ mode for compiling C code, but I could easily be misremembering, and they could have easily changed the default, or both. :-)