我在vc6下编写了一个实现位图的淡入淡出的AxtiveX控件,是从CStatic类派生的,
其中有一个函数,为:
BOOL LoadAlphaBitmap(……);
通过它来实现位图淡入淡出的功能,
请问我在应用程序的对话框中加入此控件后,
怎样才能调用此函数?
其中有一个函数,为:
BOOL LoadAlphaBitmap(……);
通过它来实现位图淡入淡出的功能,
请问我在应用程序的对话框中加入此控件后,
怎样才能调用此函数?
解决方案 »
- 在已破坏了程序内部状态的xxx.exe中发生了缓冲区溢出。。。
- 使用regsvr32.exe注册KoDak 图像编辑控件连连失败的原因是什么?
- win7下安装完程序不显示完整进程名,而是ANALYS~1.EXE这样的缩写名称
- 请问DLL中,某一函数使用了NONAME,如何通过序号使用该数?
- CString 怎样转换成 ANSI??
- ADO:编译器不认识 _RecordsetPtr ,ConnectionPtr
- 在做ACTIVEX控件时 如何转换类型阿?
- 如何打开标准控件?
- 碰见领导控制欲太强 咋办
- 谁能告诉我哪里能找到 libbzip2 压缩算法的源代码?
- 关于以下3本书的定位
- 关于atof(在线等待)
我将此控件加入工程后,VC自动生成一个相应的类,其中并无可调用此函数的接口.
不过还是非常感谢你不吝赐教。结贴时一定给分!
dim foo as object
set foo=createobject("your activex name")
foo.loadbitmap xx xx ...
如果是vc的话,麻烦点:
CoInitialize(NULL);
// TODO:在此添加额外的初始化代码
CLSID clsID;
CLSIDFromString(A2W("{E2F1F220-89BC-4E36-9E19-60383691E69E}"),&clsID);
DISPID dispid=null;
::CoCreateInstance(clsid,null,CLSCTX_INPROC_SERVER,IID_IDISPATCH,(void**)&pIDispatch);
....
CoFreeLibrary(hin);
CoInitialize(NULL);
// TODO:在此添加额外的初始化代码
CLSID clsID;
CLSIDFromString(A2W("{E2F1F220-89BC-4E36-9E19-60383691E69E}"),&clsID);
DISPID dispid=null;
::CoCreateInstance(clsid,null,CLSCTX_INPROC_SERVER,IID_IDISPATCH,(void**)&pIDispatch);
DISPID dispid;
OLECHAR* name=L"LoadAlphaBitmap" fx为一个函数名
pIDispatch->GetIDsOfNames(IID_NULL,&name,1,GetUserDefaultLCID(),&dispid);
DISPPARAMS dispparamsNoArgs={null,null,0,0};
pIDispatch->Invoke(dispid,IID_NULL,GetUserDefaultLCID(),DISPATCH_METHOD,&dipparamsNoArgs,NULL,NULL,NULL);....
CoFreeLibrary(hin);
你创建一个实例,然后调用create方法,再以后就可以正常使用了