У меня есть сканер EPSON Perfection V370 Photo, и я пытаюсь автоматически сканировать его несколько раз в день в течение месяца (скажем, раз в час или около того, я хочу контролировать время) и автоматически сохранять сканирование как TIFF или JPEG с их именем, включая точное время сканирования.
У меня нет опыта в создании файла сценария, поэтому, если вы сможете объяснить все это и показать мне используемый файл, это будет очень цениться.
До сих пор я использовал Powershell, но не могу указать точное имя файла:
$deviceManager = new-object -ComObject WIA.DeviceManager
$device = $deviceManager.DeviceInfos.Item(1).Connect()
$imageProcess = new-object -ComObject WIA.ImageProcess
$wiaFormatBMP = "{B96B3CAB-0728-11D3-9D7B-0000F81EF32E}"
$wiaFormatPNG = "{B96B3CAF-0728-11D3-9D7B-0000F81EF32E}"
$wiaFormatGIF = "{B96B3CB0-0728-11D3-9D7B-0000F81EF32E}"
$wiaFormatJPEG = "{B96B3CAE-0728-11D3-9D7B-0000F81EF32E}"
$wiaFormatTIFF = "{B96B3CB1-0728-11D3-9D7B-0000F81EF32E}"
foreach ($item in $device.Items) {
$image = $item.Transfer()
}
$imageProcess.Filters.Add($imageProcess.FilterInfos.Item("Convert").FilterID)
$imageProcess.Filters.Item(1).Properties.Item("FormatID").Value = $wiaFormatJPEG
$imageProcess.Filters.Item(1).Properties.Item("Quality").Value = 5
$image = $imageProcess.Apply($image)
$filename = "$([Environment]::GetFolderPath("Desktop"))\Scan {0}.jpg"
$index = 0
while (test-path ($filename -f $index)) {[void](++$index)}
$filename = $filename -f $index
$image.SaveFile($filename)
& $filename