找回密码
 加入
搜索
查看: 3265|回复: 4

[AU3基础] [已解决]ObjCreate的错误?还是ScriptControl的错误?

[复制链接]
发表于 2012-3-19 03:12:07 | 显示全部楼层 |阅读模式
本帖最后由 222222 于 2012-3-19 04:02 编辑

http://www.autoitx.com/forum.php?mod=viewthread&tid=27656
下载了附件,运行代码如下:
         Local $code
        $key='CHSM'
        $ujiap='5436413'
        $code = FileRead("md5.js")
        $nJS = ObjCreate("MSScriptControl.ScriptControl")
        $nJS.language = "JavaScript"
        $nJS.addcode($code)
        $nReg = $nJS.eval('hex_hmac_md5("'&$key&'",str_md5("'&$ujiap&'"))')
        MsgBox(0,0,$nReg)

控制台出现错误提示:
F:\au3\test6.au3 (6) : ==> ???????????("Object").:
$nJS.language = "JavaScript"
$nJS^ ERROR
->03:02:21 AutoIT3.exe 完成:[CODE]:1
+>03:02:22 ACNWrapper 完成..
>退出代码: 1        运行时间: 1.934 秒


出错后,采取了如下措施:
1、找到了其他调用这一语句的代码试运行。结果依然是这里出错。
2、重新到微软官方网站下载了Windows Script Control 并安装。结果错误依旧。
3、考虑到我是用的win7的64位旗舰版,所以将程序编译后用管理员身份运行。结果错误依旧。
4、把论坛所有javascript、js、ObjCreate、MSScriptControl、ScriptControl关键词的帖子看了,竟然发现好像就我一个人运行代码时出现这情况……

评分

参与人数 1金钱 +10 收起 理由
afan + 10 感谢主动将修改帖子分类为[已解决],请继续 ...

查看全部评分

 楼主| 发表于 2012-3-19 03:37:26 | 显示全部楼层
5、尝试注册控件,win7管理员权限运行regsvr32 msscript.ocx成功,但是错误依旧。编译后的程序用用不同权限运行后的错误提示相同,均为:

Error:变量类型必须为对象类型(“Object”)
 楼主| 发表于 2012-3-19 03:42:43 | 显示全部楼层
6、电脑WMI正常开启。没有经过优化什么的。
 楼主| 发表于 2012-3-19 04:02:13 | 显示全部楼层
问题解决了。

编译时原来用的是默认的64位。现在用32位编译后正常。
发表于 2016-4-11 12:03:48 | 显示全部楼层
楼主的一番研究也解决了我的问题
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-26 09:48 , Processed in 0.097757 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表