Тема: SetXData и Delphi for .NET
Друзья помогите решить проблемму...
Такой вопрос поднимался... и ответ на него выглядел вот так:
> sergey
Решение проблемы найдено (правда немной). Кому понадобится пользуйтесь.
function AcPoint(x, y, z: double) : OleVariant;
begin
Result := VarArrayCreate([0, 2], VT_R8);
Result[0] := x; Result[1] := y; Result[2] := z;
end;
procedure TForm1.Button1Click(Sender: TObject);
const
appid = 'Myappid ';
var
Acad, Objects, vaPoint, vaType, vaData: OleVariant;
i : integer;
begin
Acad := GetActiveOleObject('AutoCAD.Application');
Objects := Acad.ActiveDocument.SelectionSets.Add('');
Objects.SelectOnScreen;
Acad.ActiveDocument.RegisteredApplications.Add(appid);
vaType := VarArrayCreate([0, 4], varSmallInt);
vaData := VarArrayCreate([0, 4], varVariant);
vaPoint := AcPoint(4.0, 6.0, 0.0);
vaType[0] := 1001;
vaData[0] := appid;
vaType[1] := 1070;
vaData[1] := 99;
vaType[2] := 1040;
vaData[2] := 2.5;
vaType[3] := 1000;
vaData[3] := 'Hello';
vaType[4] := 1010; // A 3D world point
vaData[4] := vaPoint;
// Iterate through selection set and
// attach XData to each object
For i := 0 to Objects.Count — 1 do
Objects.Item(i).SetXData(vaType, vaData);
Objects.Delete;
end;
https://www.caduser.ru/forum/topic14949.html
под win32 все работает...
Но вот с Delphi .NET что то не получается.... ошибка вот тут
Objects.Item(i).SetXData(vaType, vaData);
Помогите пожалуйста народ...