Hola José.
Me quede pensando... como te puse arriba no te va a dar error, y tampoco va a modificar los valores enviados. Pero aparentemente lo que desea el autor del código del enlace es cambiar el valor de las variables. De ese modo no le va a funcionar (al menos no en Delphi 7).
Creo que lo correcto sería:
Código Delphi
[-]
procedure MultiInputBox(const Prompts: array of string; var Values: array of string);
var
i: Integer;
begin
for i := 0 to High(Prompts) do
Values[i] := InputBox(Application.Title, Prompts[i], Values[i]);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
vs: array of string;
begin
SetLength(vs,3);
vs[0]:= TimeToStr(Now); vs[1]:= IntToStr(90); vs[2]:= ''; MultiInputBox(['Time', 'Pressure', 'Name'], vs);
ShowMessage(vs[0] + #10#13 + vs[1] + #10#13 + vs[2]);
end;
Saludos.