代码如下:
自定义类型
typeder color_
{
double r;
double g;
double b;
double a;
}color;
COM中一个方法
HRESULT SetColor(color Clr);
在vb中:
Dim c As color_
c.r = 0
c.g =0
c.b=0
c.a = 0
XXXX.SetColor(c)
编译的时候提示说自定义类型不能传值
我改成了
COM中一个方法
HRESULT SetColor(color* Clr);
请问在vb中怎么传这个值呢?我在vb.net下试过了都没有问题,我对vb不太懂
特来请教vb高手!!急!解决马上给分,在线等....
自定义类型
typeder color_
{
double r;
double g;
double b;
double a;
}color;
COM中一个方法
HRESULT SetColor(color Clr);
在vb中:
Dim c As color_
c.r = 0
c.g =0
c.b=0
c.a = 0
XXXX.SetColor(c)
编译的时候提示说自定义类型不能传值
我改成了
COM中一个方法
HRESULT SetColor(color* Clr);
请问在vb中怎么传这个值呢?我在vb.net下试过了都没有问题,我对vb不太懂
特来请教vb高手!!急!解决马上给分,在线等....
解决方案 »
- 问vb控件组前后显示顺序
- 用WebBrowser如何自动填充网页文本框?
- 使用vb6如何把Access的数据导入到Excel中
- TopMapGIS平台的功能,看你平时都用到哪些?
- 用VB如何实现画一幅图,其中有曲线、园、椭圆、黑色方块,该图还能在autocad中打开和编辑线。
- 升星快樂,散分亦快樂。
- 100分跪求:PCX单色图完全说明文件及vb保存PCX单色图代码
- 请教用vb读出*INI文件中内容,怎么写代码,如获取文件中的某一特定字符串值
- 要加入条形码,应该用什么控件?可以到哪里下载?
- 怎样最小化当前所有窗口
- vb里两个exe程序,怎么实现同时共享一块内存!!!
- 能用代码实现保存jpg格式的图片吗?
HRESULT SetColor(VARIANT Clr,int size);
SetColor(VARIANT Clr,size)
{
color *data;
hr = SafeArrayAccessData(Clr.parray, reinterpret_cast<PVOID*>(&data));
.....
hr = SafeArrayUnaccessData(Clr.parray);
}
vb端
Dim clr(size) As color_
....
Dim obj As Object
obj = clr
XXXX.SetColor(obj,size)
就好了
传地址Vb应该不会拒绝的。vb的api大部分也是传地址。
Dim clr(1) As color_
....
XXXX.SetColor(clr)
编译提示参数是引用类型的,那位大哥知道怎么调用这个方法呢?谢谢!
MFC Library Reference
TN065: Dual-Interface Support for OLE Automation ServersVisual C++ MFC Samples Alphabetical List of MFC SamplesAUTOCLIK Illustrates Automation features. Includes AUTODRIV, a simple Automation client application that drives the AUTOCLIK sample application.
ACDUAL Demonstrates how to add dual interface support to an MFC-based Automation server.
传数组的第一个元素,如果是ByRef,Vb会把这个元素的地址传入
....
XXXX.SetColor(clr(1))
还是有错!那位大哥帮忙呢?急呀!