wo schreibt ein usb port die daten rein?

2 Antworten

Es gibt dafür möglicherweise bereits eine Bibliothek. Es kommt jedoch auf die Programmiersprache an, wie die heißt (falls vorhanden).


Programtech 
Beitragsersteller
 24.02.2025, 20:11

C aber ich möchte keine Bibliothek verwenden (die ich installierem muss)

Enallage  24.02.2025, 20:21
@Programtech

Uh, okay, das ist dann ein wenig komplexer. Du musst da direkt über die Widnows API auf die Schnittstelle zugreifen. Dazu benötigst du wahrscheinlich Funktionen wie SetupDiGetClassDevs (für Liste der Geräte), SetupDiEnumDeviceInterfaces und SetupDiGetDeviceInterfaceDetail (Eigenschaften der Geräte abrufen). Dann je nach Formatierung des USB-Sticks muss die Lese- bzw. Schreibfunktion angepasst werden.

Programtech 
Beitragsersteller
 25.02.2025, 19:21
@Enallage
 Habe nur usb.h gefunden aber das ist glaube ich nur zu Initialisierung
Enallage  25.02.2025, 19:23
@Programtech

Du brauchst meines Wissens nach die windows.h und evtl die setupapi.h, wobei du hier ja dann wieder Bibliotheken einbindest, was du ja nicht wolltest

Programtech 
Beitragsersteller
 25.02.2025, 21:21
@Enallage

Danke aber ich wurde gerne die rohdaten vom speicher auslesen ....

Enallage  25.02.2025, 21:29
@Programtech

Das kannst du nur mit der WindowsAPI. Über diese greifst du auf die USB-Ports an sich zu und kannst dann die Rohdaten auslesen. Ohne diese Bibliothek wird es leider schier unmöglich da irgendwelche Daten zu bekommen. Die API stellt lediglich die Funktionen bereit. Wenn du es ohne Windows API machen willst, musst du einen treiber schreiben, der im Kernel Mode direkten Zugriff auf das Laufwerk hat, da direkter Zugriff unter Windows im User Mode (normaler Modus für Programme) aus Sicherheitsgründen nur mit der WindowsAPI geht

Enallage  25.02.2025, 21:31
@Enallage

Linux ist da eigentlich besser für meines Ermessens nach

Programtech 
Beitragsersteller
 25.02.2025, 21:32
@Enallage

Das heißt ich kann keinen treiber schreiben der bei allen Betriebssystemen geht ohne das die Sicherheits fraglich ist

Enallage  25.02.2025, 21:35
@Programtech

Das ist in der Tat sehr komplex. Für einen treiber würde ich dir auch eher das Windows Developer Kit empfehlen oder wie das hieß. WDK glaub in Visual Studio. Den dann auch nochmal in Linux ist nochmal ne andere Sache

Entweder du liest die Daten vom USB-Laufwerk, oder du verarbeitest die Rohdaten des USB-Ports. Dann müsstest du auf den Treiber Zugriff haben. Vielleicht hilft dir die WinUSB API unter Windows weiter.

Woher ich das weiß:Berufserfahrung – Ich mach das jeden Tag!

Programtech 
Beitragsersteller
 25.02.2025, 21:21

Danke aber kann ich die Rohdaten direkt aus dem speicher bekommen oder muss uch uber die windows api gehen