Création d'un script vbs avec un script en vbs

Signaler
Messages postés
941
Date d'inscription
lundi 31 août 2015
Statut
Membre
Dernière intervention
22 novembre 2020
-
Messages postés
941
Date d'inscription
lundi 31 août 2015
Statut
Membre
Dernière intervention
22 novembre 2020
-
J'ai souhaité avancer à côté le script permettant de créer le script dans Logon avec le reste du grand script. J'ai utilisé comme-ci dessous (la méthode du fichier txt) mais cela pas fonctionné.

'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------'
'	CREATION DU SCRIPT DANS SON EMPLACEMENT                                                                                                                                                                                                '
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------'

'---- Déclaration des variables --------------------------------------------------------------------------------------------------------------------------------------------
Dim WSHNetwork, varUser, varPassword, bKey, WshShell, pKey, ObjetRegedit, hostsNewLine

'---- Préparation de l'environnement ---------------------------------------------------------------------------------------------------------------------------------------
Set fso = WScript.CreateObject("Scripting.FileSystemObject")

'---- Exécution des droits administrateurs ---------------------------------------------------------------------------------------------------------------------------------
If Not WScript.Arguments.Named.Exists("elevate") Then
     CreateObject("Shell.Application").ShellExecute WScript.FullName _
       , """" & WScript.ScriptFullName & """ /elevate", "", "runas", 1
     WScript.Quit
End If

'---- Emplacement du script vbs --------------------------------------------------------------------------------------------------------------------------------------------
FichierVBS = "C:\Windows\System32\GroupPolicy\User\Scripts\Logon\ScriptRéseaux.vbs"
msgbox "Coupure1" 

'---- Destruction des objets ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Set ObjetRegedit = Nothing

'---- Création du script vbs -----------------------------------------------------------------------------------------------------------------------------------------------
Set NewFichier = fso.CreateTextFile ("C:\Windows\System32\GroupPolicy\User\Scripts\Logon\ScriptTest.vbs", TRUE)
msgbox "Coupure2" 
'---- Ajout de données -----------------------------------------------------------------------------------------------------------------------------------------------------
'data1 = "Test de ..............."

'---- Ecriture des données de désactivation de l'UAC -----------------------------------------------------------------------------------------------------------------------
'NewFichier.WriteLine(data1)
NewFichier.WriteLine(
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------'
'	DESACTIVATION DE L'UAC                                                                                                                                                                                                '
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------'
.
.
.
.
)


Puis je avoir votre aide ?

1 réponse

Messages postés
13221
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
22 novembre 2020
739
bonjour,
"cela pas fonctionné": que se passe-t-'il?
as-tu essayé d'écrire quelque chose de plus simple, par exemple "bonjour"?
Messages postés
941
Date d'inscription
lundi 31 août 2015
Statut
Membre
Dernière intervention
22 novembre 2020
2 >
Messages postés
13221
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
22 novembre 2020

Après de ma part c'est la ligne 29. J'enlève "Test de ..............." et je mets mon code (une partie comme la désactivation de l'UAC) copié collé mais il s'avère que ce ne soit pas la bonne méthode que j'utilise/
Messages postés
13221
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
22 novembre 2020
739 >
Messages postés
941
Date d'inscription
lundi 31 août 2015
Statut
Membre
Dernière intervention
22 novembre 2020

montre un exemple le plus court possible.
et décris comment cela se comporte: "cela pas fonctionné" ou "il s'avère que ce ne soit pas la bonne méthode que j'utilise", cela ne remplace pas une description factuelle de ce qui se passe.
Messages postés
941
Date d'inscription
lundi 31 août 2015
Statut
Membre
Dernière intervention
22 novembre 2020
2 >
Messages postés
13221
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
22 novembre 2020

Voila le code
Dim fso, NewFichier

'*** Préparation de l'environnement
Set fso = WScript.CreateObject("Scripting.FileSystemObject")
'Set objet_fso = Server.CreateObject("Scripting.FileSystemObject")

'*** Execute les droits administrateurs pour créer le vbscript

If Not WScript.Arguments.Named.Exists("elevate") Then
     CreateObject("Shell.Application").ShellExecute WScript.FullName _
       , """" & WScript.ScriptFullName & """ /elevate", "", "runas", 1
     WScript.Quit
End If

FichierVBS = "C:\Windows\System32\GroupPolicy\User\Scripts\Logon\ScriptTest.vbs"

'*** Création du fichier texte "C:\Windows\System32\...\Logon\Script.vbs"
Set NewFichier = fso.CreateTextFile(FichierVBS,TRUE)
'Set NewFichier = objet_fso.CreateTextFile(FichierVBS,TRUE)

'*** Ajout de données dans la variable "data1".
data1 = " '--------------------------------------------------------------------------------------------------------------------------------'
'	DESACTIVATION DE L'UAC                                                                                                                                                                                               
'---------------------------------------------------------------------------------------------------------------------------------------------------'

Option Explicit

'---- Déclaration des variables ------------------------------------------------------------------------------------------------------
Dim ObjetRegedit, CleRegistre, bKey, pKey, WSHNetwork

'---- Definition du contenu de la variable -----------------------------------------------------------------------------------------
Set ObjetRegedit = CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
Set shl = createobject("wscript.shell")
Set WshShell = WScript.CreateObject("WScript.Shell")"

'*** Ecriture des données de la variable "data1" dans le fichier texte.
NewFichier.WriteLine(data1)

'*** Destruction des objets
Set fso = Nothing
'Set objet_fso = Nothing

'WScript.Quit


Je n'ai pas mis volontairement toutes les variables car le problème ne vient pas de cela pour l'instant.

Il s'affiche que l'erreur "Constante chaîne non terminée", code "800A0409". Il message est pour la ligne 23.

Le script ne se créé même pas dans le dossier "Logon".
Messages postés
13221
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
22 novembre 2020
739 >
Messages postés
941
Date d'inscription
lundi 31 août 2015
Statut
Membre
Dernière intervention
22 novembre 2020

et ainsi?
data1 = " '--------------------------------------------------------------------------------------------------------------------------------"
NewFichier.WriteLine(data1)
Messages postés
941
Date d'inscription
lundi 31 août 2015
Statut
Membre
Dernière intervention
22 novembre 2020
2 >
Messages postés
13221
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
22 novembre 2020

Ca fonctionne parfaitement. Il y a bien la ligne '----------------------------------------' dans le script VBS créé.