[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 for_flr 于 2022-3-18 16:46 编辑

批处理调用powershell可以完成。
  1. #@&cls&powershell "iex(gc '%~0'|out-string)"&pause&exit /b"
  2. if ([threading.thread]::CurrentThread.GetApartmentState() -ne "STA"){
  3.   powershell -sta
  4. }
  5. Add-Type -AssemblyName System.Windows.Forms
  6. #加载System.Windows.Forms
  7. $folder=get-date -f D
  8. if(!(test-path $folder)){md $folder}
  9. $folder=gi $folder
  10. $folder
  11. #根据日期建立文件夹$folder
  12. #也可以直接定义$folder="d:\aaa\bbb\test"
  13. $h=1
  14. $ms=$h*3600000
  15. $rate=800
  16. $loop=$ms/$rate
  17. #定义监控时间及频率,这里定义的1小时,每800毫秒检查一次剪贴板。
  18. function monitor{
  19.   $clipdata = [System.Windows.Forms.Clipboard]::GetDataObject()
  20.   $filetime=get-date -f MMddHHmmss
  21.   if ($clipdata.ContainsImage()) {
  22.     $clipdata.getimage().save("$folder\$filetime.jpg")
  23.     write-host "存储图片到文件$filetime+.jpg" -fore green
  24.   }
  25.   if($clipdata.containstext()){
  26.     $clipdata.gettext()+"`r`n"|ac $folder\text.txt
  27.     write-host "存储文字到文件text.txt" -fore green
  28.   }
  29.   if($clipdata.containsfiledroplist()){
  30.     copy $clipdata.getfiledroplist() $folder
  31.     write-host "复制文件到文件夹$folder" -fore green
  32.   }
  33.   [System.Windows.Forms.Clipboard]::clear()
  34.   write-host "监控剪贴板..."
  35.   Start-Sleep -Milliseconds $rate
  36. }
  37. for($i=1;$i -lt $loop;$i++){monitor}
  38. #根据前面定义的时长,循环执行
复制代码

TOP

返回列表