求助 说不清的DLL...
也许是我没有完全理解dll的机制
我想实现如下功能
调用一个DLL函数
void __export funtion(TPanel* p)
{
TForm2 *pFORM = new TForm2 (Application);
p-> Parent = pFORM-> Ptn1; //error ptn1是TForm2 上的一个PANEL
}
为什么指定 这个panel的parent 会出现内存错误?
说什么EConvertErro????
dll中有一个函数 会 new一个窗体出来 AForm
[解决办法]
也许是Application的问题。宿主程序里面的application和dll中application可能是两个完全不同的实例。另外你这种做法要求宿主程序和dll必须采用完全相同的环境来build,这是很危险的做法,不推荐这样。如果你的宿主程序和dll采用不同的bcb版本build,甚至是updatepack不同,都容易出问题的。试着将hwnd作为参数来传递可以一定程度上解决这个问题。