qxzhu 发表于 2013-8-20 12:39:30

调用 acedCmd发生的错误如何解决

[DllImport("acad.exe", EntryPoint = "acedCmd",
          CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Cdecl)]
       extern static private int acedCmd(IntPtr resbuf);
错误如下:
运行时遇到了错误。此错误的地址为 0xe12e992d,在线程 0x263c 上。错误代码为 0xc0000005。此错误可能是 CLR 中的 bug,或者是用户代码的不安全部分或不可验证部分中的 bug。此 bug 的常见来源包括用户对 COM-interop 或 PInvoke 的封送处理错误,这些错误可能会损坏堆栈。

epwt 发表于 2013-8-23 10:34:35

[DllImport("acad.exe", EntryPoint = "acedCmd",
          CharSet = CharSet.Unicode, CallingConvention = CallingConvention.Cdecl)]
       extern static private int acedCmd(IntPtr resbuf);

你是要引用acedCmd的方法么?
但是你的DllImport引用的是acad.exe
这是一个应用程序,不是一个dll。把第一个参数改成你要引用的dll试试。

qxzhu 发表于 2013-8-25 16:10:50

epwt 发表于 2013-8-23 10:34 static/image/common/back.gif
你是要引用acedCmd的方法么?
但是你的DllImport引用的是acad.exe
这是一个应用程序,不是一个dll。把第 ...

就是要引用acedCmd方法。有些命令会引发错误,有些命令不会引发错误。直接在acad中运行也不会引发错误。只是在调试时才引发该错误。
页: [1]
查看完整版本: 调用 acedCmd发生的错误如何解决