2014-04-15 3 views
0

Windows 글꼴 폴더에 여러 글꼴을 복사해야하는 스크립트를 만들었습니다. 내가 실행할 때, 나는 복사하고 싶은 파일 이름의 출력을 받지만 아무것도 복사하지 않는다. 그것은 For 루프를 제거하고 파일 이름을 지정할 때 작동합니다. 어떤 도움을 주셔서 감사합니다.CopyHere가 예상대로 작동하지 않습니다.

Const FONTS = &H14& 
sFolder = "c:\FontInstalls\" 
Set objShell = CreateObject("Shell.Application") 
Set objFolder = objShell.Namespace(FONTS) 
Set objFSO = CreateObject("Scripting.FileSystemObject") 

For Each oFile In objFSO.GetFolder(sFolder).Files 
    If UCase(objFSO.GetExtensionName(oFile.Name)) = "TTF" Then 
    objFolder.CopyHere(oFile) 
    wscript.echo(oFile) 
    End if 
Next 

답변

1

글꼴을 복사하지 않고 설치해야합니다. 기본 파일이 아닌 쉘의 객체를 복사하십시오. 쉘은 fonts 폴더에 복사 된 글꼴을 설치합니다.

다음은 파일을 zip에 추가해야하는 개체입니다.

Set objShell = CreateObject("Shell.Application") 
Set Ag=Wscript.Arguments 
set WshShell = WScript.CreateObject("WScript.Shell") 

Set SrcFldr=objShell.NameSpace(Ag(1)) 
Set DestFldr=objShell.NameSpace(Ag(0)) 
Set FldrItems=SrcFldr.Items 
DestFldr.CopyHere FldrItems, &H214 
Msgbox "Finished" 
+0

감사합니다. Tony, 나 자신을 알아낼 수있는 충분한 정보. –

관련 문제