Mira, este ejemplo a mi me funciono a la perfeccion :
http://www.cplusplus.com/forum/windows/8555/
Muchas veces el problema esta en la DLL si no esta compilada de forma estandar no funciona. Si la DLL esta hecha en C/c++ debes porner esta instruccion antes de declarar la funcion :
extern "C" __declspec( dllexport )
Pero en visual basic ni idea. Porque no preguntas en el foro de Visual Basic...