notpa01
Messages postés95Date d'inscriptionmercredi 9 août 2006StatutMembreDernière intervention14 janvier 2012
-
28 févr. 2008 à 10:23
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 2018
-
5 mars 2008 à 03:25
Bonjour,
En VB6, si je code :
Shell "D:\programmes VB\suivi pgm\PSLIST.EXE >file_log.txt"
la commande PSLIST s'exécute bien mais le résultat n'est pas dans le fichier file_log.txt.
Si je mets cette même commande dans un fichier appelé PSL.BAT et que je fasse un shell de ce fichier BAT : SHELL "D:\programmes VB\suivi pgm\PSL.BAT", mon fichier TXT est bien créé.
Pourquoi le résultat ne va pas dans le fichier pointé sur >file_log.txt ?
Nota : PSLIST est est programme de SysInternals disponible dans le WEB qui permet de lister tous les process en cours sous Windows.
notpa01
Messages postés95Date d'inscriptionmercredi 9 août 2006StatutMembreDernière intervention14 janvier 2012 4 mars 2008 à 16:19
Au fait, c'est normal que le fichier
LOG_AC~x.TXT est créé sous un nom différent chaque fois que j'éxécute ce code ?
LOG_AC~1.TXT,
LOG_AC~2.TXT,
LOG_AC~3.TXT, LO166E~1.TXT, LO166E~2.TXT, LO166E~3.TXT, LO166E~4.TXT, etc.
Même en codant RunPsList = Shell("cmd.exe /c " & sExe & sArg & ">> " & sFile) (>> pour réutiliser le même fichier), il génère un nouveau fichier TXT.
Guilou34
Messages postés142Date d'inscriptionmercredi 5 avril 2006StatutMembreDernière intervention29 janvier 20161 4 mars 2008 à 17:58
Salut
Que le nom change à chaque fois c'est propre à msdos : chaque fois qu'il doit remplacer un nom long, il l'abrège sous la forme XXXXXX~n.XXX et si n existe il le remplace par n+1.
La création d'un fichier vide s'explique par le fait que si Cmd ne trouve pas et donc n'exécute pas Pslist, il effectue quand même la redirection > fichier.txt et comme le canal de sortie est vide, il en va de même pour le fichier.
Pour le vérifier il suffit de faire volontairement une erreur dans le chemin de Pslist
Ou bien comme tu l'a fait avec un espace dans le nom d'un répertoire:
cmd a voulu exécuter "d:\programmesVB\suivi" et comme suivi n'existe pas, il a pris pgm\pslist.exe comme un argument et exécuté la redirection.
PCPT-> Bravo, mais en peu long quand même.
Notpa01-> Nous sommes presque comtemporains: j'ai encore un lot de cartes perforées vierges ça t'interesse
notpa01
Messages postés95Date d'inscriptionmercredi 9 août 2006StatutMembreDernière intervention14 janvier 2012 4 mars 2008 à 18:34
Guilou34 --> les cartes perforées, 80 ou 96 colonnes ? Mais je crois que j'aurais du mal à trouver une trieuse ou une tabu 421. Quand à la perfo 029... il me reste une vielle P80!!! lol !!!
Merci à tous. Je crois qu'on peut fermer le sujet.
Au fait, comment marque-t-on un sujet comme clos ?