Tags: vbscript

Sort by: Date / Title /

  1. 1 year ago by skymaxs
    Il faut créer un fichier VBS contenant ceci :
    
    ----8<------8<------8<------8<------8<------8<--
    ' *** Script start ***
    Set oShell = CreateObject("WScript.Shell")
    
    oShell.Run "toto.bat", 0, True 
    ----8<------8<------8<------8<------8<------8<--
    
    Cela permet d'exécuter toto.bat sans fenêtre de commande DOS.
  2. 1 year ago by obiwan
    Option Explicit
    
    Sub DeleteRegKeyAndSubKeys(strRegTree, strKeyPath)
    'strRegTree = 	"HKEY_CLASSES_ROOT"
    '				"HKEY_CURRENT_USER"
    '				"HKEY_LOCAL_MACHINE"
    '				"HKEY_USERS"
    '				"HKEY_CURRENT_CONFIG"
    'strKeyPath is the registry key to delete. Example :
    '				"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MySoftware"
    
    	Const HKEY_CLASSES_ROOT		= &H80000000
    	Const HKEY_CURRENT_USER		= &H80000001
    	Const HKEY_LOCAL_MACHINE	= &H80000002
    	Const HKEY_USERS			= &H80000003
    	Const HKEY_CURRENT_CONFIG	= &H80000005
    
    	Dim hTree, strComputer, oReg, arrSubKeys, strSubKey
    
    	Select Case strRegTree
    		Case "HKEY_CLASSES_ROOT"	hTree = HKEY_CLASSES_ROOT
    		Case "HKEY_CURRENT_USER"	hTree = HKEY_CURRENT_USER
    		Case "HKEY_LOCAL_MACHINE"	hTree = HKEY_LOCAL_MACHINE
    		Case "HKEY_USERS"			hTree = HKEY_USERS
    		Case "HKEY_CURRENT_CONFIG"	hTree = HKEY_CURRENT_CONFIG
    	End Select
    	
    	strComputer = "."
    	Set oReg = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
    
        oReg.EnumKey hTree, strKeyPath, arrSubKeys 
    
        If IsArray(arrSubKeys) Then 
            For Each strSubKey In arrSubKeys 
                DeleteRegKeyAndSubKeys strRegTree, strKeyPath & "\" & strSubKey 
            Next 
        End If 
    
        oReg.DeleteKey hTree, strKeyPath 
    
    End Sub
    
    'DeleteRegKeyAndSubKeys "HKEY_LOCAL_MACHINE", "SOFTWARE\Classes\Installer\Products\B1E406903FD90804C9B350FA2EF723D4\"
  3. 1 year ago by obiwan
    Option Explicit
    
    Function FirstVersionSupOrEqualToSecondVersion(strFirstVersion, strSecondVersion)
    	
    	Dim arrFirstVersion,  arrSecondVersion, i, iStop, iMax
    	Dim iFirstArraySize, iSecondArraySize
    	Dim blnArraySameSize : blnArraySameSize = False
    	
    	If strFirstVersion = strSecondVersion Then
    		FirstVersionSupOrEqualToSecondVersion = True
    		Exit Function
    	End If
    	
    	If strFirstVersion = "" Then
    		FirstVersionSupOrEqualToSecondVersion = False
    		Exit Function
    	End If
    	If strSecondVersion = "" Then
    		FirstVersionSupOrEqualToSecondVersion = True
    		Exit Function
    	End If
    
    	arrFirstVersion = Split(strFirstVersion, "." )
    	arrSecondVersion = Split(strSecondVersion, "." )
    	iFirstArraySize = UBound(arrFirstVersion)
    	iSecondArraySize = UBound(arrSecondVersion)
    	
    	If iFirstArraySize = iSecondArraySize Then
    		blnArraySameSize = True
    		iStop = iFirstArraySize
    		For i=0 To iStop
    			If CInt(arrFirstVersion(i)) < CInt(arrSecondVersion(i)) Then
    				FirstVersionSupOrEqualToSecondVersion = False
    				Exit Function
    			End If
    		Next
    		FirstVersionSupOrEqualToSecondVersion = True
    	Else
    		If iFirstArraySize > iSecondArraySize Then
    			iStop = iSecondArraySize
    		Else
    			iStop = iFirstArraySize
    		End If
    		For i=0 To iStop
    			If CInt(arrFirstVersion(i)) < CInt(arrSecondVersion(i)) Then
    				FirstVersionSupOrEqualToSecondVersion = False
    				Exit Function
    			End If
    		Next
    		If iFirstArraySize > iSecondArraySize Then
    			FirstVersionSupOrEqualToSecondVersion = True
    			Exit Function
    		Else
    			For i=iStop+1 To iSecondArraySize
    				If CInt(arrSecondVersion(i)) > 0 Then
    					FirstVersionSupOrEqualToSecondVersion = False
    					Exit Function
    				End If
    			Next
    			FirstVersionSupOrEqualToSecondVersion = True
    		End If
    	End If
    End Function
    
    
    Dim strFirstVers : strFirstVers = "1.1.0.1.0."
    Dim strSecondVers : strSecondVers = "1.1.0.1.0"
    
    If FirstVersionSupOrEqualToSecondVersion(strFirstVers,strSecondVers) Then
    	MsgBox strFirstVers & " >= " & strSecondVers
    Else
    	MsgBox strFirstVers & " < " & strSecondVers
    End If
  4. sponsorised links
  5. 1 year ago by obiwan
    Function KillProcess(strProcessName)
    	Dim oProcess
    	KillProcess = False
    	For Each oProcess in GetObject("winmgmts:").InstancesOf("Win32_Process")
    		If InStr(UCase(strProcessName), UCase(oProcess.Name)) <> 0 Then
    			oProcess.Terminate()
    			KillProcess = True
    			Exit Function
    		End If
    	Next
    End Function
    
    MsgBox KillProcess("Notepad.exe")
  6. 1 year ago by obiwan
    Function ServiceStarted(strServiceName)
    	Dim objWMI
    	On Error Resume Next
    	Set objWMI = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
    	If Err <> 0 Then
    		WScript.Echo "Erreur WMI. Description de l'erreur : " & Err.Description
    		On Error GoTo 0
    		ServiceStarted = False
    		Exit Function
    	End If
    	On Error GoTo 0
    	Dim colServiceList
    	Set colServiceList = objWMI.ExecQuery _
    	("Select * from Win32_Service where Name = '"& strServiceName &"'")
    	Dim objService
    	If (colServiceList.Count = 0) Then
    		WScript.Echo "Le service """ & strServiceName & """ est introuvable !"
    		ServiceStarted = False
    		Exit Function
    	Else
    		For Each objService in colServiceList
    			If objService.State = "Running" Then
    				WScript.Echo "Le service """ & strServiceName & """ est démarré"
    				ServiceStarted = True
    				Exit Function
    			Else
    				WScript.Echo "Le service """ & strServiceName & """ n'est pas démarré"
    				ServiceStarted = True
    				Exit Function
    			End If
    		Next
    	End If
    End Function
    
    ServiceStarted "Computer browser"
  7. 1 year ago by obiwan
    Option Explicit
    
    Dim oFS : Set oFS = CreateObject("Scripting.FileSystemObject")
    
    Function FolderEmpty(strFolderPathName)
    	Dim oFiles, oFile, oFolder, oSubFolders, oSubFolder
    	Dim blnFileFound : blnFileFound = False
    	Set oFolder = oFS.GetFolder(strFolderPathName)
    	Set oFiles = oFolder.Files
    	If oFiles.Count > 0 Then
    		FolderEmpty = False
    		Exit Function
    	End If
    	Set oSubFolders = oFolder.SubFolders
    	For Each oSubFolder In oSubFolders
    		If Not FolderEmpty(oSubFolder.Path) Then
    			FolderEmpty = False
    			Exit Function
    		End If
    	Next
    	FolderEmpty = True
    End Function
    
    Dim strFolderPathName : strFolderPathName = "D:\Tests\Test"
    If FolderEmpty(strFolderPathName) Then
    	MsgBox "Le répertoire " & strFolderPathName & " est vide."
    Else
    	MsgBox "Le répertoire " & strFolderPathName & " contient un ou plusieurs fichiers."
    End If

First / Previous / Next / Last / Page 1 of 1 (6 posteets)