请教delphi控制AutoCAD问题

wmz0211 2007-04-12 06:53:30
我用VB写了一段代码,望能将其转换成delphi代码,如下:
Sub AddPath()
dim AcadApp as Object
dim CurPath As Variant
dim Path as string
Path="c:\wmz"
set AcadApp=CreatObject("AutoCAD.Application.16)
AcadApp.Visible=True
AcadApp.Application.Preferences.Files=Path & ";" & AcadApp.Application.Preferences.Files
AcadApp.Quit
end Sub
注:以上代码是将路径为"c:\wmz"的加到AutoCAD的支持路径的最前面中去
...全文
242 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
workwill 2007-04-13
  • 打赏
  • 举报
回复
不客气,大家共同学习,有问题大家一起学嘛
wmz0211 2007-04-13
  • 打赏
  • 举报
回复
谢谢!我已经用以下函数解决了.万分感谢你的帮助!
procedure TForm1.Button1Click(Sender: TObject);
var
reg: TRegistry;
ARoot : string;
begin
reg := TRegistry.Create;
reg.RootKey := HKEY_CURRENT_USER;
ARoot:='\Software\Autodesk\AutoCAD\R16.0\ACAD-201:804\Profiles\KYSYY\General';
reg.OpenKey(ARoot , true);
reg.WriteString('ACAD', 'c:\KYSYY');
reg.CloseKey;
reg.Free;

end;
workwill 2007-04-13
  • 打赏
  • 举报
回复
TBHRegister这个注册表操作控件写的也不错,你可以参考下源码,里面历遍键值的函数
workwill 2007-04-13
  • 打赏
  • 举报
回复
其实,也不要搜索关键字的,直接用Registry单元内的注册表操作函数来修改键值就可以了
wmz0211 2007-04-13
  • 打赏
  • 举报
回复
就是如何将这个键值下General项的ACAD字符的值进行修改
HKEY_USERS\S-1-5-21-2000478354-842925246-1202660629-500\Software\Autodesk\AutoCAD\R16.0\ACAD-201:804\Profiles\<<未命名配置>>\General
delphi里面有没有搜索注册表关键字的函数呢,请不吝赐教!
workwill 2007-04-12
  • 打赏
  • 举报
回复
并不是Preferences不支持的,ACADApp对象的Application对象里有没有Preferences这个对象,你看看AutoCAD的官方编程帮助文档,我也不是很清楚的,我也没有做过这方面的程序。
wmz0211 2007-04-12
  • 打赏
  • 举报
回复
我也曾这样写过,但通不过,就是VB的Preferences属性在这里不支持,不知为何,请指教!
workwill 2007-04-12
  • 打赏
  • 举报
回复
procedure TForm1.Button1Click(Sender: TObject);
var
ACADApp:OleVariant;
Path:string;
begin
Path:='c:\wmz';
ACADApp:=CreateOleObject('AutoCAD.Application');
ACADApp.Visible:=True;
ACADApp.Application.Preferences.Files:=Path+';'+ACADApp.Application.Preferences.Files;
AcadApp.Quit;
end;

830

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧