chlh_jd
发表于 2011-4-24 22:03:24
本帖最后由 chlh_jd 于 2011-4-24 22:08 编辑
右键点击文件,点击“注册组件”提示“注册失败,可能缺少必要的支持库”,其他.dll文件可以成功注册;
我没有使用金山毒霸,只使用360安全卫士,关闭杀毒和防火墙后,仍然提示注册失败;
从原网站下载下来的dynwrapx.dll文件一样用不了
highflybird
发表于 2011-4-24 22:13:05
如果注册失败的话,那应该创建不了。你再看看我前面的回帖。
chlh_jd
发表于 2011-4-24 22:14:10
测试了,可以出现hello world消息框
chlh_jd
发表于 2011-4-24 22:15:37
本帖最后由 chlh_jd 于 2011-4-24 22:16 编辑
奇怪,明经帖子显示滞后,我还以为没回复成功,又发重复了
highflybird
发表于 2011-4-24 22:15:55
那就奇怪了,为什么在CAD下运行不了呢?
chlh_jd
发表于 2011-4-24 22:21:24
使用ACAD的VBA编辑器运行也可以
highflybird
发表于 2011-4-24 22:26:00
本帖最后由 highflybird 于 2011-4-24 22:30 编辑
用我以前的那个vlx可以吗?先反注册,regsvr32 /u dynwrapx.dll
再注册regsvr32 dynwrapx.dll
chlh_jd
发表于 2011-4-24 22:32:49
本帖最后由 chlh_jd 于 2011-4-24 22:36 编辑
是个 c:ysx-use-api吗?我试下
可以的,以前c:ysx-use-api可以正常运行
先反注册再注册还是不行
highflybird
发表于 2011-4-24 22:42:38
;;; Install DynamicWrapper
(defun C:InstallDynamicWrapperX (/ wrap name wsh oldVar)
(if (null (setq wrap (vlax-create-object "DynamicWrapperX")))
(progn
;;(setq name (vl-filename-mktemp "DynWrapX.dll"))
;;(WriteBinary name (vl-get-resource "DynWrapX"))
(setq wsh (vlax-Create-Object "wscript.shell"))
(vlax-invoke wsh 'Run (strcat "RegSvr32.exe /s " name))
(setq oldVar (getvar "CMDECHO"))
(setvar "CMDECHO" 0)
(command "DELAY" "1000")
(setvar "CMDECHO" oldVar)
(vlax-release-object wsh)
(setq wrap (vlax-create-object "DynamicWrapperX"))
(if wrap
(progn
(princ "\nRegistered DynamicWrapperX successfully!\n")
wrap
)
(alert "\nFailed to register DynamicWrapperX!\n")
)
)
(progn
(princ "\nDynamicWrapperX has been registered!")
wrap
)
)
)
;; Install it...
(if (setq wrap (C:InstallDynamicWrapperX))
(progn
(vlax-release-object wrap)
(setq wrap nil)
)
(princ)
)
chlh_jd
发表于 2011-4-24 22:57:07
(setq wrap (vlax-create-object "DynamicWrapperX")这个语句返回VLA对象值为nil时
(null wrap) = nil
上面函数总是提示加载成功,实际没有加载成功
页:
1
2
[3]
4
5
6
7
8
9
10
11
12