sorry, it should be module A extern (Windows): uint P_Start(char * pParam); void P_Stop(); module B import A; class XXX { public: this() {} uint start(char *yy) { return P_Start(yy); } void start(char *yy) { P_Stop(); } } module C import B; XXX tester = new XXX();