hoi , we hebben een script om lettertypes te gaan installeren over heel het netwerk, nu zitten we met een probleem de files met een underscore leveren een "wil u het bestand overschrijven" melding en dit wensen we echter niet , de underscore uit het script halen is echter geen oplossing
iemand een idee hoe ik dit best verwerk ?
FYI
ok ik heb een opslossing hier voor gevonden ik voer nog een extra script uit die de _ uit de files haalt
iemand een idee hoe ik dit best verwerk ?
Code:
Option Explicit
Const TIMEOUT=1
Dim objShell, objFSO, wshShell
Dim strFontSourcePath, objFolder, objFont, objNameSpace, objFile
Set objShell = CreateObject("Shell.Application")
Set wshShell = CreateObject("WScript.Shell")
Set objFSO = createobject("Scripting.Filesystemobject")
Wscript.Echo " Install Fonts "
strFontSourcePath = "C:\FONTS"
If objFSO.FolderExists(strFontSourcePath) Then
If objFSO.FolderExists("C:\Users\") Then
Set objNameSpace = objShell.Namespace(strFontSourcePath)
Set objFolder = objFSO.getFolder(strFontSourcePath)
For Each objFile In objFolder.files
If LCase(right(objFile,4)) = ".ttf" OR LCase(right(objFile,4)) = ".otf" Then
If objFSO.FileExists("C:\Windows\Fonts\" & objFile.Name) Then
'Wscript.Echo "Font already installed: " & objFile.Name'
Else
Set objFont = objNameSpace.ParseName(objFile.Name)
objFont.InvokeVerb("Install")
Wscript.Echo "Installed Font: " & objFile.Name
Set objFont = Nothing
End If
End If
Next
Else
Wscript.Echo "Font Source Path does not exists"
End If
End If
ok ik heb een opslossing hier voor gevonden ik voer nog een extra script uit die de _ uit de files haalt
Code:
Dim sName
Dim fso 'File system object'
Dim fol
Set fso = WScript.CreateObject("Scripting.FileSystemObject")
'verkrijg huidige map'
Set fol = fso.GetFolder("C:\FONTS")
'ga door de bestande'
For Each fil In fol.Files
'kijk voor een underscore'
If InStr(1, fil.Name, "_") <> 0 Then
sName = Replace(fil.Name, "_", " ")
'hernoem'
fil.Name = sName
End IF
NEXT
Laatst bewerkt: