Page 1 sur 1

[R] Copier partie d'un chemin d'une clef de registre

Posté : mar. 29 oct. 2013 18:50
par davzell
bonjour,

je chercher a récupérer le répertoire d'installation d'un programme dans le registre pour ensuite l'utiliser avec la fonction fileinstall

j'utilise donc regread pour lire ma clef de registre qui me retourne la valeur: "C:\Program Files\test\test.exe" -service1

ce que je veux c'est récupérer uniquement le C:\Program Files\test\test.exe pas les guillemets ni le -service1

Sachant que le chemins est différents en fonction des pc.
En gros je voudrais récupérer ce qu'il y a entre les guillemets à chaque fois.

Je pense qu'il faut utiliser Stringsplit, est ce que c'est bien ça ?

merci

Re: [..] copier partie d'un chemin d'une clef de registre

Posté : mar. 29 oct. 2013 19:13
par jguinch
Tu penses qu'il faut utiliser StringSplit, est-ce que tu as essayé ?
En tout cas c'est une solution, mais comme bien souvent, il en existe d'autres comme par exemple _StringBetween

Re: [..] Copier partie d'un chemin d'une clef de registre

Posté : mar. 29 oct. 2013 20:07
par davzell
Oui oui j'ai testé mais au vu des échecs je me demandais si c'était vraiment ça.

Je vais essayer avec string between alors

Re: [..] Copier partie d'un chemin d'une clef de registre

Posté : jeu. 07 nov. 2013 18:00
par davzell
bon je suis arrivé a faire ce que je voulais mais je comprend pas un truc

voila le code

Code : Tout sélectionner

Func _Main()
    $aArray1 = _StringBetween('"C:\Program Files\prog\test.exe" -service', '"', 't')
    _ArrayDisplay($aArray1, 'Default Search')
    Fileinstall("C:\test.exe", $aArray1 & "test.exe")
EndFunc   ;==>_Main
ain

mon chemin C:\Program Files\prog\ est bien récupéré par le stringbetween

je voudrais ensuite l'utiliser avec un fileinstall mais ça ne marche pas

est ce que je me suis loupé dans le code ou ce n'est pas possible de le faire comme ca ?

Edit: j'avais oublié le [0] après ma variable...

Re: [..] Copier partie d'un chemin d'une clef de registre

Posté : mar. 07 janv. 2014 04:49
par xPunKx
En un peu plus simple :

Code : Tout sélectionner

#include <Array.au3>
#include <String.au3>

_Main()

Func _Main()
    $aArray1 = _StringBetween('"C:\Program Files\prog\test.exe" -service', '"', '"')
    ;_ArrayDisplay($aArray1, 'Default Search')
    Fileinstall("C:\test.exe", $aArray1[0])
EndFunc   ;==>_Main