动态链接库回调主程序内部函数的问题
一个主程序动态加载了一个dll,现在我想让这个动态链接库能够使用主程序里面的某一个函数,想请教一下除了使用传递函数指针之外还有什么其他的方法吗?如果我想调用多个主程序中的函数用函数指针是不是比较麻烦?有没有什么简单的方法?谢谢!
[解决办法]
就是使用函数指针.
当然你可以弄个接口然后派生出来一个对象.调用之前现将这个接口的指针给dll
dll使用这个接口,就可以回调了
[解决办法]
函数指针是比较好的方法了拉
[解决办法]
老老实实用函数指针吧。这个已经很简单了。
[解决办法]
其实你也差不多明白怎么做了,应该多去try了,其他再问也就是这么一回事
[解决办法]
对于回调多个函数的情况,不需要传递多个函数指针,一个就可以了,这个被传递的函数可以包装你所需要的所有回调函数的功能,增加一个参数用于区别不同的功能。因为所有的函数都可以用一个函数来代替,只要你的参数足够就行了。当然这种可扩展性不强,有新的参数就不行了。
另一种方法是传递一个函数指针,而这个函数的作用就是返回你需要的其他函数指针(以一个id作为参数)。对于不同原型的函数,可以强制转换。
[解决办法]
NeuNeo()
接口不一定是COM相关的东西
只要有个带虚函数的基类就可以了,