to facilitate localisation i suggest the following codechange:
procedure TTaskItem.GetTasksLists(AList1: TStringlist; AList2: TStringlist;var Actions: array of integer);
var
iacoll: IActionCollection;
c: Integer;
I: Integer;
begin
with FInterface as IRegisteredTask do
begin
iacoll := get_Definition.Actions;
c := iacoll.Count;
for I := 1 to c do
begin
Actions[I-1] := iacoll.type_;
case iacoll.type_ of
TASK_ACTION_EXEC:
begin
AList2.Add(SStartProgram);
AList1.Add((iacoll as IExecAction).Path);
end;
TASK_ACTION_SEND_EMAIL:
begin
AList2.Add(sSendEmail);
AList1.Add((iacoll as IEMailAction).To_ + ' ' + (iacoll as
IEMailAction).Subject);
end;
TASK_ACTION_SHOW_MESSAGE:
begin
AList2.Add(sDisplayMessage);
AList1.Add((iacoll as IShowMessageAction).Title);
end;
end;
end;
end;
end;