ActiveX控件方法的参数属性

问题描述

ActiveX控件方法的参数属性

我想问下关于ActiveX控件方法的参数属性问题; 即 带有[out] [out,retval]的参数该如何实现与调用(js调用),请举例说明一下, 本人是菜鸟, 谢谢各位为解惑?

我先把我遇到的问题说明下:

idl文件中的接口如: LONG ActiveX_GetString([out, retval] BSTR* pRetString);

.cpp文件中的实现如下:

LONG ActiveX_GetString(BSTR* pRetString)
{
if (pRetString)
{
*pRetString = SysAllocString("helloworld");
}
return 0;
}

js函数调用如下:
function getstring()
{
var strObj = ActiveXObj.ActiveX_GetString();
}

问题描述:
ActiveXObj 是 已加载之后的控件对象,在调用控件方法是程序程序崩溃现象,崩在
控件方法中的 *pRetString = SysAllocString("helloworld"); 这句代码 提示是:
获取字符串字符时出错; 不知道什么原因;
网上搜了 一通也没找到相应的解决方法, 希望各位先生不吝赐教!!

解决方案

strObj作为函数参数传递。

解决方案二:

我试过不行 js中没有指针类型

时间: 2025-01-26 15:22:23

ActiveX控件方法的参数属性的相关文章

visual studio 2010-VS2010使用ATL开发的ActiveX控件没有显示固定属性页,用VC6的则可以

问题描述 VS2010使用ATL开发的ActiveX控件没有显示固定属性页,用VC6的则可以 不知道为何,用VC6的ATL向导生成的Activex控件在ActiveX Control Test Container工具中测试时,是可以看到固定属性页的,用VS2010生成的就看不到了,只能看到一个Extended,想请教一下各位,若能解惑,在下不胜感激~ 解决方案 参考:https://msdn.microsoft.com/en-us/library/3dc9xhf3.aspx

C# 创建activex控件,调用其他dll过程中,提示安全透明方法错误 ,急,急,急……

问题描述 我使用VS2010平台,C#语言开发一个控件LemonyVedioOcx,这个控件用于网页中的调用.该控件在开发过程中,需要调用另一个DLL叫ManagedLayer.dll,但是,在调用ManagedLayer.dll时,系统报错,报错内容如下:---------------------------用户控件测试容器---------------------------未能创建UserControl"LemonyVedioOcx.VedioOcx"错误信息是"安全透

使用回调接口实现ActiveX控件和它的容器程序的通讯

本文阅读基础:有一定的C++基础知识(了解继承.回调函数),对MFC的消息机制有一定了解,对COM的基础知识有一定了解,对ActiveX控件有一定了解. 一. 前言      ActiveX控件和它的容器程序如何通讯是一个值得研究的问题,因为这涉及到ActiveX控件和它的容器程序如何交互的问题.VC知识库的杨老师写了一系列博客介绍了一些通讯方式.链接如下: COM 组件设计与应用(十三)--事件和通知(VC6.0) COM 组件设计与应用(十四)--事件和通知(vc.net) COM 组件设计

ActiveX控件实现

本文源码与文档下载 本章目标: 完成本章学习后,您将能够: Ø         了解什么是ActiveX控件 Ø         掌握如何编写基于MFC的ActiveX控件 Ø         掌握如何测试ActiveX控件 Ø         掌握如何测试ActiveX控件 Ø         了解ActiveX控件如何注册 重点:ActiveX控件的实现.测试及注册. 本章将介绍ActiveX控件的应用与工作原理.我们可以把ActiveX控件看做是一个极小的服务器应用程序,它不能独立运行,必

ActiveX控件和它的容器

1.COM基础 2.ActiveX控件及实现 3.ActiveX控件容器及实现 4.总结 1.COM基础 COM是一种组件开发技术, 它实际上是一种在二进制层上兼容的软件开发方法的规范. COM技术是与具体的编程语言无关的技术, 只要是支持COM开发的开发工具都可以用来进行COM应用开发, 而它们在二进制上兼容的要求由各个开发工具来实现, 绝大部分是由编译器实现的. COM的基础概念有以下几部分组成,1)接口的定义及实现, 2)IUnknown接口, 3)GUID (COM中所涉及的概念还有很多

用ATL和MFC来创建ActiveX控件

摘要目前MFC和ATL代表了两种框架,分别面向不同类型的基于Windows的开发.MFC代表了创建独立的Windows应用的一种简单.一致的方法:ATL提供了一种框架来实现创建COM客户机和服务器所必须的样板文件代码.这两种框架在它们对于开发ActiveX的用途上会合了.我们将看看这两种框架是如何适用于创建ActiveX控件的--突出其优缺点,亲自经历创建一个控件的过程--以便你能够决定何时使用一种框架,何时使用另一种. 如果你希望用C++来写ActiveX控件,有两个流行的框架,一个是Micr

孙鑫VC学习笔记:ActiveX 控件 .

孙鑫VC学习笔记:ActiveX 控件 作者:华仔 | 录入时间:2007-12-26 | 点击:313 次    打印此文章 | 字体:大 中 小 基本概念: 容器和服务器程序       容器应用程序时可以嵌入或链接对象的应用程序.Word 就是容器应用程序.服务器应用程序是创建对象并且当对象被双击时,可以被启动的应用程序.Excel 就是服务器应用程序.ActiveX 控件不能独立运行,它必须被嵌入容器应用程序中,和容器应用程序一起运行. -------------------------

给ActiveX控件赋值

问题描述 自己做了一个ActiveX控件,有3个属性(p1,p2,p3)和一个方法(fun()),在ActiveXControlTestContainer中测试正常,在ASPX中如何赋值,我按如下代码做,却找不到控件的属性,各位老大帮忙!<htmlxmlns="http://www.w3.org/1999/xhtml"><headrunat="server"><title>无标题页</title><scriptl

activex控件 信息交互

问题描述 html调用activex控件怎么传递参数:我用C#建了一个windows窗体控件库工程,做了一简单的图片浏览器(图片地址固定的),生成的.dll文件放在另一个web工程中,页面调用方法<objectid="hellowsorld"name="hellowsorld"classid="clsid:02D324C9-F018-42D4-9AF2-22D6B934B3B5"width="1000"height=&q