![]() |
USB-Geräte in Delphi(Prism)
Hallo, wollte mal fragen ob es grundsätzlich möglich ist auf USB-Geräte zuzugreifen. Es gibt ja keine universelle Klasse wie bei der seriellen Schnittstelle, da die Funktionsweise eine andere ist. Kann ich Beispielsweise auf das Videobild einer Webcam zugreifen und dieses darstellen? Ich weiß nicht in wie fern ich die USB-Treiber des Geräte dann einbinden müsste? Vielleicht kann mir jemand ein bisschen Hilfe geben oder mir grundsätzlich davon abraten dieses Thema weiter zu verfolgen*G*
|
Re: USB-Geräte in Delphi(Prism)
SUFU: HID-Device
|
Re: USB-Geräte in Delphi(Prism)
Zitat:
|
Re: USB-Geräte in Delphi(Prism)
Hi!
Zitat:
Grüße, Frederic |
Re: USB-Geräte in Delphi(Prism)
Wenn es speziell um Webcams geht, gibt es dafür sicher einige .NET-Wrapper:
![]() Ansonsten gäbe es noch die ![]() |
Re: USB-Geräte in Delphi(Prism)
Zitat:
SUFU: HID-Device |
Re: USB-Geräte in Delphi(Prism)
Bin jetzt auf WIA gestoßen (
![]() wiaVideo = new WiaVideoClass(); wiaVideo.CreateVideoByWiaDevID( wiaDeviceID, window.Handle, 0, 1 ); Hab die Verweise in Delphi wie beschrieben aufgenommen und unter uses eingetragen. WIALib, wiavideolib; Folgenden Code habe ich jetzt method MainForm.button1_Click(sender: System.Object; e: System.EventArgs); var wiavideo:WiaVideoClass; begin wiavideo:=wiaVideo.CreateVideoByWiaDevID('ID',prev iewPanel.handle,0,1); end; Bekomm jetzt den Fehler (PH2) Beste Übereinstimmung "WIAVIDEOLib.WiaVideoClass.CreateVideoByWiaDevID(b strWiaDeviceID: System.String; var hwndParent: WIAVIDEOLib._RemotableHandle; bStretchToFitParent: System.Int32; bAutoBeginPlayback: System.Int32)" passt nicht für Parameter 2, Parameter ist "System.Windows.Forms.Panel" sollte "WIAVIDEOLib._RemotableHandle" sein Ich habe einfach ein Panel zur Vorschau verwendet Und ich weiß nicht wie ich die ID die ein String sein soll herausfinde Wahrscheinlich ist es total logisch, aber ich sehs einfach nicht |
Re: USB-Geräte in Delphi(Prism)
Das Problem wird im Artikel sogar angesprochen, hast du wirklich die Dll daraus genommen?
Zitat:
|
Re: USB-Geräte in Delphi(Prism)
Bin am verzweifeln, der Fehler mit dem falschen Parameter ist weg, aber bring es einfach nicht zum Laufen. Weiß nicht ob WIA mit Prism nicht geht oder woran es liegt.
Code schaut jetzt so aus:
Delphi-Quellcode:
method MainForm.button1_Click(sender: System.Object; e: System.EventArgs);
var wiavideo:WiaVideoClass; begin wiavideo := wiaVideo.CreateVideoByWiaDevID('{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}\\0000', panel1.Handle, 0, 1); wiavideo.PreviewVisible := 1; wiavideo.Play; end; Fehlermeldung Fehler 1 (CE15) Typ stimmt nicht überein, <unknown type> kann nicht zu WIAVIDEOLib.WiaVideoClass zugewiesen werden DeviceID stimmt, gleiche ID in C# funktioniert [edit=Phoenix]Delphi-Tags eingefügt. Das nächste mal bitte selber machen. Mfg, Phoenix[/edit] |
Re: USB-Geräte in Delphi(Prism)
Delphi-Quellcode:
CreateVideoByWiaDevID ist eine Methode ohne Rückgabewert.
method MainForm.button1_Click(sender: System.Object; e: System.EventArgs);
begin var video := new WiaVideoClass(); video.CreateVideoByWiaDevID('{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}\\0000', panel1.Handle, 0, 1); video.PreviewVisible := 1; video.Play(); end; Du musst erst die Klasse erstellen und dann benutzen... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz