Encore du DOS...dsl !!

Résolu
Fabrice518 Messages postés 434 Date d'inscription vendredi 26 novembre 2004 Statut Membre Dernière intervention 22 juin 2010 - 11 oct. 2006 à 19:09
Fabrice518 Messages postés 434 Date d'inscription vendredi 26 novembre 2004 Statut Membre Dernière intervention 22 juin 2010 - 12 oct. 2006 à 09:21
Bonjour a tous,
apres avoir fouiller un peu partout sur la toile,
je ne parviens toujours pas à faire un truc assez simple :

ouvrir ma fenetre des dossiers temporaires.

je m'explique, je lancais avec shell un .bat contenant
start %temp%
qui m'ouvrait ma fenetre.
Mais je voudrais supprimer mon .bat, et executer directement ma commande
en VB.
j'ai tester :
Shell ("start %temp%")
et plein d'autre truc, aussi avec explorer.exe, mais celui ci m'ouvre Mes Documents...

Si quelqu'un a une idées...
Merci !!

Fabrice

9 réponses

Fabrice518 Messages postés 434 Date d'inscription vendredi 26 novembre 2004 Statut Membre Dernière intervention 22 juin 2010
11 oct. 2006 à 21:24
Encore merci pour vos réponses,

voici la réponse :

Shell ("explorer " & Environ("TEMP")), vbNormalFocus

Avec un pti site en prime sur les varaibles d'environnement...

a+ !!
3
Fabrice518 Messages postés 434 Date d'inscription vendredi 26 novembre 2004 Statut Membre Dernière intervention 22 juin 2010
11 oct. 2006 à 21:25
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
11 oct. 2006 à 21:33
Sinon tu avait aussi la solution suivante :

Shell ("cmd /c start %temp%")

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
3
cs_yvesyves Messages postés 561 Date d'inscription samedi 10 janvier 2004 Statut Membre Dernière intervention 11 octobre 2010
11 oct. 2006 à 19:12
Tu dois pouvoir trouver ca avec quelques APIs.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Julien237 Messages postés 883 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 3 mars 2009 7
11 oct. 2006 à 19:27
Salut !
Declare Function GetTempPath Lib "kernel32" Alias "GetTempPathA" ( _
ByVal nBufferLength As Long, _
ByVal lpBuffer As String) As Long
'Remplace les Long par des Integer si tu es en .Net

Dim buf As String = Space(200)
GetTempPath(200, buf)
Shell("explorer " & Trim(buf))

Julien.
0
Fabrice518 Messages postés 434 Date d'inscription vendredi 26 novembre 2004 Statut Membre Dernière intervention 22 juin 2010
11 oct. 2006 à 21:16
Merci pour vos réponses,
mais il n'y a pas moyen de passé par les variables d'environnement ? (%temp%)

Sinon, Julient237, je ne comprends rien a ta fonction : space entre autre...
 a+
0
Julien237 Messages postés 883 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 3 mars 2009 7
11 oct. 2006 à 21:30
Allons-y ligne par ligne :
Ceci : (Au passage tu dois la placer au dessus des procédures tout en haut de ton fichier, contrairement à ce qui suit...)

Declare Function GetTempPath Lib "kernel32" Alias "GetTempPathA" ( _
ByVal nBufferLength As Long, _
ByVal lpBuffer As String) As Long

Est une déclaration d'Api, celle-ci appartient aux api fournies par microsoft permettant aux programmeurs d'interagir avec Windows, plus précisément, elle remplit la variable lpBuffer (de taille nBufferLength) avec le chemin temporaire windows (que tu recherches).

Cette ligne :
Dim buf As String = Space(200)

Déclare un String et lui attribue une valeur, mais j'ai fait une erreur je crois. Si je me rappelle bien, en VB6 on ne peut pas attribuer une valeur directement à la déclaration. (Excuse moi je suis habitué au .Net). La syntaxe correcte est donc :
Dim buf As String
buf = Space(200)

La fonction Space(n) renvoie une chaine de caractères remplie de n espaces.

Ici j'invoque l'api en indiquant la longueur de ma variable, puis ma variable elle-même :
GetTempPath(200, buf)

Et enfin j'invoque la fonction shell ouvrant l'explorer avec comme paramètre le chemin que la fonction GetTempPath nous a fournit. La fonction Trim(s) sert à retirer les espaces à droite et à gauche de s.
Shell("explorer " & Trim(buf))

Excuse moi si j'ai été trop didactique :p

Julien.
0
Julien237 Messages postés 883 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 3 mars 2009 7
11 oct. 2006 à 21:32
^^ Ha ouais :p
J'avoue c'est plus simple...
Bon allez je vais dormir :p
Bonne nuit !

Julien.
0
Fabrice518 Messages postés 434 Date d'inscription vendredi 26 novembre 2004 Statut Membre Dernière intervention 22 juin 2010
12 oct. 2006 à 09:21
merci pour tes explications  !!

  a+
0
Rejoignez-nous