Forum: PC-Programmierung USB-Port finden mit VB.Net?


von E. V. (littleunwell)


Lesenswert?

Ich will von einem Chip-Kartenleser, den ich über USB am PC stecken hab, 
Daten auslesen und weiß nichtmal wie ich den USB-Port ansprechen kann.

Bitte um Hilfe! Ich hab schon so viel gegoogelt und komme auf keinen 
grünen Zweig.

von TK (Gast)


Lesenswert?

Mal ne dumme Frage.
Wenn Du einen Kartenleser am PC hast, dann muss doch auch ein 
Wechsellaufwerk von Windows erkannt werden. Dann bekommst du doch auch 
einen Laufwerksbuchstaben. Damit solltest du doch in der Lage sein auf 
den Kartenleser / Inhalt der Karte(n) zurückzugreifen. Dann ist es doch 
egal, ob der am USB oder sonstwo hängt (oder hab ich jetzt da was falsch 
verstanden??)

huibuh07

von E. V. (littleunwell)


Lesenswert?

Tja also - er wird erkannt. scheint im Geräte-Manager auch auf. aber am 
Arbeitsplatz nicht... weshalb ich auch nicht weiß welcher Buchstabe 
dafür vergeben wurde.

Ich will ja auch nicht auf den Kartenleser zugreifen, sondern auf die 
Chip-Karte. Auf dieser Karte befindet sich ein Zertifikat, dessen Inhalt 
ich abspeichern will.

Und ich absolut keinen Schimmer, da ich soetwas noch nie gemacht habe... 
Kannst du mir da weiterhelfen? Ich bin echt schon am verzweifeln...

von Arc N. (arc)


Lesenswert?

Falls es um sowas wie z.B. die CHIPDRIVEs von Towitoko geht, stellen die 
Hersteller normalerweise PC/SC-Treiber bereit.

Spezifikation
http://www.pcscworkgroup.com/specifications/specdownload.php

Benutzung des APIs mit dem Net Framework
http://www.codeproject.com/smartclient/smartcardapi.asp

Linux/BSD-Bibliothek
http://www.libchipcard.de/

von E. V. (littleunwell)


Lesenswert?

Arc Net wrote:
> Falls es um sowas wie z.B. die CHIPDRIVEs von Towitoko geht, stellen die
> Hersteller normalerweise PC/SC-Treiber bereit.


Ja das ist mir klar... hab auch schon den Treiber. Gerät meldet sich 
auch. Ich habe es ja auch im Geräte-Manager mitsamt allen Details. Ich 
seh es nur nicht am Arbeitsplatz.

Kannst du mir sonst weiterhelfen?

von Reimar G. (grasbon)


Lesenswert?

Hallo

da stellt sich bei dir erst einmal die Frage, warum
die die Karte nicht als Wechselspeichermedium im Arbeitslatz
/Explorer auftaucht. Das Problem ist wohl schon bekannt:
http://www.office-loesung.de/ftopic69817_0_0_asc.php

Übrigens, was sich als Wechselspeichermedium anmeldet ist der
Kartenleser. Und der sollte auch im Explorer/Arbeisplatz erscheinen.
Zugriff gibt's dann natürlich erst auf eine eingesteckte Speicher-
karte, die dann wie ein Laufwerk (mit Buchstabe) erscheint. Hast
du mal in der Computerverwaltung nachgesehen? Laufwerksbuchstaben-
vergabe usw?
Hast du das Problem denn auch mit anderen Kartenlesern? Die
Dinger sind nämlich recht unterschiedlich und arbeiten unter-
schiedlich gut mit den entsprechenden USB-Hostchips zusammen.
Manchemal klappt's gut, manchmal garnicht. Auch die Art der
Karte ist wichtig. Flashkarten vom Typ Compactflash lassen
sich fast immer problemlos ansprechen, bei anderen Typen
kanns da schonmal kräfig rappeln.

Grüße,
Reimar

von E. V. (littleunwell)


Lesenswert?

Reimar Grasbon wrote:

> Übrigens, was sich als Wechselspeichermedium anmeldet ist der
> Kartenleser. Und der sollte auch im Explorer/Arbeisplatz erscheinen.
> Zugriff gibt's dann natürlich erst auf eine eingesteckte Speicher-
> karte, die dann wie ein Laufwerk (mit Buchstabe) erscheint. Hast
> du mal in der Computerverwaltung nachgesehen? Laufwerksbuchstaben-
> vergabe usw?

ich habe auch in der datenträgerverwaltung nachgesehen und da scheint 
der kartenleser auch nicht auf...

von Arc N. (arc)


Lesenswert?

E. V. wrote:
> Ja das ist mir klar... hab auch schon den Treiber. Gerät meldet sich
> auch. Ich habe es ja auch im Geräte-Manager mitsamt allen Details. Ich
> seh es nur nicht am Arbeitsplatz.

Wenn es um Chipkarten und keine Speicherkarten ala SDCard, CompactFlash 
etc. geht, dann werden diese auch nicht auf dem Arbeitsplatz auftauchen, 
sondern sind nur über die entsprechenden APIs ansprechbar.

http://msdn2.microsoft.com/en-us/library/ms953430(msdn.10).aspx
http://msdn2.microsoft.com/en-us/library/ms953432(msdn.10).aspx
http://msdn2.microsoft.com/en-us/library/aa374731.aspx#smart_card_functions



von E. V. (littleunwell)


Lesenswert?

Muss das alles nicht noch einfacher gehen? mit der GUID oder so? (was 
ich natürlich auch nicht weiß wies geht, wobei ich aber gerade dabei bin 
dies herauszufinden)

von E. V. (littleunwell)


Lesenswert?

Ich weiß immer noch nicht wie ich den GUID verwenden kann bzw. welche? 
Geräteklasse-GUID oder Bustyp-GUID? Oder ginge das nicht viel einfacher 
mit der Geräte-ID?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Warum soll da irgendetwas über eine GUID "gehen"?

Du hast ein Gerät, für das es einen Devicetreiber gibt, und für das es 
definierte Programmierschnittstellen gibt, nämlich entweder direkt als 
Betriebssystemfunktionen (wie von "arc net" nahegelegt) oder aber als 
Funktionen in einer zum Devicetreiber gehörenden DLL bzw. sonstwie in 
einem zum Devicetreiber gehörenden SDK.

Über diese Funktionen wird mit dem Gerät kommuniziert, fertig.

Also: Sieh Dir an, wer der Hersteller Deines Chipkartenlesers ist, sieh 
Dir an, ob dieser Hersteller ein SDK oder zumindest Programmierbeispiele 
für seinen Chipkartenleser zur Verfügung stellt ...

von E. V. (littleunwell)


Lesenswert?

Rufus t. Firefly wrote:
> Warum soll da irgendetwas über eine GUID "gehen"?

Weiß ich nicht, es wurde mir in einem anderen Forum empfohlen...

> Also: Sieh Dir an, wer der Hersteller Deines Chipkartenlesers ist, sieh
> Dir an, ob dieser Hersteller ein SDK oder zumindest Programmierbeispiele
> für seinen Chipkartenleser zur Verfügung stellt ...

nein... tut er nicht... das ist ja leider das problem

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Na, wenn er das nicht tut, dann wird wohl die erste Variante sinnvoll 
sein, nämlich die Nutzung der von "arc net" nahegelegten 
Betriebssystemfunktionen.

Den ersten Link ersetzt Du besser durch

http://msdn2.microsoft.com/en-us/library/ms953430.aspx

Ansonsten: Von wem ist denn der Kartenleser und was für Karten willst Du 
damit ansteuern?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.