Récupérer une variable systeme en LS

Forum destiné aux questions sur le développement : Formules, LotusScript, Java ...

Récupérer une variable systeme en LS

Messagepar bullit » 30 Nov 2009 à 12:30

Bonjour,

J'aimerai récupérer un fichier sous Temp (%temp%) en LS.
Actuellement j'utilise "session.GetEnvironmentString" qui me permet de récupérer un fichier mais uniquement dans le Directory.

Y a t-il un moyen de récupérer une variable systeme en LS pour ensuite faire appel à un fichier qui se trouve dans le répertoire ?

Merci
bullit
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 137
Inscrit(e) le : 25 Juin 2007 à 08:28

Messagepar Michael DELIQUE » 30 Nov 2009 à 12:38

salut

pour le répertoire temporaire tu peut passer par une api => http://forum.dominoarea.org/recuperer-l ... 19270.html

sinon essais ce code

Code : Tout sélectionner
Public Function WindowsGetVariable(wVariable As String) As String
   'cette fonction renvois le contnue d'une variable windows ex %USERNAME%
   
   'Déclaration variable
   Dim vrShell As Variant
'   Dim vrSysEnv As Variant
   
   On Error Goto ErreurHandle
   
   If Trim(wVariable) = "" Then
      WindowsGetVariable = ""
      Exit Function
   End If
   
   If Session Is Nothing Then
      Set Session = New NotesSession
   End If
   
   If Session.NotesBuildVersion<190 Then
      'inférieur à la version R6
      Set vrShell = CreateObject("WScript.Shell")
      WindowsGetVariable = vrShell.ExpandEnvironmentStrings(wVariable)
      
   'si ça ne marche pas utiliser cette version du code
'   Set vrSysEnv = vrShell.Environment("SYSTEM")
'   WindowsGetVariable = vrSysEnv(wVariable)
      
      Set vrShell = Nothing
'   Set  vrSysEnv = Nothing
      
   Else
      WindowsGetVariable = Environ$(wVariable)
   End If
   
   Exit Function
ErreurHandle:
   Msgbox "("+Cstr(Getthreadinfo (1))+" Call by "+Cstr(Getthreadinfo(10))+")"+Chr(10)+"Erreur " + Str(Err) + " : "+Chr(10) + Cstr(Error)+". "+Chr(10)+"Ligne N° "+Cstr(Erl),16," ERREUR !"
   WindowsGetVariable = ""
   Exit Function
End Function
Cordialement

Michael (SMS-Phobique)
----------------------------
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi."
Albert EINSTEIN
Avatar de l’utilisateur
Michael DELIQUE
Administrateur
Administrateur
 
Message(s) : 12183
Inscrit(e) le : 16 Déc 2004 à 10:36
Localisation : Paris/Cergy

Messagepar abertisch » 01 Déc 2009 à 09:05

Salut,

et avec cela
Code : Tout sélectionner
Environ("Temp")
?!?
"Lotus, il n'y a qu'en rouleaux que ça fait pas mal au cul"
abertisch
Roi des posts
Roi des posts
 
Message(s) : 763
Inscrit(e) le : 25 Oct 2006 à 13:51
Localisation : Suisse

récup windowsEnv en LS

Messagepar bullit » 10 Fév 2010 à 17:45

Bonjour,

J'aimerai faire exactement la même chose que ceci mais à partir du répertoire %temp% :
fichier=session.GetEnvironmentString( "Directory", True ) & "\toto.txt"

L'idée consiste à:

1. récupérer l'emplacement de la variable d'environnement windows "TEMP"
2. D'appeler le fichier toto.txt qui se trouve dans ce répertoire.

J'ai cru comprendre qu'avec la fonction Environ on pouvait faire cela, mais j'avoue que je n'y arrive pas.

Si qq pourvait me dépanner, ça serait sympa !

CDT
bullit
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 137
Inscrit(e) le : 25 Juin 2007 à 08:28

Messagepar abertisch » 11 Fév 2010 à 08:06

Salut,

En utilisant
Code : Tout sélectionner
Environ("Temp")+"\"+toto.txt
Cela devrait marcher. :wink:
"Lotus, il n'y a qu'en rouleaux que ça fait pas mal au cul"
abertisch
Roi des posts
Roi des posts
 
Message(s) : 763
Inscrit(e) le : 25 Oct 2006 à 13:51
Localisation : Suisse

marche pas

Messagepar bullit » 11 Fév 2010 à 11:06

ça ne marche pas, j'ai une erreur "variant does not contain an object" lors de l'execution.

alors j'ai essayé ça
fichier=Environ$("TEMP")+"\"+toto.txt
mais c'est pareil, faut-il déclarer qq chose de plus ?

CDT
bullit
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 137
Inscrit(e) le : 25 Juin 2007 à 08:28

Messagepar Michael DELIQUE » 11 Fév 2010 à 11:07

tu as essayer d'utiliser la fonction WindowsGetVariable donné plus haut ?
Cordialement

Michael (SMS-Phobique)
----------------------------
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi."
Albert EINSTEIN
Avatar de l’utilisateur
Michael DELIQUE
Administrateur
Administrateur
 
Message(s) : 12183
Inscrit(e) le : 16 Déc 2004 à 10:36
Localisation : Paris/Cergy

ok, mais !

Messagepar bullit » 11 Fév 2010 à 18:24

ok merci, j'ai bien crée la fonction à partir de WindowsGetVariable("TEMP")

par contre j'aimerai faire appel à cette fonction depuis le postopen et donc dans un premier temps récupérer la valeur de la variable system et puis ensuiet faier appel au fichier qui se trouve dans le dossier (valeur récupéré).

Par contre je sais pas comment m'y prendre !

Merci par avance.
bullit
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 137
Inscrit(e) le : 25 Juin 2007 à 08:28

personne ?

Messagepar bullit » 12 Fév 2010 à 15:12

J'ai bien crée la fonction, mais comment faire pour faire appel à celle-ci et
se déplacer dans le répertoire retourné par la fonction ?

Merci pour votre aide.
bullit
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 137
Inscrit(e) le : 25 Juin 2007 à 08:28

Messagepar Michael DELIQUE » 12 Fév 2010 à 15:33

tu l'as mise ou la fonction ?
Cordialement

Michael (SMS-Phobique)
----------------------------
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi."
Albert EINSTEIN
Avatar de l’utilisateur
Michael DELIQUE
Administrateur
Administrateur
 
Message(s) : 12183
Inscrit(e) le : 16 Déc 2004 à 10:36
Localisation : Paris/Cergy

Messagepar bullit » 12 Fév 2010 à 16:28

Et bien j'ai déclarée une nouvelle fonction dans le "script de la base" et je souhaite à partir du post open appeller cette dernière.

CDT
bullit
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 137
Inscrit(e) le : 25 Juin 2007 à 08:28

Messagepar Michael DELIQUE » 12 Fév 2010 à 16:46

ben dans le postopen

dim t as string
t = WindowsGetVariable("Temp")
Cordialement

Michael (SMS-Phobique)
----------------------------
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi."
Albert EINSTEIN
Avatar de l’utilisateur
Michael DELIQUE
Administrateur
Administrateur
 
Message(s) : 12183
Inscrit(e) le : 16 Déc 2004 à 10:36
Localisation : Paris/Cergy

Messagepar bullit » 25 Fév 2010 à 14:05

PI:
En faisant un call de la variable windowsgetvariable
puis un Environ ("sysvaleur")

ça marche.

Merci.
bullit
Apprenti-posteur
Apprenti-posteur
 
Message(s) : 137
Inscrit(e) le : 25 Juin 2007 à 08:28


Retour vers Développement

cron