2009-08-26 3 views
2

VBScript를 사용하여 특정 폴더의 내용을 다른 폴더로 복사하려고합니다.VBScript를 사용하여 폴더 내용 복사

목표는 사용자의 AD 그룹을 나열한 다음 해당 그룹을 기반으로 특정 폴더 콘텐츠를 복사하는 것입니다.

현재 코드가 작동하지 않습니다.

Dim Group,User,objFSO,objFolder,source,target,StrDomain 

StrDomain = "domain.local" 
FolderBase = "\\domain.local\netlogon\workgrps\icons" 
Set net = CreateObject("wscript.network") 
Struser = net.username 
target = "\\fs1\users\"&net.username&"\Desktop\AppIcons\" 

DispUserInWhichGroup() 

Function DispUserInWhichGroup() 

On Error Resume Next 

Set objFSO=CreateObject("Scripting.FileSystemObject") 
Set User = GetObject("WinNT://" & strDomain & "/" & strUser & ",user") 

For Each Group In User.Groups 

source = FolderBase & Group.name 

Set objFolder = GetFolder(source) 

For Each file in objFolder.Files 
objFSO.CopyFile source &"\"& file.name, target&"\"&file.name 
Next 

Next 

End Function 

이 다양한 소스에서 함께 자갈길하고있다, 나는 그것의 가장 잘 확신 해요, 난 그냥 완전히 작동을 얻을 수 없습니다.

도움이 될 것입니다.

건배.

+0

"제대로 작동하지 않음"으로 어떤 행동을보고 있습니까? –

+0

아무 것도. 나는 어떤 오류도 내지 않는다. wscript.echo를 사용하여 폴더 경로를 확인하는 방법에 대한 정보를 얻을 수는 있지만 파일 복사를 수행 할 수 없습니다. 폴더에 파일이 있지만 아무 일도 일어나지 않는 것 같습니다. – LukeR

답변

0

같은 방법을 복사 사용할 수 있습니다 복사 문에서 두 번째 \를 제거하십시오 당신의 함수를 호출하면 발생한 오류를 볼 수 있습니다.

EDIT : GetFolder에 개체를 지정해야한다고 생각합니다.

Set objFolder = objFSO.GetFolder(source) 
+0

좋습니다. 고맙습니다. 이제 GetFolder에 대한 형식 불일치 오류가 발생합니다. 적어도 지금 일어나는 일을 파악할 수 있습니다. – LukeR

+0

감사합니다. 지금 작동하게되었습니다. – LukeR

0

또한

For Each file in objFolder.Files 
    objFSO.CopyFile source & "\" & file.name, target & file.name 
Next 

당신이에서

On Error Resume Next 

줄을 제거 파일 객체가이

For Each file in objFolder.Files 
    file.Copy target & file.name 
Next 
+0

고마워,하지만 일할 수 없어. 나는 둘 다 시도했다. 나는 wscript.echo (file.name)를 사용하여 루프 내에서 파일 이름을 반향시킬 수 없다. 그래서 나는 더 큰 문제가 있다고 생각하게 만든다. 나는 약간의 오류가 던져지기를 바란다. 적어도 그 이상은 계속 될 것이다. 확실히 폴더에 파일이 있습니다. 나는 무엇이 잘못 될지 잘 모릅니다. – LukeR

0

대상 폴더가 존재하지 않지만, 지정해야합니다 :

C : \ v \ Z가 작동하지만 C : C로 Z를 \ C로 Z를 \ : \ 작동 안 할 것이다.

새 폴더가 존재해야 될 것 폴더 :

C : \ A가 존재해야하지만 C : \ v \ Z가 없습니다.

후행 슬래시를 생략되어야한다

C : C에 \ Z \ : \ \ Z가 작동하지만 C : C로 Z를 \는 \ v \ Z는 \ 작동하지 않을 것이다.

관련 문제