日期:2014-05-16  浏览次数:20940 次

请问windows2008R2 64位系统上怎么使用capicom.dll组件?
Function Get32BitMD5(strInput)
    For i = 1 to Len(strInput)
        tmp = Mid(strInput, i, 1)
        restr = restr & chrB(ascB(tmp))
    Next
    strInput = restr
Set hash = CreateObject("CAPICOM.HashedData")
hash.Algorithm = 3
hash.hash strInput
strMD5 = LCase(hash.value)
Get32BitMD5 = strMD5
End Function

我用这个函数,在32位系统下能够正常运行,在windows2008R2 64位系统下就报:
ActiveX部件不能创建对象: CAPICOM.HAshedData

按网上说的方法复制到syswow64目录下再注册组件还是不行,请问有什么办法可以在64位系统上使用这个组件呢

------解决方案--------------------
1 用 syswow64下的 regsvr32.exe注册dll
2 IIS中,网站对应的 应用程序池 的 高级设置中, 启用32位程序 选项设置为 True
------解决方案--------------------
引用:
1 用 syswow64下的 regsvr32.exe注册dll
2 IIS中,网站对应的 应用程序池 的 高级设置中, 启用32位程序 选项设置为 True



+1

这是因为 注册的时候是在system32下注册的 必须到syswow64 下 注册才行
------解决方案--------------------
引用:
1 用 syswow64下的 regsvr32.exe注册dll
2 IIS中,网站对应的 应用程序池 的 高级设置中, 启用32位程序 选项设置为 True

+1