当远程计算机可能是 Windows 7 或 XP 时,如何将文件复制到远程计算机的桌面?

How to copy a file to a remote computer's desktop when the remote computer could be Windows 7 or XP?

我正在尝试创建一个将文件复制到远程用户桌面的脚本。两台计算机将位于同一域中的同一网络上。

到目前为止,我有一个批处理脚本,类似于:

@echo off
set /p user="Username of remote user: "
set /p hostname="Target computer name: "
xcopy [path to local file] "\%hostname%\c$\Users\%user%\Desktop\"

以上脚本只适用于Windows 7. 有没有办法让脚本在复制前检测父文件夹是否存在,如果存在则复制?还是可以通过环境变量来实现?

如果我让上面的脚本 运行 保持原样并且目标计算机正在使用 Windows XP,那么将创建一个新的目录树,这是我想避免的.

如果我正在检查本地系统,

https://support.microsoft.com/kb/65994 会起作用,但我正在尝试查看远程计算机的目标文件夹是否存在。我不明白这篇文章是如何回答这个问题的。

总是使用XP版本:

xcopy [path to local file] "\%hostname%\c$\Documents and Settings\%user%\Desktop\"

事实证明,MS 意识到会发生这种情况,并在 Documents and SettingsUsers 之间设置了一个隐藏的路口。你不能 CD 到它或在其中 DIR,但你仍然可以将它用于任何你会使用 Users 的东西。