Delphi Error – E2139 Illegal message method index

Delphi Compiler Error

E2139 Illegal message method index

Reason for the Error & Solution

You have specified value for your message index which <= 0.

program Produce;

  type
    Base = class
      procedure Dynamo(VAR x : Integer); message -151;
    end;

  procedure Base.Dynamo(VAR x : Integer);
  begin
  end;

begin
end.

The specification of -151 as the message index is illegal in the above example.

program Solve;

  type
    Base = class
      procedure Dynamo(VAR x : Integer); message 151;
    end;

  procedure Base.Dynamo(VAR x : Integer);
  begin
  end;

begin
end.

Always make sure that your message index values are >= 1.