IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Lazarus Pascal Discussion :

Récupérer le login et les variables d'environnement [Lazarus]


Sujet :

Lazarus Pascal

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 7
    Points : 7
    Points
    7
    Par défaut Récupérer le login et les variables d'environnement
    Bonjour , je reviens à Lazarus après quelques temps ...

    Je voudrais faire un programme assez simple (linux /windows) permettant de configurer automatiquement des stations de travail intégrée dans un domaine (samba + ldap).

    Donc en premier lieu, je voudrais savoir comment on peut récupérer le login de l'utilisateur connecté sur la station et pouvoir récupérer éventuellement quelques variables utiles ..

    Merci
    Yves Dhenain

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Pour le login, j'utilise cela sous Win et Nux (Pas testé sous Mac)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function GetUserLogin():String;
    var userNameBuffer : array[0..255] of char;
         sizeBuffer : DWord;
    begin
     Result := '';
     {$IFDEF WINDOWS}
      SizeBuffer := 256;
      getUserName(userNameBuffer, sizeBuffer);
      Result := string(userNameBuffer);
     {$ElSE}
      Result := GetEnvironmentVariable('USERNAME');
     {$ENDIF}
    end;
    Pour Windows ne pas oublier dans les uses
    uses
    [...], {$IFDEF WINDOWS} Windows{$ENDIF};

    Cordialement. Gilles
    Dernière modification par Invité ; 15/07/2010 à 19h30.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 7
    Points : 7
    Points
    7
    Par défaut
    Super, merci beaucoup.
    Cela fonctionne (je n'ai testé que sous windows pour l'instant).
    Mais que j'ai eu du mal a revenir a ce type de programmation après avoir fait uniquement du php depuis pas mal de temps.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Pour les autres variables d'environnement,
    • Pour Windows, il faut regarder les codes Delphi
    • Pour Linux, il faut utiliser des units comme unix, baseunix, unixutil(s)... (Voir http://lazarus-ccr.sourceforge.net/docs/ (unix, baseunix... dans RTL)

      Exemple pour déterminer le nom de la station
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      function GetComputerLogin(): string;
      var
        buffer: array[0..255] of char;
        size: dword;
      begin
       Result := '';
       {$IFDEF WINDOWS}
         size := 256;
         if GetComputerName(buffer, size) then
          Result := buffer;
       {$ELSE}
         Result := GetHostName; //uses unix
       {$ENDIF}
      end;

    avec dans uses [...],
    {$IFDEF WINDOWS} Windows {$ElSE} unix {$ENDIF} ;

    *{$ELSE} en prenant comme hypothèse que vous ne développez que pour Win et Nux sinon voir http://delphi.wikia.com/wiki/FreePas...and_versioning : test for families of OSes

    Cordialement. Gilles

    Codes vérifiés sous Lazarus 0.9.29/fpc 2.4.1 [XP & Ubuntu 10.04]
    Dernière modification par Invité ; 16/07/2010 à 15h29.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 64
    Points : 87
    Points
    87
    Par défaut
    les variables d'environnement sont aussi accessibles comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ...
    var nom_utilisateur : String;
    ...
    nom_utilisateur := Application.EnvironmentVariable['USER'];
    ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Récupérer les variables d'environnement d'un projet
    Par kkt8 dans le forum Eclipse Platform
    Réponses: 3
    Dernier message: 20/04/2012, 14h08
  2. Récupérer les variables d'environnement Windows
    Par Adlery dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 23/03/2012, 17h30
  3. Récupérer les variables d'environnement Tomcat
    Par jean38 dans le forum Eclipse Java
    Réponses: 4
    Dernier message: 25/01/2007, 10h25
  4. les variables d'environnement
    Par micknic dans le forum Linux
    Réponses: 8
    Dernier message: 25/04/2005, 14h30
  5. [.NET]Modifier les variables d'environnement dans...
    Par GusS dans le forum Général Dotnet
    Réponses: 4
    Dernier message: 09/02/2005, 16h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo