aicr317 发表于 2008-10-28 13:55:00

没人回复继续顶

aicr317 发表于 2008-10-28 15:27:00

在顶

aicr317 发表于 2008-10-28 17:53:00

<p>在顶</p><p></p>

jxlsp 发表于 2008-10-28 18:08:00

不要再顶了,这个问题现在还没解决,你要启动画面,可到ARX区去下王咣生的ARX,再换成自己的图片.

aicr317 发表于 2008-10-28 18:46:00

<p>我是想问你怎么作的VBMP.DLL,然后用</p><p>(defun c:test( / rndobj)<br/>&nbsp; (setq rndobj (vlax-create-object "SHOWBMP.VBMPAPP"))<br/>&nbsp; (vlax-invoke-method rndobj "VBMP" (vla-get-ActiveDocument (vlax-get-acad-object)))<br/>&nbsp; (princ)<br/>)</p><p>来调用的</p><p>我也按你的方法作了个123.DLL</p><p>输入TEST后返回ActiveX 服务器返回错误: 未知名称: vbmp</p>

aicr317 发表于 2008-10-28 18:50:00

<p>你的dll是这样的</p><p>showbmp;</p><p>Dispatch _vbmpApp;<br/>GUID={D70D494A-388F-4AE3-9040-D50806AD1403};<br/>&nbsp; function QueryInterface(riid:^GUID; out ppvObj:^^void);<br/>&nbsp; function AddRef: UI4;<br/>&nbsp; function Release: UI4;<br/>&nbsp; function GetTypeInfoCount(out pctinfo:^UINT);<br/>&nbsp; function GetTypeInfo(itinfo:UINT; lcid:UI4; out pptinfo:^^void);<br/>&nbsp; function GetIDsOfNames(riid:^GUID; rgszNames:^^I1; cNames:UINT; lcid:UI4; out rgdispid:^I4);<br/>&nbsp; function Invoke(dispidMember:I4; riid:^GUID; lcid:UI4; wFlags:UI2; pdispparams:^DISPPARAMS; out pvarResult:^variant; out pexcepinfo:^EXCEPINFO; out puArgErr:^UINT);<br/>&nbsp; function vbmp(AcadApp:IDispatch);</p><p>Class vbmpApp;<br/>GUID={BFF0745A-8B46-46C5-BBDA-227F7887F853};<br/>&nbsp; function QueryInterface(riid:^GUID; out ppvObj:^^void);<br/>&nbsp; function AddRef: UI4;<br/>&nbsp; function Release: UI4;<br/>&nbsp; function GetTypeInfoCount(out pctinfo:^UINT);<br/>&nbsp; function GetTypeInfo(itinfo:UINT; lcid:UI4; out pptinfo:^^void);<br/>&nbsp; function GetIDsOfNames(riid:^GUID; rgszNames:^^I1; cNames:UINT; lcid:UI4; out rgdispid:^I4);<br/>&nbsp; function Invoke(dispidMember:I4; riid:^GUID; lcid:UI4; wFlags:UI2; pdispparams:^DISPPARAMS; out pvarResult:^variant; out pexcepinfo:^EXCEPINFO; out puArgErr:^UINT);<br/>&nbsp; function vbmp(AcadApp:IDispatch);</p><p></p><p>我的是</p><p>showbmp;</p><p>Dispatch _vbmpapp;<br/>GUID={7AFB3CAE-6A7D-4280-9512-828FF5C8CC04};<br/>&nbsp; function QueryInterface(riid:^GUID; out ppvObj:^^void);<br/>&nbsp; function AddRef: UI4;<br/>&nbsp; function Release: UI4;<br/>&nbsp; function GetTypeInfoCount(out pctinfo:^UINT);<br/>&nbsp; function GetTypeInfo(itinfo:UINT; lcid:UI4; out pptinfo:^^void);<br/>&nbsp; function GetIDsOfNames(riid:^GUID; rgszNames:^^I1; cNames:UINT; lcid:UI4; out rgdispid:^I4);<br/>&nbsp; function Invoke(dispidMember:I4; riid:^GUID; lcid:UI4; wFlags:UI2; pdispparams:^DISPPARAMS; out pvarResult:^variant; out pexcepinfo:^EXCEPINFO; out puArgErr:^UINT);</p><p>Class vbmpapp;<br/>GUID={C19DC298-CE68-431E-9302-7494F065ACB7};<br/>&nbsp; function QueryInterface(riid:^GUID; out ppvObj:^^void);<br/>&nbsp; function AddRef: UI4;<br/>&nbsp; function Release: UI4;<br/>&nbsp; function GetTypeInfoCount(out pctinfo:^UINT);<br/>&nbsp; function GetTypeInfo(itinfo:UINT; lcid:UI4; out pptinfo:^^void);<br/>&nbsp; function GetIDsOfNames(riid:^GUID; rgszNames:^^I1; cNames:UINT; lcid:UI4; out rgdispid:^I4);<br/>&nbsp; function Invoke(dispidMember:I4; riid:^GUID; lcid:UI4; wFlags:UI2; pdispparams:^DISPPARAMS; out pvarResult:^variant; out pexcepinfo:^EXCEPINFO; out puArgErr:^UINT);<br/></p><p></p><p>区别:少了<font color="#ff0000">function vbmp(AcadApp:IDispatch);</font></p><p><font color="#ff0000"></font></p><p><font color="#ff0000">请问如何修改!!!</font></p><p><br/></p>

jxlsp 发表于 2008-10-28 18:51:00

因为你的123.DLL里的类没定义没TESE这个模块,这是VB的内容,我也不大懂.VB我只会EXE工程,我哪个例子也是别处下来的,可惜没成功,唉.

aicr317 发表于 2008-10-28 18:54:00

这个VBMP.DLL不是你作的啊,晕

aicr317 发表于 2008-10-28 20:21:00

<p>这句什么意思</p><p>vlax-invoke-method rndobj "vbmp" </p><p>还有DLL中的这句什么意思</p><p>function vbmp(AcadApp:IDispatch);</p>

aicr317 发表于 2008-10-29 11:50:00

<p>我看这个DLL里的图片应该是你做的吧,能说说怎么弄的吗!</p>
页: 1 [2]
查看完整版本: [求助]怎么让函数只在第一次打开CAD时运行