求教一个关于VS2005使用VC++创建一个ALT Project项目,但Web页面调用不成功这个项目的某个方法....

大家好!
我是一个VC++的陌生者,但最近公司开发的项目中,有一个要求要用到OCX控件,即某个WEB页面要调整OCX的某个方法来启动系统的某个进程。

今天我找了一些资料并动手做了一下,有的做成功了,但有的失败,即WEB没有办法调用,我不青楚那里错了。如果边位看到并有时间,麻烦帮我看看。

首先我参照 http://www.codeproject.com/KB/atl/com_atl.aspx,我下载了这个页面的源码,并作了一些修正,使Test_ALT控制台程序可以跑起来,
我修正后的源码: http://files.cnblogs.com/Akuan/TestActivex.rar

从codeproject下载回来的源码,由于文件夹的目录改变了,因而我对Test_ATL.cpp文件的开始部分的一些代码进行了改变。这样控制台程序就可以正常运行。

然后我在原来的Simple_ATL项目中添加了一个Test.htm页面,代码如下:
<HTML>
<HEAD>
<TITLE>New Page</TITLE>
<script language="javascript">
    function doTest()
    {
        var sum;
       
        try
        {
            sum = SimpleATL.AddNumbers(3,4);
            alert(sum);
        }
        catch(e)
        {
            alert(e.Message);
        }
        finally
        {
            sum=null;
        }
    }
</script>
</HEAD>
<BODY>
<OBJECT ID="SimpleATL" CLASSID="CLSID:970599E0-2673-11D3-A8A8-00105AA943DF">
</OBJECT>
<input type="button" value="测试加法" id="btnOK" οnclick="doTest();" />
</BODY>
</HTML>

其中CLASSID的值来自于Simple_ATL项目的Simple_ATL.rdl文件中

library SIMPLE_ATLLib
{
 importlib("stdole32.tlb");
 importlib("stdole2.tlb");

 [
  uuid(970599E0-2673-11D3-A8A8-00105AA943DF),
  helpstring("First_ATL Class")
 ]
 coclass First_ATL
 {
  [default] interface IFirst_ATL;
 };
};

但我打开Test.htm页面时,总是调用不成功AddNumbers方法。

如果那位对这方面比较熟悉的,麻烦帮我解决一下,谢谢。QQ:156834293.

转载于:https://www.cnblogs.com/Akuan/archive/2009/06/29/1513482.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值