Après avoir retourné le problème dans tous les sens, je n'ai pas réussi à
touver le moyen de créer, avec WSH et sous Win 98, une variable
d'environnement qui perdure au delà de l'exécution du script.
La seule solution que j'ai trouvé consiste à créer en VBS un fichier batch
contenant la commande set. Bien sûr la portée ne dépasse pas la durée de la
session DOS où il est utilisé mais c'est suffisant pour l'utilisation
recherchée.
Si quelqu'un a une solution plus élégante, merci d'avance.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Claude BELLAMY
Dans le message :%, Heffgé a pris la peine d'écrire ce qui suit :
Bonjour,
Après avoir retourné le problème dans tous les sens, je n'ai pas réussi à touver le moyen de créer, avec WSH et sous Win 98, une variable d'environnement qui perdure au delà de l'exécution du script.
La seule solution que j'ai trouvé consiste à créer en VBS un fichier batch contenant la commande set. Bien sûr la portée ne dépasse pas la durée de la session DOS où il est utilisé mais c'est suffisant pour l'utilisation recherchée.
Si quelqu'un a une solution plus élégante, merci d'avance.
Laisse tomber le VBS dans ce cas précis (Win98) et contente toi d'un bon vieux batch faisant appel à la commande "WINSET", qui rend les définitions de variables d'environnement permanentes. Cet outil est - parfois- fourni avec le CD de Windows 9x (cela dépend des versions. P.ex. dans le répertoire TOOLSRESKITSCRPTING du CD de Windows 98).
Comme on ne le trouve pas partout, je l'ai mis sur mon site : http://www.bellamyjc.org/download/winset.exe (22 ko)
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org ou http://jc.bellamy.free.fr
Dans le message :%234LCIUQEGHA.2648@TK2MSFTNGP11.phx.gbl,
Heffgé <fgondarf@yahoo.fr> a pris la peine d'écrire ce qui suit :
Bonjour,
Après avoir retourné le problème dans tous les sens, je n'ai pas
réussi à touver le moyen de créer, avec WSH et sous Win 98, une
variable d'environnement qui perdure au delà de l'exécution du script.
La seule solution que j'ai trouvé consiste à créer en VBS un fichier
batch contenant la commande set. Bien sûr la portée ne dépasse pas la
durée de la session DOS où il est utilisé mais c'est suffisant pour
l'utilisation recherchée.
Si quelqu'un a une solution plus élégante, merci d'avance.
Laisse tomber le VBS dans ce cas précis (Win98) et contente toi d'un bon
vieux batch faisant appel à la commande "WINSET", qui rend les définitions
de variables d'environnement permanentes.
Cet outil est - parfois- fourni avec le CD de Windows 9x (cela dépend des
versions. P.ex. dans le répertoire TOOLSRESKITSCRPTING du CD de Windows
98).
Comme on ne le trouve pas partout, je l'ai mis sur mon site :
http://www.bellamyjc.org/download/winset.exe (22 ko)
--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - Jean-Claude.Bellamy@wanadoo.fr
http://www.bellamyjc.org ou http://jc.bellamy.free.fr
Dans le message :%, Heffgé a pris la peine d'écrire ce qui suit :
Bonjour,
Après avoir retourné le problème dans tous les sens, je n'ai pas réussi à touver le moyen de créer, avec WSH et sous Win 98, une variable d'environnement qui perdure au delà de l'exécution du script.
La seule solution que j'ai trouvé consiste à créer en VBS un fichier batch contenant la commande set. Bien sûr la portée ne dépasse pas la durée de la session DOS où il est utilisé mais c'est suffisant pour l'utilisation recherchée.
Si quelqu'un a une solution plus élégante, merci d'avance.
Laisse tomber le VBS dans ce cas précis (Win98) et contente toi d'un bon vieux batch faisant appel à la commande "WINSET", qui rend les définitions de variables d'environnement permanentes. Cet outil est - parfois- fourni avec le CD de Windows 9x (cela dépend des versions. P.ex. dans le répertoire TOOLSRESKITSCRPTING du CD de Windows 98).
Comme on ne le trouve pas partout, je l'ai mis sur mon site : http://www.bellamyjc.org/download/winset.exe (22 ko)
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org ou http://jc.bellamy.free.fr
Heffgé
Bonjour Jean-Claude BELLAMY,
Laisse tomber le VBS dans ce cas précis (Win98) et contente toi d'un bon vieux batch faisant appel à la commande "WINSET", qui rend les définitions de variables d'environnement permanentes. Cet outil est - parfois- fourni avec le CD de Windows 9x (cela dépend des versions. P.ex. dans le répertoire TOOLSRESKITSCRPTING du CD de Windows 98).
OK pour winset et merci mais dans le cas présent il ne s'agit pas réellement de rendre une variable permanente. Je n'ai soumis qu'un petit bout du problème. Tout part d'une question qui a été posée par une autre personne. Comment, à l'aide de commandes batch, mettre le contenu d'un fichier dans une variable d'environnement, sachant que ce fichier a été crée par redirection de la sortie d'une commande précédente ?
La concaténation avec un autre fichier contenant "set=" ne marche pas car il y a un CRLF parasite. La redirection d'entrée vers la commande set ne marche pas non plus. J'ai donc trouvé la solution VBS pour contourner le problème mais en passant par un fichier bat intermédiaire. Car si je crée la variable dans le script ce n'est pas le même shell et elle ne survit pas au script.
D'où ma question.
Si tu as une autre suggestion, merci d'avance.
FG
Bonjour Jean-Claude BELLAMY,
Laisse tomber le VBS dans ce cas précis (Win98) et contente toi d'un bon
vieux batch faisant appel à la commande "WINSET", qui rend les définitions
de variables d'environnement permanentes.
Cet outil est - parfois- fourni avec le CD de Windows 9x (cela dépend des
versions. P.ex. dans le répertoire TOOLSRESKITSCRPTING du CD de Windows
98).
OK pour winset et merci mais dans le cas présent il ne s'agit pas réellement
de rendre une variable permanente. Je n'ai soumis qu'un petit bout du
problème. Tout part d'une question qui a été posée par une autre personne.
Comment, à l'aide de commandes batch, mettre le contenu d'un fichier dans
une variable d'environnement, sachant que ce fichier a été crée par
redirection de la sortie d'une commande précédente ?
La concaténation avec un autre fichier contenant "set=" ne marche pas car il
y a un CRLF parasite. La redirection d'entrée vers la commande set ne marche
pas non plus. J'ai donc trouvé la solution VBS pour contourner le problème
mais en passant par un fichier bat intermédiaire. Car si je crée la variable
dans le script ce n'est pas le même shell et elle ne survit pas au script.
Laisse tomber le VBS dans ce cas précis (Win98) et contente toi d'un bon vieux batch faisant appel à la commande "WINSET", qui rend les définitions de variables d'environnement permanentes. Cet outil est - parfois- fourni avec le CD de Windows 9x (cela dépend des versions. P.ex. dans le répertoire TOOLSRESKITSCRPTING du CD de Windows 98).
OK pour winset et merci mais dans le cas présent il ne s'agit pas réellement de rendre une variable permanente. Je n'ai soumis qu'un petit bout du problème. Tout part d'une question qui a été posée par une autre personne. Comment, à l'aide de commandes batch, mettre le contenu d'un fichier dans une variable d'environnement, sachant que ce fichier a été crée par redirection de la sortie d'une commande précédente ?
La concaténation avec un autre fichier contenant "set=" ne marche pas car il y a un CRLF parasite. La redirection d'entrée vers la commande set ne marche pas non plus. J'ai donc trouvé la solution VBS pour contourner le problème mais en passant par un fichier bat intermédiaire. Car si je crée la variable dans le script ce n'est pas le même shell et elle ne survit pas au script.
D'où ma question.
Si tu as une autre suggestion, merci d'avance.
FG
Méta-MCI
Bonsoir !
Pour la concaténation d'un fichier, à un autre, contenant "set =", il faut utiliser l'utilitaire delcrlfd.exe
Cet utilitaire est disponible là : http://ponx.org/batutils
Je l'ai réalisé ESSENTIELLEMENT pour cet usage. Et, c'est bien pratique.
@-salutations
Michel Claveau
Bonsoir !
Pour la concaténation d'un fichier, à un autre, contenant "set =", il faut
utiliser l'utilitaire delcrlfd.exe
Cet utilitaire est disponible là : http://ponx.org/batutils
Je l'ai réalisé ESSENTIELLEMENT pour cet usage. Et, c'est bien pratique.