vb6如何修改LONG变量指针?activex.exe如何共享变量?

专注VB编程开发20年 2020-01-07 01:43:00
相关技术:如果有个共享变量a(100) as long,可以把数组的指针取出来,然后传到类中,再用 指针.value(0)这样读写,速度会慢一倍,还能接受。
不知道有什么办法修改变量的指针

【活跃】大唐 13:22:05
vb还没有案例

dim a as long ,dim b as long ,c as long,
在VB6里面,如何把B,C的地址改成A的,达到读写3个变量都是相同结果

类.***=33,操作这样的函数,过程,或者共享变量,都会慢个几倍

【新提醒】【VB6】在VB6里实现“指针类型”——像C语言的[]那样用()来读写内存中的数组! - 技术宅的结界 - Powered by Discuz!
https://www.0xaa55.com/forum.php?mod=viewthread&tid=10948
...全文
601 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 2 楼 vansoft 的回复:
activex.exe如何共享变量? 我的做法是把对象注册到系统中, 别的程序通过getobject来获取, 得到对象后,就可以读取对象中所有公开出来的属性。
这种方法速度慢了几十到几百倍,优点是操作方便
不懂别说哎 2021-04-19
  • 打赏
  • 举报
回复
没太理解你的共享变量的设计,如果是程序内公用的变量,可以写在模块里啊 vb6如何修改LONG变量指针?activex.exe如何共享变量? 首先我也是新手,然后说问题变量指针,在标准设计下VB是没有指针的,可能是因为VB在设计初决定放弃硬件的直接操作,改并为引用操作有关吧 再说说修改变量指针,比如现在有三个变量AX,BX,CX,值分别为1,2,3,指针为0X00000090,0X00000091,0X00000092,注意,这个时候无论你对地址操作还是对值操作都是”一次操作”,上面的三个显示方式只不过是开发程序反馈回来的可见信息,其实无论怎么操作,最后都会变成开发程序根据代码去访问该变量所在的位置,然后进行修改,所以我觉得不应该把C语言的一些概念拿到B语言里,所以最后结论,比如要求修改AX的值,使他等于2,那么请直接AX=2,因为无论你以这两种的那种,最后系统都会这样执行(AX物理地址是多少?将这个地址放的东西改成2了) 至于第二个问题我就没看懂了,共享变量是指在ATX.EXE里有一部分变量需要供给给其他程序共用的意思么?还是说? 另外看了你的例子,首先我觉得应该弄清楚时间到底去哪了,比如CLASS1.A(1)=1,CLASS1.A(2)=2,CLASS1.A(3)=3,运行后哪个是耗时的关键
  • 举报
回复
@不懂别说哎 多个ACTIVEX.EXE之间变量是不可相互仿问的,相当于多进程。我这个方法主要是用于activex exe里面的多线程,或者是把COM DLL里面的变量共享给主程序用。指针这东西用熟了,很好玩的。比如打开一个unicode格式文件,SPLIT一下,可能要花10秒,如果用了指针,0.5秒就完成了。可以加群学习:1032313876
不懂别说哎 2021-06-22
  • 举报
回复
@专注VB编程开发20年 赞成,指针操作速度的确又快又奇妙的东西,可惜我并不熟悉,可不可以帮我做个SET 的测试,就是定义一个a,然后set b=new a 看下B的内存指针会不会直接指向a
vansoft 2020-04-05
  • 打赏
  • 举报
回复
activex.exe如何共享变量? 我的做法是把对象注册到系统中, 别的程序通过getobject来获取, 得到对象后,就可以读取对象中所有公开出来的属性。
  • 举报
回复
@vansoft getobject这种方法,缺点就是速度非常慢,如果想要高速访问,肯定是指针或变量更快嘛。用指针呢,可以搞一个内存共享块,这种方法最快了。内存映射
  • 打赏
  • 举报
回复
总结:原来要2万秒的,用了指针法,只要1.44秒,速度提高了1万倍 10亿次赋值: 直接变量1.2秒 指针1.44秒 PutMem4用时1.87秒,比指针慢了一点 COPYMEMORY方法:13.8-15.5秒 COPYMEMORY(tlb)方法:9.7秒 CLASS1.A=33这样的方法要1-2万秒 本来ACTIVEX没有变量共享的方法,用了另外一种方法,速度比较慢,用了指针法,速度提高了1万倍 【新成员】上善若水 14:36:00 @逍遥爱迪生 你太精益求精了,变量在栈上,指针在堆里,即便在C++里面,速度同样会慢点,VB中用数组访问已完全相当于C++中的指针了

1,486

社区成员

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

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