Obtener y/o cambiar el estado de Insert.

Utilizamos el valor de las teclas virtuales según su estado en el buffer, considerando que está activado cuando la función GetKeyBoardState devuelve 1. Si queremos cambiarla se lo indicamos en la estructura.

procedure TForm1.Button1Click(Sender: TObject);

var
  insercion : TKeyBoardState;
begin
  GetKeyBoardState(insercion);
  if insercion[VK_INSERT]= 1 then
  begin
    Showmessage('Cambio Insert de Insertar a Sobreescribir');
    insercion[VK_INSERT] := 0;
  end
  else
  begin
    insercion[VK_INSERT] := 1;
    Showmessage('Cambio Insert de Sobreescribir a Insertar');
  end;
  SetKeyBoardState(insercion);
end;