为什么在程序中不能打开autoCad的文件(50分)

T

ts7000

Unregistered / Unconfirmed
GUEST, unregistred user!
为什么在程序中不能打开autoCad的文件
程序如下:
procedure TForm1.Button1Click(Sender: TObject);
var
cad :eek:levariant;

begin
cad:=CreateoleObject('AutoCAD.Application');
cad.visible:=true;
cad.lacaddocument.OpenFile ('e:/wilhome.dwg');
end;
我该如何解决,,最好有原码,谢谢各位
 
http://community.borland.com/article/0,1410,10194,00.html
 
下面代码在我这里可以:
//uses ComObj;
procedure TForm1.Button1Click(Sender: TObject);
var
ACad: OleVariant;
begin
Acad := CreateOleObject('autocad.application');
Acad.Visible := true;
Acad.Documents.open('E:/Drawing1.dwg');
end;
 
我的是AUTOCAD2000 Win2000 Delphi6。
 
引用ARX库
 
Autodesk's AutoCAD ???
 
老兄,
若是14那就是对象的属性错了
as
doc:OleVariant;
doc:=acad.activedocument;
doc.open('完整路径');
 
你們的方法我都做過了,但有時提醒不支持此方法, 有是提醒RPC不響應指!,為甚麼[blue][/blue]
 
你用得到底是14,还是2000
2000
的库,做的较为完善,所以可以用例如acad.activedoument.open(' ')
如是十四不行,
 
//for autocad 2000
procedure TForm1.Button1Click(Sender: TObject);
var
obj_Acad :OleVariant;
begin
try
obj_Acad:=GetActiveOleObject('AutoCAD.Application.15');
except
obj_Acad:=CreateOleObject('AutoCAD.Application.15');
end;
obj_Acad.Visible:=True;
obj_ACAD.Documents.Open('g://AutoCad/data/dwg/4.dwg');
end;

//for r14
procedure TForm1.Button1Click(Sender: TObject);
var
obj_Acad :OleVariant;
begin
try
obj_Acad:=GetActiveOleObject('AutoCAD.Application.14');
except
obj_Acad:=CreateOleObject('AutoCAD.Application.14');
end;
obj_Acad.Visible:=True;
obj_ACAD.ActiveDocument.Open('g://AutoCad/data/dwg/4.dwg');
end;
 
谢谢大家
 
顶部