Добрый день! Помогите, пожалуйста. Написал скрипт который меняет местами элементы на плате. Но после вызова скрипта происходит сбой Altium`a. В чем может быть дело? Скрипты раньше не писал.
Код
Procedure ChangeComponent;
Var
Board : IPCB_Board;
Comp1, Comp2 : IPCB_Component;
X, Y : TCoord;
Begin
Board := PCBServer.GetCurrentPCBBoard;
If Board = Nil Then Exit;
Comp1 := Board.GetObjectAtCursor(MkSet(eComponentObject),
AllLayers, 'Choose Component1');
Comp2 := Board.GetObjectAtCursor(MkSet(eComponentObject),
AllLayers, 'Choose Component2');
//PCBServer.PreProcess;
PCBServer.SendMessageToRobots(Comp1.I_ObjectAddress, c_Broadcast,
PCBM_BeginModify, c_NoEventData);
PCBServer.SendMessageToRobots(Comp2.I_ObjectAddress, c_Broadcast,
PCBM_BeginModify, c_NoEventData);
X := Comp1.x;
Y := Comp1.y;
Comp1.x := Comp2.x;
Comp1.y := Comp2.y;
Comp2.x := X;
Comp2.y := Y;
PCBServer.SendMessageToRobots(Comp1.I_ObjectAddress, c_Broadcast,
PCBM_EndModify, c_NoEventData);
PCBServer.SendMessageToRobots(Comp2.I_ObjectAddress, c_Broadcast,
PCBM_EndModify, c_NoEventData);
//PCBServer.PostProcess;
End;