pixel0815
Goto Top

Drive Mapping einer WIA Kamera unter Windows 7

Hallo liebe Gemeinde,

gibt es eine Möglichkeit per Powershell oder ähnliches eine Kamera die via WIA 2.0 ( windows 7 ) angeschlossen ist ein Laufwerk zuzuweisen bzw. die Fotos auf der Kamera in einen Ordner zu übertragen, den als Laufwerk anzeigen und per Knopfdruck zu löschen auf Kamera und den Inhalt des Ordners?
Hat jemand mal sowas gemacht?

Lg aus Hamburg
Heiko

Content-ID: 265298

Url: https://administrator.de/forum/drive-mapping-einer-wia-kamera-unter-windows-7-265298.html

Ausgedruckt am: 14.04.2025 um 09:04 Uhr

117643
117643 05.03.2015 um 09:14:20 Uhr
Goto Top
WIA ist eine Schnittstelle um Fotos zu machen, vergleichbar mit einem Scanner und dessen Scannersoftware...
da gibts keine Laufwerke oder Ordner...

Wenn die Kamera über einen Massenspeicher verfügt auf dem Bilder gespeichert werden, sollte das Laufwerk automatisch verbunden werden
114757
114757 05.03.2015 aktualisiert um 09:20:13 Uhr
Goto Top
Yup das geht .... Aber Drivemapping ?? Nope, das geht via WIA anders ...
https://msdn.microsoft.com/en-us/library/windows/desktop/ms630308(v=vs.8 ...

WIA kannst du auch via COM-Object in PS ansprechen ....
$wia = New-Object -Com "Wia.Script"

Gruß jodel32
pixel0815
pixel0815 05.03.2015 aktualisiert um 09:16:28 Uhr
Goto Top
Das weiß ich. Aber es ist anders nicht möglich :o)
pixel0815
pixel0815 05.03.2015 um 10:58:58 Uhr
Goto Top
Ich suche sowas wie hier

Set objDeviceManager = CreateObject("WIA.DeviceManager")  

Set objDeviceInfo = objDeviceManager.DeviceInfos(1)
WScript.Echo objDeviceInfo.Properties("Name")  

Set objDevice = objDeviceInfo.Connect

For Each objFolder In objDevice.Items
    If objFolder.Properties("Item Name") = "Images" Then  
        For Each objPicture In objFolder.Items
            WScript.Echo objPicture.Properties("Item Name")  
            Set objImageFile = objPicture.Transfer
            objImageFile.SaveFile "C:\Scripts\" _  
                & objPicture.Properties("Item Name") & ".jpg"  
        Next
    End If
Next

http://helvick.blogspot.de/2007/08/camera-automation-with-powershell-pa ...

Dort gibt es auch ein PS Script aber das funktioniert leider nicht mehr.
Die Bilder sollen in einen Ordner transferiert werden, und die Fotos von der Kamera gelöscht.

           # We have an image on the camera that we need to tidy up
            $ActiveCamera.items.Remove($ActiveCamera.items.Count)
colinardo
colinardo 05.03.2015 aktualisiert um 11:30:21 Uhr
Goto Top
Hallo Heiko,
hier ein einfaches Beispiel, mit Powershell:
$folderSave = "D:\AusgabePfad"  
$wiaDM = New-Object -ComObject WIA.DeviceManager
if($wiaDM.DeviceInfos.Count -gt 0){
    $dlg = New-Object -ComObject WIA.CommonDialog
    $camera = $dlg.ShowSelectDevice()
    $items =  $dlg.ShowSelectItems($camera,0,131072, $false)
    $items | %{
        $filename = $_.Properties | ?{$_.Name -eq "Item Name"} | select -Expand Value  
        $extension = $_.Properties | ?{$_.Name -eq "Filename extension"} | select -Expand Value  
        $targetPath = "$folderSave\$filename.$extension"  
        write-host "Speichere $targetPath ..." -ForegroundColor Green  
        $img = $_.Transfer()
        $img.SaveFile($targetPath)
    }
    $dlg = $null
    $camera = $null
}else{
    write-host "Keine Kamera verbunden"  
}
$wiaDM = $null
Für das automatisierte Wählen alle Files muss man wissen ob die Files in Unterordnern organisiert sind, dann kann man das auch ohne Auswahldialog machen. Muss ich später noch mal in die Doku schauen ...
Und ob man die Files via WIA löschen kann kommt auch auf die Kamera drauf an, bei manchen geht das nicht. Ich habe hier leider so ein Modell.

Grüße Uwe
pixel0815
pixel0815 05.03.2015 um 12:15:59 Uhr
Goto Top
Hallo Uwe,

es läuft einwandfrei.
Die Kamera unterstützt das löschen über WIA. Das weiß ich sogar :o

Liebe Grüße
Heiko