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

Delphi Discussion :

surchage du path utilisateur


Sujet :

Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 57
    Points : 40
    Points
    40
    Par défaut surchage du path utilisateur
    Bonjour a tous,

    je voudrais savoir comment surcharger/modifier le path utilisateur?
    J'ai pas trouvé dans la faq donc si quelqu'un pouvait m'orienter/aider

    merci d'avance

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 57
    Points : 40
    Points
    40
    Par défaut
    bon j'ai cherché au hasard si c'était pas stocké dans la base de registre et ho surprise c'est stocké dans hkey_current_user et aussi hkey_user.
    donc je vais me debrouiller avec ca

    merci quand meme

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 57
    Points : 40
    Points
    40
    Par défaut en fait c'est pas bon
    finalement j'ai toujours un soucis,
    apres avoir entré dans la base de registre le path que je veux ajouter, il n'est pas pris en compte (meme si la clé apparait bien) si je ne vais pas cliquer sur ok dans poste_de_travail/propriete/avancé/variables d'environnement


  4. #4
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 726
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 726
    Points : 15 127
    Points
    15 127
    Par défaut
    Yop !

    Tu ouvres une boîte DOS, tu tapes "path /?", ça t'affiche l'aide de la commande, à partir de là tu joues un peu avec pour voir comment elle fonctionne, ensuite t'auras plus qu'à construire la commande qui va bien pour la passer à ShellExecute().
    Moi, c'est que je tenterais.

    Mes 2 cts,
    --
    jp
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 57
    Points : 40
    Points
    40
    Par défaut
    ok je vais essayer ca!

    merci

  6. #6
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut,

    Avec le ShellExecute tu peux essayer de transmettre cette modification du Path ainsi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      PATH=%PATH%;C:\Ton\Nouveau\Chemin
    A voir si cela résoud ton problème.

    @+ Claudius

  7. #7
    Membre éclairé
    Avatar de denokan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2002
    Messages
    434
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2002
    Messages : 434
    Points : 746
    Points
    746
    Par défaut
    et avec GetEnvironnementVariable et SetEnvironnementVariable ?
    Donnez un poisson à un homme et il mangera pendant un jour... Apprenez-lui à pêcher et il s'assiéra dans une barque et boira de la bière toute la journée

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 57
    Points : 40
    Points
    40
    Par défaut
    bonjour,

    la solution de la ligne de commande n'est pas concluente, j'arrive bien à ajouter un chemin au path "temporaire" => si ja tape path en ligne de commande je vois bien ce que je viens d'ajouter, mais des que je ferme la fenetre de commande et que je regarde dans les variables globales rien n'est modifié...
    j'ai essayé de controler le path avant de fermer la fenetre de commande mais il n'y se passe aucun changement (d'ou le terme temporaire)

    y'a t'il une commande pour valider les modifications?

    merci

  9. #9
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Salut!
    Citation Envoyé par denokan
    et avec GetEnvironnementVariable et SetEnvironnementVariable ?
    J'utilise le code suivant (pour l'instant) pour créer mon dossier temporaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Function CreateTempDossier: String;
    Var FileDir, Path: String;
    Begin
      Result := '';
      FileDir := IncludeTrailingPathDelimiter(ExtractFileName(Application.ExeName));
      Path := IncludeTrailingPathDelimiter(GetEnvironmentVariable('TEMP'));
      Try CreateDir(Path + FileDir); Except End;
      If (DirectoryExists(Path + FileDir)) Then Result := Path + FileDir;
    End;
    De retour parmis vous après 10 ans!!

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 57
    Points : 40
    Points
    40
    Par défaut toujours pas la solution
    bonsoir,

    ok je vais etre un peut plus clair (j'espere) que dans mon message precedent,

    en fait mon appli modifie le path a l'aide d'un shellexecute avec la commande sité plus haut. Ensuite je veux lancer d'autre '*.exe' avec mon appli donc je refait des shellexecute et je crois (quasi sur) que le lancement d'un nouvelle shellexecute ne tient pas compte du shellexecute que j'ai taper juste avant...
    il existe bien un fichier vbs qui fait ca mais je voudrais savoir si je peu le faire moi meme dans mon code..

    merci

    P.S : heu Sub 0 j'ai pas compris pourquoi tu abordes la creation de dossier
    enfin merci quand meme a toi aussi (regle numXX : ne pas se mettre un moderateur a dos )

  11. #11
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 726
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 726
    Points : 15 127
    Points
    15 127
    Par défaut
    heu Sub 0 j'ai pas compris pourquoi tu abordes la creation de dossier
    Il te montrait comment utiliser une variable Path que tu te crées et initialises et utilises, au besoin dans tes ShellExecute...
    HTH,
    --
    jp
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  12. #12
    Membre éclairé
    Avatar de denokan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2002
    Messages
    434
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2002
    Messages : 434
    Points : 746
    Points
    746
    Par défaut
    Citation Envoyé par wikimeta
    ...en fait mon appli modifie le path a l'aide d'un shellexecute avec la commande sité plus haut...
    justement ton problème vient de cette commande ShellExecute. essaye de modifier le path avec SetEnvironnementVariable, ça devrai résoudre ton problème
    Donnez un poisson à un homme et il mangera pendant un jour... Apprenez-lui à pêcher et il s'assiéra dans une barque et boira de la bière toute la journée

  13. #13
    Membre émérite Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    Décembre 2003
    Messages
    1 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Delphi/c++/Omnis
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 894
    Points : 2 771
    Points
    2 771
    Par défaut
    je sais pas où j'ai trouver ce source, et j'éspére que cest sa que tu cherche
    PAS DE DESTIN, C'EST CE QUE NOUS FAISONS

  14. #14
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    De retour parmis vous après 10 ans!!

  15. #15
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 57
    Points : 40
    Points
    40
    Par défaut la fin du fin
    bonjour à tous,

    d'abord merci de vos réponses,

    -sub 0 merci pour le lien, l'unité est pratique mais je l'avais déjà, et je l'avais déjà un peu corrigé parce qu'il ya des erreurs de copier coller dans les commentaire et j'avais aussi rajouté un get qui ne recupère que une valeur car celui proposé récupère toute les valeurs dans un TStringlist, mais bref c'était pas ca mon soucis, ou du moin je n'ai pas réussi à y répondre avec cette unité

    -edam j'ai regardé le source rapidement et je suis pas sur qu'il me permette de faire une surchage temporaire qui ne concerne qu'un processus et ses processus "enfants"

    mais j'ai trouvé la solution avec un petit fichier Vbs qui appel l'appli en surchargeant son path le temps de l'execution, et par consequant quand je fais un shellexecute dans mon appli il prend en compte le nouveau path.

    je vous le met en fichier attaché.
    attention ce fichier est un fichier .Vbs, il faut changer l'extension.
    J'ai changé l'extention parce qu'on ne peu pas poster des fichiers .Vbs ===> pourquoi? et pardon aux admins si j'avais pas le droit de faire ca.

    en tout cas merci a tous d'avoir porté attention a mon cas (enfin a ce cas parce que maintenant j'en ai un autre)
    Fichiers attachés Fichiers attachés

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

Discussions similaires

  1. Gestion approfondie des utilisateurs
    Par Lux interior dans le forum XMLRAD
    Réponses: 11
    Dernier message: 04/03/2003, 21h43
  2. Utilisateurs d'une appli delphi+paradox
    Par Jacques Deyrieux dans le forum Paradox
    Réponses: 2
    Dernier message: 11/12/2002, 18h41
  3. interface utilisateur avec OpenGL
    Par demis20 dans le forum OpenGL
    Réponses: 6
    Dernier message: 03/10/2002, 12h27
  4. Réponses: 8
    Dernier message: 05/06/2002, 11h55
  5. [Kylix] Sauvegarde de donnée utilisateur....
    Par Eclypse dans le forum EDI
    Réponses: 1
    Dernier message: 11/05/2002, 17h21

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