No entiendo tu empeño, es como si quisieras pasarle un texto a una imagen, si ya lo dice el mensaje, son incompatibles
¿Que te cuesta meter el procedure dentro de una clase? Por ejemplo:
Código Delphi
[-]
unit Unit2;
interface
uses Windows, Sysutils, Classes, Forms;
type
TDummy = class
public
procedure AppMessage(var Msg: TMsg; var Handled: Boolean);
end;
implementation
procedure TDummy.AppMessage(var Msg: TMsg; var Handled: Boolean);
begin
end;
var
Dummy: TDummy;
initialization
Dummy:= TDummy.Create;
Application.OnMessage:= Dummy.AppMessage;
finalization
Application.OnMessage:= nil;
Dummy.Free;
end.