2016-12-05 42 views
0

我有兩個腳本在vbs和蝙蝠來改變計算機上的壁紙。它看起來像這樣:VBScript將文件複製到多臺電腦

VBS:

Set oShell = CreateObject("WScript.Shell") 
sWallPaper = "\\server\Shares\folder1\folder2\test\wallpapertest.png" 
oShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", sWallPaper 
oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True 

BAT:

@echo off 
C:\programdata\microsoft\windows\start menu\programs\startup\wallpaper.vbs /TIMER:00 /SILENT /NOLICPROMPT 

我的文件手動複製到C:\ ProgramData \微軟\的Windows \開始菜單\程序\啓動所有機器。

它工作正常,但現在我想將它自動複製到使用其主機名的更多機器。我需要做什麼?我不知道我應該從哪裏開始。我想我需要第二個VBS腳本。有沒有人有腳本來複制多臺計算機上的文件?

+2

在域環境中,您可以通過GPO爲任何用戶設置壁紙。 –

+0

難道你不能只是說'pushd \\ hostname \ c $ \ copy文件popd'嗎? – geisterfurz007

+0

alex-k是的,但在這種情況下我不能使用GPO。 @ geisterfurz007是的,這樣的事情,但我需要vbscript –

回答

0

如果您擁有管理員權限,則可以訪問主機上的管理共享。管理員股可以像\\主機名來訪問\ C $ \ ThefolderwhereyouwantoCopy \ FILENAME.TXT(C $表示你的驅動器)

只需使用FSO複製命令複製文件...

Set objFSO = CreateObject("Scripting.FileSystemObject") 
strHostPath = "\\HostName\C$\TargetFolder" 
objFSO.CopyFile (CopyFromPath ,strHostPath,true) 'true overwrite existing files 

在otherhand,如果你沒有,你可以使用PowerShell從UNC路徑

Invoke-Command -ScriptBlock ([scriptblock]::Create("Copy-Item -Path `"\\UNC\path\File.png`" -Destination `"C:\targetfolder\File.png`"")) -ComputerName hostnameYouwanttoRunOn 

注意複製文件管理員權限:以上運行,你需要有在兩臺機器上啓用WinRM的。如果你想啓用它,這是一個link

相關問題