Passer des objets en argument lors de l'appel d'une sous-routine
2 réponses
Major TOM
Bonjour à tous,
Je suis en train de travailler sur l'appel de fichier vbs depuis un autre
fichier vbs.
Ex : Shell.Run "Wscript MaSousRoutine.vbs " & strDefaultDN
Mon problème est que depuis le vbs principal j'ouvre un fichier de cette
façon :
'Création du fichier de sortie portant le même nom que le script
strOutputFileType = "htm"
strOutputFilePath = "./"
' - Nom du ficihier de sortie
strOutputFileName = Split(WScript.ScriptName, ".")(0) & "." &
strOutputFileType
' - Nom et chemin du fichier de sortie
strOutputFile = strOutputFilePath & strOutputFileName
' - Création du fichier
Set objFSO = CreateObject("Scripting.fileSystemObject")
Set objOutputFile = objFSO.CreateTextFile(strOutputFile, True)
'Note : pour écrire une ligne dans le fichier, utiliser la syntaxe
suivante :
' objOutputFile.WriteLine "<br>"
Dans le fichier MaSousRoutine.vbs je dois également écrire dans ce fichier.
De quelle manière je dois m'orienter fermer le fichier et le réouvrir ou une
solution par arguments ?
Si par arguments c'est possible, comment passer un objet ?
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
Fred
Dans son message Major TOM nous dit :
Bonjour à tous,
Je suis en train de travailler sur l'appel de fichier vbs depuis un autre fichier vbs.
Ex : Shell.Run "Wscript MaSousRoutine.vbs " & strDefaultDN
Mon problème est que depuis le vbs principal j'ouvre un fichier de cette façon :
'Création du fichier de sortie portant le même nom que le script strOutputFileType = "htm" strOutputFilePath = "./" ' - Nom du ficihier de sortie strOutputFileName = Split(WScript.ScriptName, ".")(0) & "." & strOutputFileType ' - Nom et chemin du fichier de sortie strOutputFile = strOutputFilePath & strOutputFileName ' - Création du fichier Set objFSO = CreateObject("Scripting.fileSystemObject") Set objOutputFile = objFSO.CreateTextFile(strOutputFile, True) 'Note : pour écrire une ligne dans le fichier, utiliser la syntaxe suivante : ' objOutputFile.WriteLine "<br>"
Dans le fichier MaSousRoutine.vbs je dois également écrire dans ce fichier. De quelle manière je dois m'orienter fermer le fichier et le réouvrir ou une solution par arguments ? Si par arguments c'est possible, comment passer un objet ?
Par avance, merci de votre aide.
Thierry
Bonjour, Si j'ai bien compris, la sous-routine doit écrire à la suite de la routine principale dans le même fichier ? Dans ce cas, ferme le fichier et ouvre le en mode Append dans la sous-routine (ou bien fait tout dans le même vbs).
Un petit détail encore : attention au split pour trouver le nom de fichier. Il est parfaitement possible d'avoir un nom de fichier contenant un point. "Mon.Fichier.htm" par exemple.
-- Fred http://www.cerbermail.com/?3kA6ftaCvT
Dans son message uhWbzsbkFHA.2644@TK2MSFTNGP09.phx.gbl
Major TOM nous dit :
Bonjour à tous,
Je suis en train de travailler sur l'appel de fichier vbs depuis un
autre fichier vbs.
Ex : Shell.Run "Wscript MaSousRoutine.vbs " & strDefaultDN
Mon problème est que depuis le vbs principal j'ouvre un fichier de
cette façon :
'Création du fichier de sortie portant le même nom que le script
strOutputFileType = "htm"
strOutputFilePath = "./"
' - Nom du ficihier de sortie
strOutputFileName = Split(WScript.ScriptName, ".")(0) & "." &
strOutputFileType
' - Nom et chemin du fichier de sortie
strOutputFile = strOutputFilePath & strOutputFileName
' - Création du fichier
Set objFSO = CreateObject("Scripting.fileSystemObject")
Set objOutputFile = objFSO.CreateTextFile(strOutputFile, True)
'Note : pour écrire une ligne dans le fichier, utiliser la syntaxe
suivante :
' objOutputFile.WriteLine "<br>"
Dans le fichier MaSousRoutine.vbs je dois également écrire dans ce
fichier. De quelle manière je dois m'orienter fermer le fichier et le
réouvrir ou une solution par arguments ?
Si par arguments c'est possible, comment passer un objet ?
Par avance, merci de votre aide.
Thierry
Bonjour,
Si j'ai bien compris, la sous-routine doit écrire à la suite de la
routine principale dans le même fichier ?
Dans ce cas, ferme le fichier et ouvre le en mode Append dans la
sous-routine (ou bien fait tout dans le même vbs).
Un petit détail encore : attention au split pour trouver le nom de
fichier. Il est parfaitement possible d'avoir un nom de fichier
contenant un point. "Mon.Fichier.htm" par exemple.
Je suis en train de travailler sur l'appel de fichier vbs depuis un autre fichier vbs.
Ex : Shell.Run "Wscript MaSousRoutine.vbs " & strDefaultDN
Mon problème est que depuis le vbs principal j'ouvre un fichier de cette façon :
'Création du fichier de sortie portant le même nom que le script strOutputFileType = "htm" strOutputFilePath = "./" ' - Nom du ficihier de sortie strOutputFileName = Split(WScript.ScriptName, ".")(0) & "." & strOutputFileType ' - Nom et chemin du fichier de sortie strOutputFile = strOutputFilePath & strOutputFileName ' - Création du fichier Set objFSO = CreateObject("Scripting.fileSystemObject") Set objOutputFile = objFSO.CreateTextFile(strOutputFile, True) 'Note : pour écrire une ligne dans le fichier, utiliser la syntaxe suivante : ' objOutputFile.WriteLine "<br>"
Dans le fichier MaSousRoutine.vbs je dois également écrire dans ce fichier. De quelle manière je dois m'orienter fermer le fichier et le réouvrir ou une solution par arguments ? Si par arguments c'est possible, comment passer un objet ?
Par avance, merci de votre aide.
Thierry
Bonjour, Si j'ai bien compris, la sous-routine doit écrire à la suite de la routine principale dans le même fichier ? Dans ce cas, ferme le fichier et ouvre le en mode Append dans la sous-routine (ou bien fait tout dans le même vbs).
Un petit détail encore : attention au split pour trouver le nom de fichier. Il est parfaitement possible d'avoir un nom de fichier contenant un point. "Mon.Fichier.htm" par exemple.
-- Fred http://www.cerbermail.com/?3kA6ftaCvT
Major TOM
Merci Fred
--
Par avance, merci de votre aide.
Thierry "Fred" a écrit dans le message de news:
Dans son message Major TOM nous dit :
Bonjour à tous,
Je suis en train de travailler sur l'appel de fichier vbs depuis un autre fichier vbs.
Ex : Shell.Run "Wscript MaSousRoutine.vbs " & strDefaultDN
Mon problème est que depuis le vbs principal j'ouvre un fichier de cette façon :
'Création du fichier de sortie portant le même nom que le script strOutputFileType = "htm" strOutputFilePath = "./" ' - Nom du ficihier de sortie strOutputFileName = Split(WScript.ScriptName, ".")(0) & "." & strOutputFileType ' - Nom et chemin du fichier de sortie strOutputFile = strOutputFilePath & strOutputFileName ' - Création du fichier Set objFSO = CreateObject("Scripting.fileSystemObject") Set objOutputFile = objFSO.CreateTextFile(strOutputFile, True) 'Note : pour écrire une ligne dans le fichier, utiliser la syntaxe suivante : ' objOutputFile.WriteLine "<br>"
Dans le fichier MaSousRoutine.vbs je dois également écrire dans ce fichier. De quelle manière je dois m'orienter fermer le fichier et le réouvrir ou une solution par arguments ? Si par arguments c'est possible, comment passer un objet ?
Par avance, merci de votre aide.
Thierry
Bonjour, Si j'ai bien compris, la sous-routine doit écrire à la suite de la routine principale dans le même fichier ? Dans ce cas, ferme le fichier et ouvre le en mode Append dans la sous-routine (ou bien fait tout dans le même vbs).
Un petit détail encore : attention au split pour trouver le nom de fichier. Il est parfaitement possible d'avoir un nom de fichier contenant un point. "Mon.Fichier.htm" par exemple.
-- Fred http://www.cerbermail.com/?3kA6ftaCvT
Merci Fred
--
Par avance, merci de votre aide.
Thierry
"Fred" <foleide@libre.france> a écrit dans le message de news:
uMPUjorkFHA.1996@TK2MSFTNGP10.phx.gbl...
Dans son message uhWbzsbkFHA.2644@TK2MSFTNGP09.phx.gbl
Major TOM nous dit :
Bonjour à tous,
Je suis en train de travailler sur l'appel de fichier vbs depuis un
autre fichier vbs.
Ex : Shell.Run "Wscript MaSousRoutine.vbs " & strDefaultDN
Mon problème est que depuis le vbs principal j'ouvre un fichier de
cette façon :
'Création du fichier de sortie portant le même nom que le script
strOutputFileType = "htm"
strOutputFilePath = "./"
' - Nom du ficihier de sortie
strOutputFileName = Split(WScript.ScriptName, ".")(0) & "." &
strOutputFileType
' - Nom et chemin du fichier de sortie
strOutputFile = strOutputFilePath & strOutputFileName
' - Création du fichier
Set objFSO = CreateObject("Scripting.fileSystemObject")
Set objOutputFile = objFSO.CreateTextFile(strOutputFile, True)
'Note : pour écrire une ligne dans le fichier, utiliser la syntaxe
suivante :
' objOutputFile.WriteLine "<br>"
Dans le fichier MaSousRoutine.vbs je dois également écrire dans ce
fichier. De quelle manière je dois m'orienter fermer le fichier et le
réouvrir ou une solution par arguments ?
Si par arguments c'est possible, comment passer un objet ?
Par avance, merci de votre aide.
Thierry
Bonjour,
Si j'ai bien compris, la sous-routine doit écrire à la suite de la routine
principale dans le même fichier ?
Dans ce cas, ferme le fichier et ouvre le en mode Append dans la sous-routine
(ou bien fait tout dans le même vbs).
Un petit détail encore : attention au split pour trouver le nom de fichier. Il
est parfaitement possible d'avoir un nom de fichier contenant un point.
"Mon.Fichier.htm" par exemple.
Je suis en train de travailler sur l'appel de fichier vbs depuis un autre fichier vbs.
Ex : Shell.Run "Wscript MaSousRoutine.vbs " & strDefaultDN
Mon problème est que depuis le vbs principal j'ouvre un fichier de cette façon :
'Création du fichier de sortie portant le même nom que le script strOutputFileType = "htm" strOutputFilePath = "./" ' - Nom du ficihier de sortie strOutputFileName = Split(WScript.ScriptName, ".")(0) & "." & strOutputFileType ' - Nom et chemin du fichier de sortie strOutputFile = strOutputFilePath & strOutputFileName ' - Création du fichier Set objFSO = CreateObject("Scripting.fileSystemObject") Set objOutputFile = objFSO.CreateTextFile(strOutputFile, True) 'Note : pour écrire une ligne dans le fichier, utiliser la syntaxe suivante : ' objOutputFile.WriteLine "<br>"
Dans le fichier MaSousRoutine.vbs je dois également écrire dans ce fichier. De quelle manière je dois m'orienter fermer le fichier et le réouvrir ou une solution par arguments ? Si par arguments c'est possible, comment passer un objet ?
Par avance, merci de votre aide.
Thierry
Bonjour, Si j'ai bien compris, la sous-routine doit écrire à la suite de la routine principale dans le même fichier ? Dans ce cas, ferme le fichier et ouvre le en mode Append dans la sous-routine (ou bien fait tout dans le même vbs).
Un petit détail encore : attention au split pour trouver le nom de fichier. Il est parfaitement possible d'avoir un nom de fichier contenant un point. "Mon.Fichier.htm" par exemple.