windows 10 下调用activex失败,如何解决
本帖最后由 cjs 于 2015-8-13 14:48 编辑在升级windows 10 之前,win7 64x+cad2005 cad正常运行,自己编写的一个小程序也运行正常。升级之后出现了两个问题:
环境:win10 64x 专业版 +AutoCAD 2005
一、cad软件问题:
1、对cad2005必须勾选了“以管理员身份运行”才可以打开。
2、双击某dwg文件,会弹出“向程序发送命令时出错”,而且会新建一个acad进程打开dwg。
二、程序问题
VS2008 代码如下:
Dim cad As Autodesk.AutoCAD.Interop.AcadApplication
Private Sub activecad()
On Error Resume Next
cad = GetObject(, "AutoCAD.Application.16")
If Err.Number <> 0 Then
Err.Clear()
cad = CreateObject("AutoCAD.Application.16")
If Err.Number <> 0 Then
MsgBox(Err.Description + Chr(13) + "程序要求的CAD版本与最近" + Chr(13) + "运行的CAD版本可能不一致 。" + Chr(13) _
+ "请运行另一版本CAD试试。", vbOKOnly + vbExclamation, "Notice:")
cad = Nothing
Exit Sub
End If
End If
On Error GoTo 0
cad.Visible = True
cad.WindowState = AcWindowState.acMax
End Sub
运行时不管事先打开cad还是用代码CreateObject,都不能获取cad对象。
在不改变系统和cad版本的情况下,诸位看看有没有解决办法? 论坛有你更精彩,多谢楼主分享 都win10了,测试不了。。。 是权限问题吗?哪位大神对com调用的过程比较清楚,解说一下。 “向程序发送命令时出错”问题解决,到注册表修改:
"EnableLUA"=dword:00000000
即直接关闭用户帐户控制就不会出现上述问题了,代价是win10下的所有metro app都不能用了。能不能调用activex还没测试。
页:
[1]