du brauchst einfach nur die WindowProc des Forms umleiten und auf WM_SetText prüfen:
Delphi-Quellcode:
private
fOldMethod: TWndMethod;
procedure FNewWndProc(var AMsg: TMessage);
[...]
procedure TForm1.FNewWndProc(var AMsg: TMessage);
begin
if (AMsg.Msg = WM_SETTEXT) then
begin
//In PChar(AMsg.LParam) steht die neue Caption
end;
fOldMethod(AMsg);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
fOldMethod := WindowProc;
WindowProc := FNewWndProc;
end;