附加内容和copyhere之间的权限不同?

时间:2019-04-02 10:26:45

标签: powershell exec comobject

我想从服务器上的Cmd执行中启动Powershell脚本。

问题:为了方便起见,这些版本已经过时了,并且不允许使用任何额外的软件。

将ZIP下载到文件夹的代码在服务器上执行时(添加内容ZIP到路径)完全可以正常工作,但是当我尝试使用.copyhere(zipitem,1024)时,什么都没有发生。如果没有1024 Option,那就更糟了,什么也不做,被困住了。

当我在lokal cmd上启动相同的脚本时,它也可以正常工作。

function handleZIP($filename,$filepath){ 
 $file_source = Get-ChildItem -Path (Join-Path -Path $filepath -ChildPath 
 $filename)
 $shell = new-object -com shell.application 
 $items = $shell.NameSpace($file_source.FullName).items()
 $temp = $shell.Namespace((Get-ChildItem -Path $filepath.FullName))

 for($i=$items.Count-1;$i -ge 0;$i--){
   $item = $items.item($i)
   $tempfile=$filepath+$item.Name
   $temp = $shell.Namespace($filepath)
   $temp.copyhere($item,[System.Int32]1556)  <--Problem
 } 
} 

是否有一种方法可以更好地处理错误,以使您有所了解或对System .___ Com对象使用Add-Content而不是.copyhere?

0 个答案:

没有答案