最近公司的产品需要使用ActiveX文件上传。讨论了基本所有的技术,最后还是决定C++搞个ActiveX。。。但上传的回调费了半天劲,才搞定。代码如下:
JS调用方法:
清泛网注:
以上方法采用传入VARIANT型(实际是IDispatch指针)的js匿名函数,然后ATL中传入参数调用它。也可以事先传入浏览器窗口对象的IDispatch指针(js中this便是),然后通过它就可以在ATL中任意获取网页元素,进行Invoke调用,详细请参见《ATL COM开发入门(二)(ActiveX/COM组件回调JS)》。