当前位置:编程学习 > VB >>

VB 6.0 AddressOf 能不能这么用???!!!

VB 6.0 AddressOf取函数的地址。是不是只能传给windows的API用呢???
我目前是将取得的函数地址,传给DLL中使用
但DLL调用时总是报错,VB程序异常退出:
“XXXX指向YYY内存,该内存不可读”


VB6.0 AddressOf --------------------编程问答-------------------- DLL中调用这个函数时不可以是另一个线程,必须是同一线程. --------------------编程问答-------------------- AddressOf仅限于在标准模块中使用。如果DLL是自己编写的,DLL中可以考虑加入标准模块,这样就在同一线程中。 --------------------编程问答-------------------- myjian大虾
如果一定要在另外一个线程中用,该怎么用呢?(DLL是用VC编写) --------------------编程问答-------------------- 另一线程中很麻烦,你试试尽量减少回调函数中所做的事,而且一定一定不要操作控件,对象,以及一切简单类型以外的东西.

如果有参数要显示到界面或再投递给某个过程去处理,那就使用全局变量,存储好数据之后再设定一个标志变量为TRUE,回调函数就返回.

而VB里面,用一个定时器定期检查那个标志变量,一旦发现为TRUE后就读全局变量中的数值去做爱做的事,然后就完成回调过程了.

试试吧....以前我搞另一个线程回调是头都大了. --------------------编程问答-------------------- VB6中使用多线程,必须的ActiveX,其他的不安全。

VB AddressOf只能传给API,传给不了VB6函数。

确实要传给VB6函数,可以VC写一个函数指针的DLL,vb6的函数才能用
补充:VB ,  基础类
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,