Bonjour à la communauté

Ci-dessous le code d'un petit projet qui devrait me donner les infos sur la carte d'identité
Pas d'erreur a la compil les messages d'activation, de carte insérée sont bien présent, mais lors de la lecture de la carte j'ai toujours le message ne peut lire la carte
J'ai essayer avec 3 cartes et toujours le même problème
dans " If Not My_eidCard.ReadId Then"
ReadId est un boolean
J'ai aussi essayer d'omettre cette clause If mais je ne lis rien du tout

Si quelqu'un vois le pourquoi, je suis preneur

Voici le tout
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
Imports EIDNative
 
Public Class EIDReaderX
      Public Structure StructEid
            Dim Nom As String
            Dim Prenom As String
            Dim Ville1 As String
            Dim Cp As String
            Dim Nationalite As String
            Dim NumeroNational As String
            Dim Sexe As String
            Dim NumeroMaison As String
            Dim Adresse As String
            Dim DateNaissance As Date
            Dim PlaceNaissance As String
            Dim NumeroCarte As String
            Dim TypeCarte As String
            Dim NumeroChips As String
            Dim Ville As String
            Dim CarteEidValideDe As Date
            Dim CarteEidValideTo As Date
            Dim NationaliteISO As String
            Dim Photo As Image
      End Structure
 
      Public Personne As StructEid = New StructEid
      Public WithEvents My_eidCard As EIDCard = New EIDCard
 
      Private Sub EIDReaderX_Load(sender As Object, e As EventArgs) Handles MyBase.Load
 
            ReadeEID(0)
            Label1.Text = Personne.Nom
 
      End Sub
 
      Private Sub eidCard_CardActivated(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles My_eidCard.CardActivated
            MsgBox("Activé")
      End Sub
 
      Private Sub eidCard_CardError(ByVal sender As System.Object, ByVal e As EIDNative.EIDErrorEventArgs) Handles My_eidCard.CardError
            EIDNative.EIDCard.GetErrorStr(Err.ToString)
      End Sub
 
      Private Sub eidCard_CardInserted(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles My_eidCard.CardInserted
            MsgBox("Carte insérée")
      End Sub
 
      Private Sub eidCard_CardInvalid(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles My_eidCard.CardInvalid
            MsgBox("Carte invalide")
      End Sub
 
      Private Sub eidCard_CardRemoved(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles My_eidCard.CardRemoved
            MsgBox("Carte retirée")
      End Sub
 
      Private Sub eidCard_CardWaiting(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles My_eidCard.CardWaiting
 
      End Sub
 
 
      Public Sub ReadeEID(ByVal NumeroReader As Int16)
 
 
            My_eidCard.Clear()
            My_eidCard.InitReader(False, 0)
 
            If Not My_eidCard.ReadId Then
                  MessageBox.Show("Ne peut lire la carte....")
                  End
            Else
                  Dim AdresseTmp As String = My_eidCard.Address.Street
                  Dim idx As Integer = (AdresseTmp.Length - 1)
 
                  Do While (idx > 0)
                        If (AdresseTmp.Chars(idx) = " "c) Then
                              Exit Do
                        End If
                        idx -= 1
                  Loop
 
                  If (idx > 1) Then
                        Personne.NumeroMaison = AdresseTmp.Substring((idx + 1), ((AdresseTmp.Length - idx) - 1))
                        Personne.Adresse = AdresseTmp.Substring(0, idx)
                  Else
                        Personne.Adresse = AdresseTmp
                  End If
 
                  Personne.DateNaissance = CardDate.ToShortDateString(My_eidCard.Identity.BirthDate)
                  Personne.PlaceNaissance = My_eidCard.Identity.BirthLocation
                  Personne.NumeroCarte = CardNumber.ToString(My_eidCard.Identity.CardNumber)
                  Personne.TypeCarte = DocumentType.ToString(My_eidCard.Identity.DocumentType)
                  Personne.NumeroChips = My_eidCard.Identity.ChipNumber
                  Personne.Ville = My_eidCard.Address.Municipality
                  Personne.Nom = My_eidCard.Identity.FirstName1
                  Personne.Prenom = My_eidCard.Identity.Surname
                  Personne.Ville1 = My_eidCard.Identity.Municipality
                  Personne.Nationalite = My_eidCard.Identity.Nationality
                  Personne.NumeroNational = NationalNumber.ToString(My_eidCard.Identity.NationalNumber)
                  Personne.Sexe = My_eidCard.Identity.Sex
                  Personne.CarteEidValideDe = CardDate.ToShortDateString(My_eidCard.Identity.ValidityDateBegin)
                  Personne.CarteEidValideTo = CardDate.ToShortDateString(My_eidCard.Identity.ValidityDateEnd)
                  Personne.Cp = My_eidCard.Address.Zip
                  Personne.NationaliteISO = My_eidCard.Identity.NationalityISO
 
                  If My_eidCard.ReadPicture Then Personne.Photo = My_eidCard.Picture
 
            End If
            GC.Collect()
 
      End Sub
 
 
 
End Class