Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > .NET > C#.NET > javascript从ActiveX控件中接收字符串(只适用于Unciode版本)
【标  题】:javascript从ActiveX控件中接收字符串(只适用于Unciode版本)
【关键字】:javascript,ActiveX,Unciode
【来  源】:http://blog.csdn.net/gzq400/archive/2007/02/14/1509911.aspx

javascript从ActiveX控件中接收字符串(只适用于Unciode版本)

Your Ad Here

VC代码片断:

short CVC::GetList(BSTR List)
{
 CString szList = _T("new string");
  wcscpy(List, szList);
 return 0;

BEGIN_DISPATCH_MAP(CVC, COleControl)

        DISP_FUNCTION(CVC, "GetList", GetList, VT_I2, VTS_BSTR) 

END_DISPATCH_MAP()

afx_msg short GetList(BSTR List);

[id(1)] short GetList(BSTR List);

JavaScript调用:

//开一个足够大的zifuchu空间

var aa = "11111111111111111111111111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111111111111111111111111111 
11111111111111111111111111111111111111111111111111111111111111111111111111111111111";

obj.GetList(aa);
alert( aa);

说明:这种方法可能会造成一些内存泄露,没有验证过。

网上也有这种调用方法:(我没有试过)   
  IDL文件中这样声明  
  [id(1),   helpstring("method   GetString")]   HRESULT   GetString([out,retval]BSTR*     pstr);  
  头文件中:  
  STDMETHOD(GetString)(/*[out,retval]*/BSTR*     pstr);  
  CPP中  
   
  STDMETHODIMP   CCJSString::GetString(BSTR   *pstr)  
  {  
  USES_CONVERSION;  
  SysReAllocString(pstr,   T2OLE("xxxx"));  
   
  return   S_OK;  
  }  
   
  JS中直接调用就可以了,不需要填写参数   var   xx=   xxx.GetString();

WMI问题答案集锦:【上一篇】
Reflector for net用法:【下一篇】
【相关文章】
  • JavaScript写的一个定时器
  • javascript 调用C#函数 事例
  • javascript之DOM技术(二)
  • [整理]JavaScript最流行的2种定义类的方式
  • [读prototype] 深入javascript的动态性和'this'的使用
  • JSP中文乱码显示及javascript与JSP变量传递问题
  • Liferay 的 Javascript 函数类——Calendar
  • Liferay 的 Javascript 函数类——ColorPicker
  • Liferay 的 Javascript 函数类——Editor
  • Liferay 的 Javascript 函数类——Portlet
  • 【随机文章】
  • 方兴未艾的APON技术
  • 对AIX 5.2操作系统性能调优方式的一些增强
  • CORBA在综合电信业务计费系统应用的研究
  • 周鸿祎主题演讲:Web2.0、搜索、社区[2]
  • Java中文处理学习笔记——Hello Unicode
  • 在Ubuntu中设置samba共享可读写文件夹
  • 上周五的SZSM一道面试题
  • “糖果音乐播放器”项目正式拉开融资序幕
  • 各个Linux发行版[live cd]列表
  • 怎样加快模拟器的启动速度?
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.