Pour rappel, si vous voulez que le moteur d'exécution de vbscript soit cscript, la commande à passer en tant qu'administrateur est
cscript //H:CScript
Lien vers le fichier : cliquez ici
Et toujours pour rappel, si vous voulez lancer une fenêtre de commande en tant qu'administrateur, appuyez simultanément sur les touches Windows+R
Entrez la commande cmd puis appuyez sur la touche Entrée
Maintenant il faut relancer cette même fenêtre de commande en tant qu'administrateur. Pour cela effectuez un clic droit dessus
Faites un clic droit sur "Invite de commandes" puis cliquez sur
Exécuter en tant qu'administrateur
Vous aurez donc 2 fenêtres de commandes lancées.
Seul la dernière à s'être ouverte a des droits administrateurs
Call DetectExeType()
Sub DetectExeType()
'Version du 10 juillet 2008
Dim ScriptHost
Dim ShellObject
Dim CurrentPathExt
Dim EnvObject
Dim RegCScript
Dim RegPopupType ' This is used to set the pop-up box flags.
' I couldn't find the pre-defined names
RegPopupType = 32 + 4
On Error Resume Next
ScriptHost = WScript.FullName
ScriptHost = Right(ScriptHost, Len(ScriptHost) - InStrRev(ScriptHost, "\"))
If (UCase(ScriptHost) = "WSCRIPT.EXE") Then
WScript.Echo ("This script does not work with WScript.")
' Create a pop-up box and ask if they want to register cscript as the default host.
Set ShellObject = WScript.CreateObject("WScript.Shell")
' -1 is the time to wait. 0 means wait forever.
RegCScript = ShellObject.PopUp("Would you like to register CScript as your default host for VBscript?", 0, "Register CScript", RegPopupType)
If (Err.Number <> 0) Then
ReportError ()
WScript.Echo "To run this script using CScript, type: ""CScript.exe " & WScript.ScriptName & """"
WScript.Quit (GENERAL_FAILURE)
WScript.Quit (Err.Number)
End If
' Check to see if the user pressed yes or no. Yes is 6, no is 7
If (RegCScript = 6) Then
ShellObject.RegWrite "HKEY_CLASSES_ROOT\VBSFile\Shell\Open\Command\", "%WINDIR%\System32\CScript.exe //nologo ""%1"" %*", "REG_EXPAND_SZ"
ShellObject.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Classes\VBSFile\Shell\Open\Command\", "%WINDIR%\System32\CScript.exe //nologo ""%1"" %*", "REG_EXPAND_SZ"
' Check if PathExt already existed
CurrentPathExt = ShellObject.RegRead("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PATHEXT")
If Err.Number = &H80070002 Then
Err.Clear
Set EnvObject = ShellObject.Environment("PROCESS")
CurrentPathExt = EnvObject.Item("PATHEXT")
End If
ShellObject.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PATHEXT", CurrentPathExt & ";.VBS", "REG_SZ"
If (Err.Number <> 0) Then
ReportError ()
WScript.Echo "Error Trying to write the registry settings!"
WScript.Quit (Err.Number)
Else
WScript.Echo "Successfully registered CScript"
End If
Else
WScript.Echo "To run this script type: ""CScript.Exe adsutil.vbs <cmd> <params>"""
End If
Dim ProcString
Dim ArgIndex
Dim ArgObj
Dim Result
ProcString = "Cscript //nologo " & WScript.ScriptFullName
Set ArgObj = WScript.Arguments
For ArgIndex = 0 To ArgCount - 1
ProcString = ProcString & " " & Args(ArgIndex)
Next
'Now, run the original executable under CScript.exe
Result = ShellObject.Run(ProcString, 0, True)
WScript.Quit (Result)
End If
End Sub
Lien vers le fichier : cliquez ici
Article(s) suivant(s)