WIA.DeviceManager.DeviceInfos.Count = 0 ist. Warum?
Ich versuche zu identifizieren, die den Scanner an den computer angeschlossen. Eine der möglichen Lösungen ist die Verwendung von WIA (Windows Image Acquisition Automation Library).
Diese waren meine Aktionen so weit:
- Download wiaaut.dll
- Kopieren Sie es in system32
- Registrieren Sie es mit "regsvr32 wiaaut.dll" (erfolgreich)
- "Verweis hinzufügen" zu meinem Projekt in Visual Studio.NET
- Überprüfen, dass die Windows-Bilderfassung (WIA) - Dienst ausgeführt wird
Nächsten, füge ich hinzu und Debuggen Sie den folgenden code:
WIA.DeviceManager manager = new WIA.DeviceManagerClass();
string deviceName = "";
foreach (WIA.DeviceInfo info in manager.DeviceInfos)
{
if (info.Type == WIA.WiaDeviceType.ScannerDeviceType)
{
foreach (WIA.Property p in info.Properties)
{
if (p.Name == "Name")
{
deviceName = ((WIA.IProperty)p).get_Value().ToString();
Console.WriteLine(deviceName);
}
}
}
}
Aber, der manager.DeviceInfos ist immer leer. Ich habe 2 Scanner angeschlossen, einer von Ihnen zeigt in der Systemsteuerung->Scanner und Kameras, die man nicht, und beide zeigen unter "Imaging Devices" im Geräte-manager.
Jede Anregung auf, warum keiner erscheint in WIA.DeviceManager.DeviceInfos?
Läuft auf Windows XP Service Pack 2
- Ich habe das gleiche problem - hast du eine Lösung dafür?
Du musst angemeldet sein, um einen Kommentar abzugeben.
versuchen Sie es mit dieser Klasse:
}
versuchen Sie dies:
dies wird zeigen, wie ein Fehler auf visual studio, aber wenn Sie drücken Sie die f5-Taste kompilieren.
und laufen wird..
Ich die Arbeit mit dieser in java also, vielleicht ist mein Tipp nicht richtig ist, aber ich verwende deine beschriebenen Art und Weise und nur für windows vista und höher...
so wie es aussieht sind Sie mit wia 2.0, aber für windows ME und XP, die Sie verwenden sollten wia 1.0
In MSDN es beschrieben wird..
vielleicht hilft es ja
Versuchen, ändern Sie die Zeile :
und ersetzen mit:
Ich hoffe, dass ich dir geholfen habe.