Invoquer Galeon depuis Kylix

L'objectif: lancer un browser similaire à Mozilla depuis un programme Kylix.

Le problème: par défaut, lorsqu'un programme Kylix 3 lance Galeon, ce programme n'a pas de difficulté si Gnome est correctement installé. Mais lorsque le programme est lancé depuis l'IDE Kylix, Galeon ne se charge pas.

La raison: lors de l'exécution depuis l'IDE, Kylix définit certaines variables d'environnement, et en particulier pointe MOZILLA_FIVE_HOME vers le répertoire personnel borpreview. Cette définition sert à l'IDE à offrir la prévisualisation des fichiers HTML par l'encapsulation de Mozilla. Mais elle entre en conflit avec le script /usr/bin/galeon qui cherche à identifier l'emplacement de la librairie partagée Mozilla.

La solution:: supprimer MOZILLA_FIVE_HOME, en ajoutant putenv ('MOZILLA_FIVE_HOME') ; avant l'invocation de Galeon.

implementation

  {$R *.xfm}

  uses LibC ;

  var pid : Integer ;

procedure TForm1.Button1Click (Sender : TObject) ;

  const
    csURL = ' title="Riff News">http://www.riff.org/' ;

  var res : Integer ;

  begin
  pid := fork ;
  putenv ('MOZILLA_FIVE_HOME') ;
  if pid = 0 then 
    begin
    res := execlp ('galeon', 'galeon', 
      '--sm-disable', '--disable-crash-dialog',
      '--geometry=' 
              + IntToStr (Memo1.Width) 
        + 'x' + IntToStr (Memo1.Height)
        + '+' + IntToStr (Form1.Left + Memo1.Left) 
        + '+' + IntToStr (Form1.Top + Memo1.Top),
      '-x', csURL, nil) ;
    end
  else
    if pid < 0 then
      begin
      Memo1.Lines.Add ('Erreur de fork, errno = ' 
        + IntToStr (errno)) ;
      Application.Terminate
      end
    else
      // Suite de l'application principale.
      // Le signal SIGCHLD permet d'être informé de la fermeture du browser
  end  ;

Get started with Drupal 7

Marques les plus citées

toutes les marques

acheter sur OSInet

Accès direct

Recherche

Le mot du jour

socket

prise

in | |

Dans le contexte des ordinateurs, support recevant un composant au format PGA ou LGA. Généralement de type femelle, les sockets sont parfois de type mâle, comme dans le format LGA. Plus gén… 

Syndiquer le contenu

Dernières définitions

Chrome - Chromium - digitaalisen kuilun - ghetto sharding - HTTP - MongoDB - PNaCl - QUIC - Skia - SPDY

Un mot au hasard

Aloha : Bonjour (en tahitien)  

Alertes CERTA