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

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


...全文
334 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
test2002 2013-03-24
  • 打赏
  • 举报
回复
VB6中使用多线程,必须的ActiveX,其他的不安全。 VB AddressOf只能传给API,传给不了VB6函数。 确实要传给VB6函数,可以VC写一个函数指针的DLL,vb6的函数才能用
linlinlinxi007 2013-03-20
  • 打赏
  • 举报
回复
myjian大虾 如果一定要在另外一个线程中用,该怎么用呢?(DLL是用VC编写)
东方之珠 2013-03-20
  • 打赏
  • 举报
回复
AddressOf仅限于在标准模块中使用。如果DLL是自己编写的,DLL中可以考虑加入标准模块,这样就在同一线程中。
嗷嗷叫的老马 2013-03-20
  • 打赏
  • 举报
回复
另一线程中很麻烦,你试试尽量减少回调函数中所做的事,而且一定一定不要操作控件,对象,以及一切简单类型以外的东西. 如果有参数要显示到界面或再投递给某个过程去处理,那就使用全局变量,存储好数据之后再设定一个标志变量为TRUE,回调函数就返回. 而VB里面,用一个定时器定期检查那个标志变量,一旦发现为TRUE后就读全局变量中的数值去做爱做的事,然后就完成回调过程了. 试试吧....以前我搞另一个线程回调是头都大了.
嗷嗷叫的老马 2013-03-19
  • 打赏
  • 举报
回复
DLL中调用这个函数时不可以是另一个线程,必须是同一线程.

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧