我不明白你为什么要screen参数进去,传Tapplication不就行了。procedure ShowMDIChild(app: TApplication); stdcall;
var
  p: ^LongInt;
  i: integer;
begin
  p := @(Application.MainForm);
  p^ := LongInt(app.MainForm);
  
  for i := 0 to app.MainForm.MDIChildCount - 1 do
    if (app.MainForm.MDIChildren[i] is Tform1) then
    begin
      app.MainForm.MDIChildren[i].BringToFront;
     app.MainForm.MDIChildren[i].SetFocus;
      Exit;
    end;  with TForm1.Create(application) do
  begin
    FormStyle := fsMDIChild;
    Show;
  end;
end;