Have you tried dynamic_cast or reinterpret_cast? One of them might work (don't remember which). static_cast is like a 'safe' cast, if it doesn't work by the language, it won't let you do it, but one of the other ones I mentioned will let you do all sorts of dangerous stuff (the other one's for casting an inheritted object). If you want a void** to a void*, don't you just have to dereference the pointer?
Ex
void SomeFunction(void*);
void **pMyPtr;
SomeFunction(*pMyPtr);
Or is there a problems because it's a void type?