[ mousea @ 18.04.2014. 16:03 ] @
postoji li nacin da se ovo izvede?
[ goranvuc @ 19.04.2014. 10:37 ] @
Moze preko VBA, dovoljno je (koliko se secam) samo da imas onaj Celik API sto se skine od MUP-a i naravno citac kartice...

Radio sam to davno, nisam sad proveravao da li je ovaj kod OK (ovo je primer za saobracajnu), ali evo da podelim pa nek proverava ko ima vremena:

Code:

Option Explicit

Dim RegEngine As eVehicleRegistrationCOM.Registration

Private Sub Command1_Click()
   Dim strReader As String
   Dim lngAnswer As Long
   
   'Dobijanje naziva reader-a kad je samo 1
   lngAnswer = RegEngine.GetReaderName(0, strReader)
   
   'Ispitivanje povratne vrednosti: 0 - OK ima instaliran reader, ostalo su greske, tj. verovatno nema instaliran reader
   Select Case lngAnswer
      Case 0
         
      Case Else
         MsgBox "Greska, nemate instaliran smart card reader!"
         Exit Sub
   End Select
   
   'Pristup citacu
   lngAnswer = RegEngine.SelectReader(strReader)
   
   'Ispitivanje povratne vrednosti: 0 - OK reader je ukljucen, ostalo su greske
   Select Case lngAnswer
      Case 0
         
      Case Else
         MsgBox "Greska, niste ukljucili smart card reader ili nije ispravan!"
         Exit Sub
   End Select
   
   Command2.Enabled = True
   
End Sub
Private Sub Command2_Click()
   Dim lngAnswer As Long
   Dim docData As eVehicleRegistrationCOM.[_DOCUMENT_DATA]
   Dim persData As eVehicleRegistrationCOM.[_PERSONAL_DATA]
   Dim regData As eVehicleRegistrationCOM.[_REGISTRATION_DATA]
   Dim vehData As eVehicleRegistrationCOM.[_VEHICLE_DATA]
   
   'Obrada kartice
   lngAnswer = RegEngine.ProcessNewCard
   
   'Ispitivanje povratne vrednosti: 0 - OK kartica je unutra i ispravna je, ostalo su greske
   Select Case lngAnswer
      Case 0
         
      Case Else
         MsgBox "Greska, kartica nije ubacena ili vec nesto tako!"
         Exit Sub
   End Select
   
   
   
   'Obrada kartice - docData
   lngAnswer = RegEngine.ReadDocumentData(docData)
   
   'Ispitivanje povratne vrednosti: 0 - OK procitano je kako treba, ostalo su greske
   Select Case lngAnswer
      Case 0
         
      Case Else
         MsgBox "Greska pri citanju!"
         Exit Sub
   End Select
   
   'Ispis jednog polja kao primer
   MsgBox docData.serialNumber
   
   
   
   'Obrada kartice - persData
   lngAnswer = RegEngine.ReadPersonalData(persData)
   
   'Ispitivanje povratne vrednosti: 0 - OK procitano je kako treba, ostalo su greske
   Select Case lngAnswer
      Case 0
         
      Case Else
         MsgBox "Greska pri citanju!"
         Exit Sub
   End Select
   
   'Ispis jednog polja kao primer
   MsgBox persData.ownerName
   
   
   
   'Obrada kartice - regData (0)
   lngAnswer = RegEngine.ReadRegistration(0, regData)
   
   'Ispitivanje povratne vrednosti: 0 - OK procitano je kako treba, ostalo su greske
   Select Case lngAnswer
      Case 0
         
      Case Else
         MsgBox "Greska pri citanju!"
         Exit Sub
   End Select
   
   'Ispis jednog polja kao primer
   MsgBox regData.registrationData
   
   
   
   'Obrada kartice - vehData
   lngAnswer = RegEngine.ReadVehicleData(vehData)
   
   'Ispitivanje povratne vrednosti: 0 - OK procitano je kako treba, ostalo su greske
   Select Case lngAnswer
      Case 0
         
      Case Else
         MsgBox "Greska pri citanju!"
         Exit Sub
   End Select
   
   'Ispis jednog polja kao primer
   MsgBox vehData.vehicleIDNumber
   
End Sub
Private Sub Form_Load()
   
   'Kreiranje instance i inicijalizacija
   Set RegEngine = New eVehicleRegistrationCOM.Registration
   RegEngine.Initialize
   
End Sub
Private Sub Form_Terminate()
   
   'Unistavanje instance
   Set RegEngine = Nothing
   
End Sub
[ mousea @ 19.04.2014. 23:36 ] @
Imam api registrovao sam ga

medjutim ne uspevam da pokrenem kod. dobijam error 429
activex component can't create object
[ goranvuc @ 19.04.2014. 23:44 ] @
Da li si dodao u reference taj activex?
[ mousea @ 19.04.2014. 23:52 ] @
jesam eVehicleRegistrationCOM.dll
za licnu kartu onaj api sa mupovog sajta ne moze da se doda ne moze da se doda

evo i coda

radim u excelu 2013

Code:


Option Explicit

Dim RegEngine As eVehicleRegistrationCOM.Registration
Private Sub CommandButton1_Click()
   Dim strReader As String
   Dim lngAnswer As Long
   
   'Dobijanje naziva reader-a kad je samo 1
   lngAnswer = RegEngine.GetReaderName(0, strReader)
   
   'Ispitivanje povratne vrednosti: 0 - OK ima instaliran reader, ostalo su greske, tj. verovatno nema instaliran reader
   Select Case lngAnswer
      Case 0
         
      Case Else
         MsgBox "Greska, nemate instaliran smart card reader!"
         Exit Sub
   End Select
   
   'Pristup citacu
   lngAnswer = RegEngine.SelectReader(strReader)
   
   'Ispitivanje povratne vrednosti: 0 - OK reader je ukljucen, ostalo su greske
   Select Case lngAnswer
      Case 0
         
      Case Else
         MsgBox "Greska, niste ukljucili smart card reader ili nije ispravan!"
         Exit Sub
   End Select
   
   Command2.Enabled = True
End Sub

Private Sub CommandButton2_Click()
Dim lngAnswer As Long
   Dim docData As eVehicleRegistrationCOM.[_DOCUMENT_DATA]
   Dim persData As eVehicleRegistrationCOM.[_PERSONAL_DATA]
   Dim regData As eVehicleRegistrationCOM.[_REGISTRATION_DATA]
   Dim vehData As eVehicleRegistrationCOM.[_VEHICLE_DATA]
   
   'Obrada kartice
   lngAnswer = RegEngine.ProcessNewCard
   
   'Ispitivanje povratne vrednosti: 0 - OK kartica je unutra i ispravna je, ostalo su greske
   Select Case lngAnswer
      Case 0
         
      Case Else
         MsgBox "Greska, kartica nije ubacena ili vec nesto tako!"
         Exit Sub
   End Select
   
   
   
   'Obrada kartice - docData
   lngAnswer = RegEngine.ReadDocumentData(docData)
   
   'Ispitivanje povratne vrednosti: 0 - OK procitano je kako treba, ostalo su greske
   Select Case lngAnswer
      Case 0
         
      Case Else
         MsgBox "Greska pri citanju!"
         Exit Sub
   End Select
   
   'Ispis jednog polja kao primer
   MsgBox docData.serialNumber
   
   
   
   'Obrada kartice - persData
   lngAnswer = RegEngine.ReadPersonalData(persData)
   
   'Ispitivanje povratne vrednosti: 0 - OK procitano je kako treba, ostalo su greske
   Select Case lngAnswer
      Case 0
         
      Case Else
         MsgBox "Greska pri citanju!"
         Exit Sub
   End Select
   
   'Ispis jednog polja kao primer
   MsgBox persData.ownerName
   
   
   
   'Obrada kartice - regData (0)
   lngAnswer = RegEngine.ReadRegistration(0, regData)
   
   'Ispitivanje povratne vrednosti: 0 - OK procitano je kako treba, ostalo su greske
   Select Case lngAnswer
      Case 0
         
      Case Else
         MsgBox "Greska pri citanju!"
         Exit Sub
   End Select
   
   'Ispis jednog polja kao primer
   MsgBox regData.registrationData
   
   
   
   'Obrada kartice - vehData
   lngAnswer = RegEngine.ReadVehicleData(vehData)
   
   'Ispitivanje povratne vrednosti: 0 - OK procitano je kako treba, ostalo su greske
   Select Case lngAnswer
      Case 0
         
      Case Else
         MsgBox "Greska pri citanju!"
         Exit Sub
   End Select
   
   'Ispis jednog polja kao primer
   MsgBox vehData.vehicleIDNumber
End Sub
Private Sub UserForm_Activate()
'Kreiranje instance i inicijalizacija
   Set RegEngine = New eVehicleRegistrationCOM.Registration
   RegEngine.Initialize
End Sub
Private Sub UserForm_Initialize()


End Sub

Private Sub UserForm_Terminate()
   
   'Unistavanje instance
   Set RegEngine = Nothing
   

End Sub
[ goranvuc @ 20.04.2014. 11:38 ] @
Ih bre, pa zar moram sve na tacni?

Evo ti u prilogu kako ide za registraciju vozila (nisam probao, ostala mi registracija u autu).
[ mousea @ 20.04.2014. 16:02 ] @
hvala ovo fercera kao podmazano :) na excelu 2003 na 2013 nece iz nepoznatih razloga :) ali nije bitno :)

imas li mozda api za licne karte koji moze da se doda u reference ovaj sto sam skinuo sa mupa nece :(
[ goranvuc @ 20.04.2014. 16:49 ] @
Nemam Office 2013 da bih mogao da proverim, ali verujem da je neka sitnica.

Za licnu kartu ne postoji ActiveX vec standardan dll pa mora preko API deklaracija, imao sam negde kod ali ne mogu da pronadjem trenutno... Imas primere i na ES ako se ne varam.
[ mousea @ 20.04.2014. 16:59 ] @
bio bih ti jako zahvalan za taj kod za licnu kartu znacilo bi mi jako ako uspes da ga pronadjes

a u 2013 staje pri povezivanju na citac

Set RegEngine = New eVehicleRegistrationCOM.Registration na ovoj liniji

i kaze can't create object

[Ovu poruku je menjao mousea dana 20.04.2014. u 18:17 GMT+1]
[ goranvuc @ 21.04.2014. 01:39 ] @
Citat:
mousea:
a u 2013 staje pri povezivanju na citac

Set RegEngine = New eVehicleRegistrationCOM.Registration na ovoj liniji

i kaze can't create object
[Ovu poruku je menjao mousea dana 20.04.2014. u 18:17 GMT+1]


Verovatno se moraju ukljuciti reference rucno.

Sto se tice koda za citanje LK karte nasao sam nesto sto sam ranije pravio, pa sam ti ti sve upakovao u jednu instalaciju koja je u prilogu.

U instalaciji je COM dll koji sam napravio da se ne bi patio sa API pozivima, standardni dll celik, kao i primer u Excel-u (odradjen je i prikaz slike iz licne karte, nema problema sa cirilicom i sl.).

Evo ti i kako je odradjen programski kod u Excelu - mislim da je maksimalno jednostavno, imas i kompletnu proceduru za prikaz greske ukoliko do nje dodje:

Code:

Dim WithEvents ReaderEngine As LKReader.Reader

Private Sub CommandButton1_Click()
    
    If ReaderEngine Is Nothing Then Set ReaderEngine = New LKReader.Reader
    
    If Not ReaderEngine.ReadData Then
        Set ReaderEngine = Nothing
        Exit Sub
    End If
    
    Sheet1.Cells(5, 2).Value = ReaderEngine.docRegNo
    Sheet1.Cells(6, 2).Value = ReaderEngine.issuingAuthority
    Sheet1.Cells(7, 2).Value = ReaderEngine.issuingDate
    Sheet1.Cells(8, 2).Value = ReaderEngine.expiryDate
    
    Sheet1.Cells(12, 2).Value = ReaderEngine.surname
    Sheet1.Cells(13, 2).Value = ReaderEngine.givenName
    Sheet1.Cells(14, 2).Value = ReaderEngine.parentGivenName
    Sheet1.Cells(15, 2).Value = ReaderEngine.dateOfBirth
    Sheet1.Cells(16, 2).Value = ReaderEngine.placeOfBirth
    Sheet1.Cells(17, 2).Value = ReaderEngine.communityOfBirth
    Sheet1.Cells(18, 2).Value = ReaderEngine.stateOfBirth
    Sheet1.Cells(19, 2).Value = ReaderEngine.personalNumber
    Sheet1.Cells(20, 2).Value = ReaderEngine.sex
    
    Sheet1.Cells(24, 2).Value = ReaderEngine.State
    Sheet1.Cells(25, 2).Value = ReaderEngine.community
    Sheet1.Cells(26, 2).Value = ReaderEngine.place
    Sheet1.Cells(27, 2).Value = ReaderEngine.street
    Sheet1.Cells(28, 2).Value = ReaderEngine.houseNumber
    Sheet1.Cells(29, 2).Value = ReaderEngine.houseLetter
    Sheet1.Cells(30, 2).Value = ReaderEngine.entrance
    Sheet1.Cells(31, 2).Value = ReaderEngine.apartmentNumber
    Sheet1.Cells(32, 2).Value = ReaderEngine.Floor

    Set Image1.Picture = ReaderEngine.portrait
    
    Set ReaderEngine = Nothing
    
End Sub
Private Sub ReaderEngine_ReaderError(ByVal ErrorCode As LKReader.LKReader_Error, ByVal ProcedureName As String)
    
    'Ispita se koja je greska
    
    Select Case ErrorCode
       Case LKR_E_GENERAL_ERROR
          '...
       Case LKR_E_INVALID_PARAMETER
          '...
       Case LKR_E_VERSION_NOT_SUPPORTED
          '...
       Case LKR_E_NOT_INITIALIZED
          '...
       Case LKR_E_UNABLE_TO_EXECUTE
          '...
       Case LKR_E_READER_ERROR
          '...
       Case LKR_E_CARD_MISSING
          '...
       Case LKR_E_CARD_UNKNOWN
          '...
       Case LKR_E_CARD_MISMATCH
          '...
       Case LKR_E_UNABLE_TO_OPEN_SESSION
          '...
       Case LKR_E_DATA_MISSING
          '..
       Case LKR_E_CARD_SECFORMAT_CHECK_ERROR
          '..
       Case LKR_E_SECFORMAT_CHECK_CERT_ERROR
          '..
    
    End Select
    
    'Ispita se u kojoj proceduri je greska nastala
    
    Select Case ProcedureName
       Case "EidStartup"
          '...
       Case "EidCleanup"
          '...
       Case "EidBeginRead"
          '...
       Case "EidEndRead"
          '...
       Case "EidReadDocumentData"
          '...
       Case "EidReadFixedPersonalData"
          '...
       Case "EidReadVariablePersonalData"
          '...
       Case "EidReadPortrait"
          '...
    End Select
    
    MsgBox "Greska broj: " & ErrorCode & ", Procedura: " & ProcedureName, vbCritical, "Greska!"
    
End Sub


Ponavljam, sve sto ti treba je u instalaciji koja je u prilogu. Pokreni, next, next... i otvori excel koji ce se instalirati, prikaci citac, ubaci karticu i to je to.

Ajd, pa srecno!

P.S. Excel primer imas u program files/LKReader folderu, ili pokreni precicu na njega koja se instalira u Start meni. MSI sam morao da razbijem na vise delova jer je ogranicen upload na ES, samo sve skini i pokreni MSI.

[Ovu poruku je menjao goranvuc dana 21.04.2014. u 02:55 GMT+1]

P.S. #2

Umesto uploadovane instalacije u komadima, evo link za download:

Instalacija

[Ovu poruku je menjao goranvuc dana 21.04.2014. u 07:52 GMT+1]

[Ovu poruku je menjao goranvuc dana 21.04.2014. u 08:18 GMT+1]
[ mousea @ 21.04.2014. 09:29 ] @
hvala ovo mi je trebalo :)

duzan sam ti pivo :)
[ goranvuc @ 21.04.2014. 09:32 ] @
Nisi mi nista duzan, drago mi je da sam ti pomogao.

Molio bih te samo da mi odgovoris (ako nije tajna) kako si mislio da primenis ovo, tj. zbog cega ti je ovo trebalo bas u excel-u (pretpostavljam da su u pitanju popune nekih obrazaca), ali vise me interesuje gde to ima prakticnu primenu.

Eh da, da li si resio onaj problem sa citanjem saobracajne?
[ mousea @ 21.04.2014. 11:09 ] @
Upravo to popunjavanje nekih obrazaca za firmu da ne bi iscitavali i prepisivali
pogotovu sto korisnici nisu bas kompjuterski potkovani

problem u 2013 nisam resio jos uvek

ni lk ne radi u 2013 u 2003 i 2007 radi.

[ goranvuc @ 21.04.2014. 11:17 ] @
Citat:
mousea: problem u 2013 nisam resio jos uvek

ni lk ne radi u 2013 u 2003 i 2007 radi.


Mozda se neko javi ko ima 2013 i uspe da resi problem, ja ne mogu jer nemam (necu ni imati, svoju 2003 sam svojevremeno platio 600 eura i "cedicu" je dok mogu).

Inace, malo sam "google" - ovao i nema nijedna ActiveX komponenta za citanje LK i svi se nesto pate sa Celik API-em, tako da cu u poseban post staviti ovu instalaciju (u kojoj je ovaj primer sa Excel-om), a uploadovacu i primer koristenja u samom VB6.

Naravno, moze se koristiti i u VB skriptu, kao i u ostalim Office aplikacijama preko VBA.

Da i drugi imaju neke koristi, ako se slazes.
[ mousea @ 21.04.2014. 11:21 ] @
Naravno da se slazem treba pomoci svima

ovo za lk radi ko satic
[ FOX028 @ 24.04.2014. 08:01 ] @
Imam mali problem sa ocitavanjem LK. Pokusao sam da ovo odradim u Access-u, sve lepo ocita jedini problem mi predstavlja slika. Kada postavim kontrolu Image i pokusam da joj dodelim sliku sa LK preko (ReaderEngine.portrait) javlja mi gresku, a kada prvo napisem komandu da mi sacuva sliku negde na kompu i dodelim putanju kontroli do te slike onda je sve OK. Da li postoji mogucnost da se bez snimanja slike na kompu ucita slika u kontrolu jer hocu da korisnik sam odabere da li hoce ili ne da sacuva sliku.
[ goranvuc @ 24.04.2014. 08:05 ] @
Kad postavljas pitanje ne bi bilo lose i da das deo koda koji ti pravi problem, ovako ja ne znam koji kod to koristis da ucitas sliku u Access-u i ne mogu da pogadjam sta ne valja.

Pozdrav!
[ goranvuc @ 24.04.2014. 08:19 ] @
Pretpostavljam da pokusavas sa (npr):
Code:
Image1.Picture = ReaderEngine.portrait


, a treba ovako:
Code:
Image1.PictureData = ReaderEngine.portrait


Moras da se dobro upoznas sa osnovnim svojstvima komponenti koje koristis da bi ih koristio kako treba...
[ FOX028 @ 24.04.2014. 08:43 ] @
nece i dalje a koristim onaj kod kao sto si koristio u Excel-u samo sam ga prilagodio Access-u.

Code:
If ReaderEngine Is Nothing Then Set ReaderEngine = New LKReader.Reader
    
    If Not ReaderEngine.ReadData Then
        Set ReaderEngine = Nothing
        Exit Sub
    End If
       
    With Me
        .BrojLK = ReaderEngine.docRegNo
        .Izdaje = ReaderEngine.issuingAuthority
        .DatumIzdavanje = ReaderEngine.issuingDate
        .VaziDo = ReaderEngine.expiryDate
        
        .Prezime = ReaderEngine.surname
        .Ime = ReaderEngine.givenName
        .ImeRoditelja = ReaderEngine.parentGivenName
        .DatumRodjenja = ReaderEngine.dateOfBirth
        .MestoRodjenja = ReaderEngine.placeOfBirth
        .OpstinaRodjenja = ReaderEngine.communityOfBirth
        .DrzavaRodjenja = ReaderEngine.stateOfBirth
        .JMBG = ReaderEngine.personalNumber
        .Pol = ReaderEngine.sex
        
        .DrzavaPrebivalista = ReaderEngine.state
        .OpstinaPrebivalista = ReaderEngine.community
        .MestoPrebivalista = ReaderEngine.place
        .Ulica = ReaderEngine.street
        .Broj = ReaderEngine.houseNumber
        .Slovo = ReaderEngine.houseLetter
        .Ulaz = ReaderEngine.entrance
        .BrojStana = ReaderEngine.apartmentNumber
        .Sprat = ReaderEngine.floor
        
        .imgSlika.PictureData = ReaderEngine.portrait
            
    End With
    Set ReaderEngine = Nothing


[ captPicard @ 24.04.2014. 10:07 ] @
Koju grešku ti da? Pretpostaljam da ima veze sa formatom izlaza.
[ FOX028 @ 24.04.2014. 10:13 ] @
predpostavljam da je to.

The bitmap you specified is not in a device-independent bitmap (.dib) format.

u Excel-u sve radi kako treba ali u Access-u nece.
[ captPicard @ 24.04.2014. 12:10 ] @
Prouči ovaj link, nisam detaljno čitao ali mislim da je to to šta ti treba:

http://bytes.com/topic/access/answers/206321-how-put-logo-form
[ FOX028 @ 24.04.2014. 13:24 ] @
nije ni ovo, i ovde je potrebno da postoji slika negde na HD-u.
[ captPicard @ 24.04.2014. 13:32 ] @
A šta dobiješ, tj koji tip podatka u
Code:
ReaderEngine.portrait
?
[ captPicard @ 24.04.2014. 13:43 ] @
Koliko sam shvatio, .PictureData služi za "prebacivanje" slike iz jednog objekta u drugi. A .Picture je oblika string i traži putanju do slike, tako da izgleda da nemaš druge nego snimiti negdje sliku i onda ju učitati u Image kontrolu. Ne moraš ju spremati, učitaš je privremeno, prikažeš, pitaš da li korisnik želi spremati, ako ne želi brišeš.
[ FOX028 @ 24.04.2014. 13:44 ] @
kada postavim

Me.imgSlika.PictureData= ReaderEngine.portrait

dobijam ovo kao gresku

Run-time error '2192':
The bitmap you specified is not in a device-independent bitmap (.dib) format.

a kada postavim ovo

Me.imgSlika.Picture = ReaderEngine.portrait

dobijam ovo

Run-time error '2220':
Microsoft Office Access can't open the file '386213348'

Nije mi jasno zasto u Excel-u radi a u Access-u nece.
[ FOX028 @ 24.04.2014. 13:46 ] @
Pa ako ne postoji drugi nacin onda mi je to jedino resenje. A takodje sam pokusao i da uradim i u Visual Basic 2010 Express i tamo mi se javlja problem sa slikom.
[ goranvuc @ 24.04.2014. 13:56 ] @
U pitanju je specificnost Access-a da prilikom ucitavanja slike preko Picture on konvertuje jpg, gif ili vec neki drugi format u bmp, a PictureData iskljucivo "prima" bmp format. Slika iz LK je jpg i pre sledeceg reda:
Code:

.imgSlika.PictureData = ReaderEngine.portrait

je potrebna neka funkcija za konverziju jpg u bmp.

Kod za ovo bi bio (ako pretpostavimo da se funkcija zove "JpgToBmp":
Code:

.imgSlika.PictureData = JpgToBmp(ReaderEngine.portrait)


Materijal za konverziju iz jpg u bmp imas koliko hoces na Google-u...
[ captPicard @ 24.04.2014. 14:03 ] @
Citat:
FOX028:
Run-time error '2220':
Microsoft Office Access can't open the file '386213348'


Da, .pciture je putanja do file-a i to možemo odmah izbaciti jer ti koliko vidim ne dobivaš nikakvu putanju. .picturedata možeš koristiti (koliko sam shvatio iz dokumentacije) samo na npr. slijedeći način: image1.picturedata = image2.picturedata, tako da to isto otpada. Pronašao sam googlanjem nešto sa čačkanjem oko API-a http://accdevel.tripod.com/imaging.htm ali izgleda mi dosta komplicirano, mislim da ti je puno jednostavnije spremiti sliku kako sam gore opisao.




[ captPicard @ 24.04.2014. 14:08 ] @
Eto, goranvuc je objasnio, tako da zanemari moje filozofiranje :)
[ goranvuc @ 24.04.2014. 14:27 ] @
Ne znam sto se toliko mucis, samo dodaj jos jedan red posle tog tvog cuvanja u file:

Code:

SavePicture ReaderEngine.portrait, "LK.jpg"
.imgSlika.Picture = "LK.jpg"
Kill "LK.jpg"


Objasnjenje: kreiras fajl i kad ga iskoristis lepo ga "koknes" i nema potrebe za trazenjem nekog jednostavnijeg resenja. Ako korisnik hoce da sacuva sliku mozes uvek pre Kill da Pozoves FileCopy...
[ BiloKoje @ 13.05.2014. 11:55 ] @
Preuzeo sam primere u Exelu za čitanje LK i saobraćajne dozvole, odradi sve osim dela podataka iz saobraćajne. Kad dođe do reda "lngAnswer = RegEngine.ReadRegistration(0, regData)" prijavi grešku, ako taj blok preskočim čita sve podatke do kraja.
Kakva su vaša iskustva?
[ goranvuc @ 15.05.2014. 09:26 ] @
Citat:
BiloKoje: Preuzeo sam primere u Exelu za čitanje LK i saobraćajne dozvole, odradi sve osim dela podataka iz saobraćajne. Kad dođe do reda "lngAnswer = RegEngine.ReadRegistration(0, regData)" prijavi grešku, ako taj blok preskočim čita sve podatke do kraja.
Kakva su vaša iskustva?

Ako mislis na primere koje sam ja postavio, onda moram da ti kazem da ja to nisam nikad u praksi koristio niti mi je trebalo citanje podataka iz saobracajne dozvole, vec me je svojevremeno jedan prijatelj zamolio da mu pomognem da napravi kod za to i ja sam mu "odradio" ovaj primer, a on se dalje bavio sa tim (ima program za firme koje rade registraciju vozila).

Pretpostavljam da ti daje gresku jer su u pitanju podaci kojima mora da se pristupi uz dodatnu sertifikaciju...
[ BiloKoje @ 15.05.2014. 10:21 ] @
Da, tvoj primer sam koristio, takođe i za čitanje LK.
Ovo za saobraćajnu ni meni u stvari ne treba, isprobao sam ga iz
radoznalosti, dodao u kodu da čita i druge podatke, sve što funkcija
RegData nudi i sve čita osim tri podatka koje sam naveo, a koji se
odnose na službu koja je izvršila registraciju pa jeste moguće i
logično da je potrebna dodatna sertifikacija.
Čitanje lične karte radi odlično, meni je trebalo u accessu,
preuzimanje podataka u tabelu i to radi odlično, kod iz exela sam
iskoristio za access, izvršava se na klik i unosi podatke u tabelu i
prikazuje u formi. To je već nešto što koristim svakodnevo, što mi
jeste od velike koristi, koliko zbog brzine preuzimanja, više zbog
eliminacije greške pri prepisivanju.
[ goranvuc @ 15.05.2014. 10:41 ] @
E bas mi drago da se koristi, zato sam i podelio...

Pozdrav!
[ IKA RISTOVIĆ @ 23.07.2014. 10:45 ] @
Pozdrav svima , imam problem sa citanjem lk u accesu, sve sam pokušao da iskoristim sa ovog foruma ali ne ide ,
valjda nemam dovoljno iskustva, sada kada sam našao ovaj post koji je napisao BiloKoje i sl citat
.Ako vec imaš daj program za citanje u accesu molim te zakaci ga na forum ili mi ga pošalji bio bi ti mnogo zahvalan
Ika
...............................................................
Čitanje lične karte radi odlično, meni je trebalo u accessu,
preuzimanje podataka u tabelu i to radi odlično, kod iz exela sam
iskoristio za access, izvršava se na klik i unosi podatke u tabelu i
prikazuje u formi. To je već nešto što koristim svakodnevo, što mi
jeste od velike koristi, koliko zbog brzine preuzimanja, više zbog
eliminacije greške pri prepisivanju.

[ FOX028 @ 23.07.2014. 11:31 ] @
Evo mog nekog primera koji sam ja krenuo da radim, mozda ti posluzi. Samo da napomenem da kada otvoris bazu imas tabelu AdresaAlbuma gde bi trebalo da zamenis adresu do tvog albuma gde budes zeleo da skladistis slike sa LK.
[ IKA RISTOVIĆ @ 23.07.2014. 12:13 ] @
FOX028 hvala ti na trudu, nemogu da je otvorim jer koristim ofiice 2003, a i interesujeme
da radi u accessu 2003, u svakom slucaju mnogo ti hala. Ika
[ FOX028 @ 23.07.2014. 12:48 ] @
Evo i u 2003 isprobaj pa javi da li radi. Pozz.
[ BiloKoje @ 23.07.2014. 13:20 ] @
Ja sam preuzimanje podataka iz LK dodao na neku formu koju već koristim, povezanu sa podacima iz velike baze.
Ovde ću postaviti jednu probnu varijantu, znam da osnovne funkcionalnost ima, učitava podatke, ostalo možemo videti zajedno šta bi, eventualno moglo da se doradi.
Baza je u Accessu XP
[ IKA RISTOVIĆ @ 23.07.2014. 13:29 ] @
Prijavljuje grešku u codu kod LKReader.Reader pokušao sam da ubacim referencu ali treži Dll.
Vidim i Bilo Koje mi je odgovorio što je super ali isto se dešava
Ika
[ BiloKoje @ 23.07.2014. 13:41 ] @
Moraš da instaliraš programčić koji goranvuc postavio, kod mene je instaliran u Program Files\LKReader i tu se instalira LK.dll, taj fajl treba da učitaš u Reference u VB editoru. Instalira se kao A3but biblioteka za pomoć.....
[ FOX028 @ 23.07.2014. 13:55 ] @
Kod mene ti je prostije, meni ovo sluzi samo za citanje i skladistenje podataka. Pa verovatno zato nisi ni uspeo nista da uradis, jer nisi instalirao dll fajl koji je postavio goranvuc.
[ IKA RISTOVIĆ @ 23.07.2014. 14:01 ] @
Sve radi kako treba, tek sad vidim koliko mi je zadnje pitanje bilo glupo,
Želim da se zahvalim i BiloKoje koji je ucestvovao u ovome kao i tebi naravno.
Sve najbolje Ika
[ IKA RISTOVIĆ @ 23.07.2014. 20:42 ] @
Evo mene opet nije za citanje lk vec APR-a, sve sam u radio kao i predhodnom problemu ali mi sada
prijavljuje grešku If Not APREngine.CompanyFromAPR(Text1.Text) Then i ako sam izvršio referenciranje i sad nezna
u cemu je problem. Naravno instalirao sam i Dll fajl.
Molio bi da mi pomognete posebno FOX028 kao i BiloKoje.
Zahvalan ika
[ BiloKoje @ 24.07.2014. 07:38 ] @
Ne znam, Iko, kod mene to radi, evo jednog primera, opet na brzinu izvučeno iz veće baze.
Mogao bi da okačiš tvoj primer, da eventualno nađemo problem.
[ IKA RISTOVIĆ @ 24.07.2014. 10:39 ] @
BiloKoje, probao sam ovaj tvoj primer i on je sjajan, treba samo da ga
prilagodim mojim potrebama, iz tvog primera sam tek shvatio da nisam uradio sva referenciranja.
Puno ti se zahvaljujem i pozdravjam.
Ika
[ IKA RISTOVIĆ @ 27.07.2014. 14:37 ] @
Zdravo svima,molim za pomoc koristim programcic za citanje podatka NBS i to je uredu,
ali pored citanja voleo bih da te iste podatke prebacim u moju bazu recimo tekuci racun,
kako da to uradim ???.
Unapred zahvalan ika
[ captPicard @ 27.07.2014. 18:01 ] @
To je već za novu temu, ali imaš jako jako puno primjera za to, tako da najbolje da malo koristiš tražilicu ili/i google i pronaći češ mnoštvo odgovora.
[ IKA RISTOVIĆ @ 28.07.2014. 16:37 ] @
Zdravo FOX028, što se tice onaj program za citanje lk to je u redu,
ali imam sl. problem, pokušavam sliku iz forme da ubacim u izveštaj
tako da mogu i da štampam podatke sa slikom, ali to mi nikako ne ide
pa bi te molio da mi daš neki primer ili sl. pa da pokušam da to odradim,
naravno to važi i za ostale Forumaše, unapred hvala IKa
[ FOX028 @ 28.07.2014. 16:55 ] @
I ja sam imao malo problema sa slikom, a to sam resio tako sto sam prilikom ocitavanja licne karte sacuvao sliku negde na HD-u i u tabeli upisao adresu do nje a kasnije adresu prosledio u Report-u. To mi je predlozio i goranvuc bas u ovoj temi

http://www.elitesecurity.org/p3436754

mada mislim da imas primer kako sam to resio bas u onoj bazi koju sam ti okacio ovde.
[ IKA RISTOVIĆ @ 28.07.2014. 19:53 ] @
Ureduje druže ,skapirao sam sve radi ok, hvala
Ika
[ IKA RISTOVIĆ @ 03.08.2014. 19:13 ] @
FOX028, kao što znaš vec koristim neke tvoje programe koje si mi ti preporucio,
Citanje lk i iz APR dobro funkcioniše i to je uredu.
Sada me zanima citanje saobracajne dozvole iz accessa sa mogucnoscu da te podatke
direktno upisem u tabelu.
Molio bih te ako imaš neki primer ili ideju kako to da uradim bio bih ti zahvalan.
Ika.
ps. skinuo sam dll i uradio referenciranje.
[ nneexx @ 02.09.2014. 07:24 ] @
Moze li neko da postavi taj Excel program za citanje licnih karata.

Hvala.
[ FOX028 @ 02.09.2014. 07:57 ] @
Na ovom linku imas instalaciju programa koji je odradio clan foruma goranvuc, ubacuje DLL i Excel fajl iz kog mozes ocitati LK, Excel fajl mozes pozvati iz Start menija.

http://www.elitesecurity.org/t475512-0#3435559
[ nneexx @ 02.09.2014. 08:24 ] @
Na zalost ovaj link www.a3but.info/download/LKReader.msi nije vise u funkciji.

Radio sam citanje lk iz xbase++ ali mi program vraca samo prvi red podataka kao ispravan - ostali su necitljivi.
Za svaki set podataka je isto.

docRegNo --- ispravan podatak
...
...
...
personalNumber --- ispravan podatak
...
...
...
...
...
...
...
...
state --- ispravan podatak
...
...
...
...
...
...
...
...


Zato mi treba neki eksport podataka za lk.
Pozdrav.
[ FOX028 @ 02.09.2014. 08:51 ] @
imas to i sto i ovde

LK Reader
[ IKA RISTOVIĆ @ 02.09.2014. 11:19 ] @
Citat:
nneexx:
Moze li neko da postavi taj Excel program za citanje licnih karata.

Hvala.

Evo ovo ce ti pomoci.
[ nneexx @ 02.09.2014. 11:20 ] @
Sve je u redu.

Program instaliran i radi ok.

Da li postoji spisak funkcija (ActiveX) za Lk.dll

Pozdrav.
[ IKA RISTOVIĆ @ 02.09.2014. 11:22 ] @
Citat:
nneexx:
Moze li neko da postavi taj Excel program za citanje licnih karata.

Hvala.


Evo
[ IKA RISTOVIĆ @ 02.09.2014. 11:25 ] @
Evo, valda ces se snaci.
[ nneexx @ 02.09.2014. 11:36 ] @
Sve je u redu sa LkReaderIKa.rar

Hvala.
[ BiloKoje @ 17.03.2015. 12:30 ] @
Dakle, koristim čitanje ličnih karata u Accessu skoro godinu dana, podatke učitavam u formu pa dalje preuzimam gde treba. Uglavnom radi dobro, ali se ponekad dešava da neće da učita podatke a da Čelik, program MUPa čita podatke. Znam da se u nekom momentu nešto menjalo, da sam morao da preuzmem novu verzilu Čelika, da li je potrebna neka promena i za kod u VB ili referencu?
[ grujicb @ 14.05.2015. 13:51 ] @
Hvala drugovi!!

Uzeo sam postojeći VBS i malo ga preradio. Uspeo sam da dobijem da mi sve isčitavaju sva potrebna polja sa sobraćajne u excel 2013 pa ako nekome zatreba postaviću ga!

Pozdrav!


otvorite vbs iz developer menija i kopirajte :


Option Explicit

Dim RegEngine As eVehicleRegistrationCOM.Registration

Private Sub PoveziSe()
Dim strReader As String
Dim lngAnswer As Long

'Kreiranje instance i inicijalizacija
If RegEngine Is Nothing Then

Set RegEngine = New eVehicleRegistrationCOM.Registration
RegEngine.Initialize
End If

'Dobijanje naziva reader-a kad je samo 1
lngAnswer = RegEngine.GetReaderName(0, strReader)

'Ispitivanje povratne vrednosti: 0 - OK ima instaliran reader, ostalo su greske, tj. verovatno nema instaliran reader
Select Case lngAnswer
Case 0

Case Else
MsgBox "Greska, nemate instaliran smart card reader!"
Exit Sub
End Select

'Pristup citacu
lngAnswer = RegEngine.SelectReader(strReader)

'Ispitivanje povratne vrednosti: 0 - OK reader je ukljucen, ostalo su greske
Select Case lngAnswer
Case 0

Case Else
MsgBox "Greska, niste ukljucili smart card reader ili nije ispravan!"
Exit Sub
End Select

End Sub
Private Sub Citaj()
Dim lngAnswer As Long
Dim docData As eVehicleRegistrationCOM.[_DOCUMENT_DATA]
Dim persData As eVehicleRegistrationCOM.[_PERSONAL_DATA]
Dim regData As eVehicleRegistrationCOM.[_REGISTRATION_DATA]
Dim vehData As eVehicleRegistrationCOM.[_VEHICLE_DATA]

If RegEngine Is Nothing Then Exit Sub

'Obrada kartice
lngAnswer = RegEngine.ProcessNewCard

'Ispitivanje povratne vrednosti: 0 - OK kartica je unutra i ispravna je, ostalo su greske
Select Case lngAnswer
Case 0

Case Else
MsgBox "Greska, kartica nije ubacena ili vec nesto tako!"
Exit Sub
End Select



'Obrada kartice - docData
lngAnswer = RegEngine.ReadDocumentData(docData)

'Ispitivanje povratne vrednosti: 0 - OK procitano je kako treba, ostalo su greske
Select Case lngAnswer
Case 0

Case Else
MsgBox "Greska pri citanju!"
Exit Sub
End Select

'Ispis nekoliko polja kao primer
Sheet1.Cells(2, 2).Value = docData.issuingDate
Sheet1.Cells(3, 2).Value = docData.expiryDate
Sheet1.Cells(4, 2).Value = docData.authorityIssuing
Sheet1.Cells(2, 4).Value = docData.stateIssuing
Sheet1.Cells(3, 4).Value = docData.competentAuthority
Sheet1.Cells(4, 4).Value = docData.unambiguousNumber


'Obrada kartice - persData
lngAnswer = RegEngine.ReadPersonalData(persData)

'Ispitivanje povratne vrednosti: 0 - OK procitano je kako treba, ostalo su greske
Select Case lngAnswer
Case 0

Case Else
MsgBox "Greska pri citanju!"
Exit Sub
End Select

'Ispis nekoliko polja kao primer
Sheet1.Cells(6, 3).Value = persData.ownerName
Sheet1.Cells(6, 4).Value = persData.ownersSurnameOrBusinessName
Sheet1.Cells(7, 2).Value = persData.ownersPersonalNo
Sheet1.Cells(8, 2).Value = persData.ownerAddress
Sheet1.Cells(10, 2).Value = persData.usersPersonalNo
Sheet1.Cells(11, 3).Value = persData.usersSurnameOrBusinessName
Sheet1.Cells(11, 2).Value = persData.usersName
Sheet1.Cells(12, 2).Value = persData.usersAddress


'Obrada kartice - regData (0)
lngAnswer = RegEngine.ReadRegistration(1, regData)

'Ispitivanje povratne vrednosti: 0 - OK procitano je kako treba, ostalo su greske
Select Case lngAnswer
Case 0

Case Else
MsgBox "Greska pri citanju!"
Exit Sub
End Select

'Obrada kartice - vehData
lngAnswer = RegEngine.ReadVehicleData(vehData)

'Ispitivanje povratne vrednosti: 0 - OK procitano je kako treba, ostalo su greske
Select Case lngAnswer
Case 0

Case Else
MsgBox "Greska pri citanju!"
Exit Sub
End Select

'Ispis nekoliko polja kao primer


'Ispis nekoliko polja kao primer
Sheet1.Cells(14, 2).Value = vehData.dateOfFirstRegistration
Sheet1.Cells(15, 2).Value = vehData.yearOfProduction
Sheet1.Cells(16, 2).Value = vehData.vehicleMake
Sheet1.Cells(17, 2).Value = vehData.vehicleType
Sheet1.Cells(18, 2).Value = vehData.commercialDescription
Sheet1.Cells(19, 2).Value = vehData.vehicleIDNumber
Sheet1.Cells(20, 2).Value = vehData.registrationNumberOfVehicle
Sheet1.Cells(21, 2).Value = vehData.maximumNetPower
Sheet1.Cells(22, 2).Value = vehData.engineCapacity
Sheet1.Cells(23, 2).Value = vehData.typeOfFuel
Sheet1.Cells(24, 2).Value = vehData.powerWeightRatio
Sheet1.Cells(25, 2).Value = vehData.vehicleMass
Sheet1.Cells(26, 2).Value = vehData.maximumPermissibleLadenMass
Sheet1.Cells(27, 2).Value = vehData.typeApprovalNumber
Sheet1.Cells(28, 2).Value = vehData.numberOfSeats
Sheet1.Cells(29, 2).Value = vehData.numberOfStandingPlaces
Sheet1.Cells(30, 2).Value = vehData.engineIDNumber
Sheet1.Cells(31, 2).Value = vehData.numberOfAxles
Sheet1.Cells(32, 2).Value = vehData.vehicleCategory
Sheet1.Cells(33, 2).Value = vehData.colourOfVehicle
Sheet1.Cells(34, 2).Value = vehData.restrictionToChangeOwner
Sheet1.Cells(35, 2).Value = vehData.vehicleLoad




End Sub
[ dejantom @ 13.08.2015. 18:09 ] @
Pozdrav svima.
Preuzeo sam primer u Exelu za čitanje saobraćajne dozvole i sve super radi, ali meni bi trebalo da napisem takvu aplikaciju u vb.net-u...
Početnik sam u programiranju za sada sam napravio malu aplikaciju za servisiranje vozila sa Access bazom ,pa bi mi jako odgovarala opcija da mogu da povlačim podatke direktno sa čitača ,a ne da ih prepisujem.
Hvala unapred
[ ivanhoo @ 25.01.2016. 15:49 ] @
Zdravo svima,

Preuzeo sam primer u excelu za citanje licne karte medjutim javlja mi gresku Run-time error 429.

Postavicu slike. Svaka pomoc je dragocena

Hvala





[ markolugonja @ 13.03.2016. 21:10 ] @
Dobijam grešku da ne nalazi CELIKAPI_CLICKER :(. Svaka pomoć dobrodošla :).

[ jaskojsako @ 05.12.2017. 16:12 ] @
pozdrav
ima li neko ove fajlove sto je postavljao goranvuc
citat

"P.S. Excel primer imas u program files/LKReader folderu, ili pokreni precicu na njega koja se instalira u Start meni. MSI sam morao da razbijem na vise delova jer je ogranicen upload na ES, samo sve skini i pokreni MSI.

[Ovu poruku je menjao goranvuc dana 21.04.2014. u 02:55 GMT+1]

P.S. #2

Umesto uploadovane instalacije u komadima, evo link za download:

znam da je tema stara ali ako neko ima neka postavi
unaprijed hvala
[ duskoss @ 09.04.2018. 09:18 ] @
Citat:
mousea:
hvala ovo mi je trebalo :)

duzan sam ti pivo :)

Prošlo puno vremena. Mogu li dobiti i ja instalaciju? Pozdrav
[ duskoss @ 09.04.2018. 09:20 ] @
Ima li ko citanje licne karte u access ili excel. POzdrav
[ bokinet @ 28.07.2018. 18:33 ] @
Za koju verziju pozeljno bi trebalo biti sto se tice MS Access (x86/x64) i MS Excel?
[ Marko_Savic @ 26.07.2019. 14:21 ] @
Pokusavam nekoliko dana da ocitam licnu kartu u excelu ( izbacuje error 429) procitao sam sve teme vezane za ocitavanje licnih karata, imam instalirane sledece programe.

- Windows 7 64bit
- Office 2016
- Microsoft visual basic for applications 7.1
- Office 2003
- Visual basic 6
- Visual studio 2019 community
- Delphi 7
- CelikApi Windows 1.2.3.0 64-bit
- JFreesteel eID Viewer
- Eclipse IDE for Java EE Developers
- eUgovor - probna verzija.exe e ugovor


Pokusavam da izvedem da mi se automacku popune neki formulari trenutno su u PDF formatu sa Forms poljima za unos,
Mogu se isti napraviti i u wordu, svidja mi se program e ugovor pokusao sam da ih kontaktiram ali niko ne odgovara.
E ugovor ima par nedostataka
- Ne iscitava broj ulice
- Pomesana cirilica i latinica, IME PRETIME cililica MESTO DRZAVA latinica ( svim velikim slovima). Znam da je MUP to tako osmislio na LK ali mi se to nesvidja
- Niko ne odgovara tako da ga nemogu kupiti , u registry se ne moze ponistiti trajal perijod

Slicnih softvera nema u ponudi da se kupi iako vec koristimo E Lk vec 15god, ako zna neko neka kaze gde ima





[ bokinet @ 27.07.2019. 05:56 ] @
Moze da bude do verzije CELIKA (i samog Windows 32/64bit-a) ali i do verzija Office-a (32bit ili 64bit) kao i da fale neke sistemske biblioteke.

Ako imate negde na netu celu tu pricu oko instalacije i sve ostalo vezano za to, pustite mi poruku ili ovde kao link pa kad nadjem vremena da pogledam.

Takodje moze i mimo tog dodatka da se iscitaju podaci sa licne karte u VB/VBA ali i DOT.NET varijanti. Kod DOT.NET verzije lakse je sto se tice konverziije posto je izvorno podrzan UTF8 dok to nije slucaj sa VB/VBA 6.x.

Sto se tice konverzija kodnih strana i mesanja cirlice i latinice, koliko se secam prvo sam MUP to mesa kada vrsi upis u bazu i na LK ali se i to moze isto konvertovati da bude u jednoj kodnoj strani i pismu.

Evo imate na dole navedenom linku primer sto sam 2017/2018. odradio u VB6 za saobracajnu dozvolu (jednom poznaniku), posto sam za to stigao da nadjem projekat. Imam negde i za LK sto sam probao ako me pamcenje sluzi.




(ovo je saobracajna i LK varijanta o kojima vam pominjem na kraju su bez potrebe ovih dodataka sto ste vi gore naveli i opisali od te stare firme)
[ Marko_Savic @ 27.07.2019. 21:21 ] @
Goranvuc u ovoj temi iz 2014god [url=]https://www.elitesecurity.org/t475512 [/url] opisuje postupak, navodeci da je potrebno preuzeti msi instalaciju sa linka koji vise nije aktivan a bez te instalacije nije moguce pokrenuti excel u kome se iscitavaju podaci, sve ove teme sam procitao i pokusao jos neke varijante u accessu ali bezuspesno.

ActiveX DLL za citanje elektronske licne karte
CelikApi problem kod očitavanja broja lične karte
CelikNET: LGPL CLR Interop Wrapper za CelikAPI
Program za citanje podataka sa licne karte
Problem CelikAPI - Licne karte
Kako iz delphi aplikacije procitati licnu kartu uz pomoc celikapi.dll

Jedno od mogucih resenja koje sada pokusavam da izvedem je program Gorana Rakica jfreesteel sa otvorenim kodom na GitHubu github.com/grakic/jfreesteel/wiki

Verovatno da je moguce malo prepraviti kod i ubaciti jedno dugme -Genetisi excel datoteku-
[ bokinet @ 27.07.2019. 21:33 ] @
Kao sto sam vam vec rekao u mom prvom postu i odgovoru.

Moze da se odradi implementacija bez tih dodatnih biblioteka.

Ja sam to pre uradio (period 2017/2018.) i za LK i za saobracajnu dozvolu.

Koliko se secam samo odgovarajuci celikapi za LK odnosno ono ostalo sto je potrebno u vezi saobracajne sto moze da se preuzme sa MUP-ovog sajta.

Nisam odradio varijantu tada za dot.net, vec samo u VB6 ali ako moze u VB6 onda moze i u dot.net - sve iz razloga sto potreba nije nalagala da po tom pitanju bilo sta radim.

[ sandib @ 01.03.2020. 11:53 ] @
Pozdrav,
da li ima neko trenutnu varijantu da u accessu povlaci licnu kartu da radi.
bio bi jako zahvlan i platio koliko god treba. :)
[ sandib @ 01.03.2020. 11:56 ] @
Pozdrav,
da li ima neko trenutnu varijantu da u accessu povlaci licnu kartu da radi.
bio bi jako zahvlan i platio koliko god treba. :)
[ maracom @ 08.03.2020. 11:51 ] @
Druže ne mogu da preuzmem tvoju instalaciju za Excell čitanje ličnih karata. Možež li nekako da mi pomogneš.
[ Marko_Savic @ 08.03.2020. 12:27 ] @
>
[ Marko_Savic @ 08.03.2020. 12:54 ] @
Ima rešenja, program e ugovor generise sve podatke iz lk u exel

https://e-ugovor.rs/
[ sandib @ 08.03.2020. 13:09 ] @
>
[ febo27 @ 09.09.2020. 08:52 ] @
Zdravo svima. Pokusao sam vise primera odavde ali ni jedan primer za citanje saobracajne ne moze da procita RegistrationData (groupSD_REGISTRATION_DATA) polja.

Bilo kakva smernica bi mi bila od pomoci, a s obzirom da vidim da je bokinet napravio koji cita i to polje on bi mozda mogao i kompletno resenje da mi kaze.

Edit: Uz malo istrazivanja nasao sam da mi daje gresku 87 ili ERROR_INVALID_PARAMETER.
Code:
 
    lngAnswer = RegEngine.ReadRegistration(2, regData)
    
    'Ispitivanje povratne vrednosti: 0 - OK procitano je kako treba, ostalo su greske
    Select Case lngAnswer
       Case 0
          
  '     Case Else
  '        MsgBox "Greska pri citanju!"
  '        Exit Sub
    End Select
    
    'Ispis nekoliko polja kao primer

    Sheet1.Cells(10, 2).Value = RegEngine.ReadRegistration(2, regData)
    Sheet1.Cells(10, 3).Value = RegEngine.ReadRegistration(1, regData)
    Sheet1.Cells(10, 4).Value = RegEngine.ReadRegistration(3, regData)

    'Sheet1.Cells(11, 2).Value = regData.issuingAuthority
    'Sheet1.Cells(10, 3).Value = regData.signatureData

Nakon ovih izmena tj. dodavanja ispravnog indexa dobijam odgovor 0 od sva tri indexa, dakle ok. Ali i dalje ne mogu da pristupim podacima. Izbacuje gresku 1004 - Application defined or object defined error.

[Ovu poruku je menjao febo27 dana 09.09.2020. u 11:12 GMT+1]
[ ZoranKLD @ 15.10.2020. 11:09 ] @
Pozdrav,
i meni je potrebna varijanta da u accessu povlaci licnu kartu da radi.
Ne bih ostao duzan, sigurno :)
[ jmilovic @ 16.01.2024. 00:27 ] @
Pozdrav svima, ozivljavam ovu temu jer ne uspevam nikako da napravim sa ovim do sada..

Svaka pomoc je dobrodosla...
[ bokinet @ 03.02.2024. 05:25 ] @
Za koje (razvojno) okruzenje?
[ jmunja @ 06.02.2024. 17:53 ] @
Ako može čitanje lične karte i zapis podataka u VBA excel 2007.
[ bokinet @ 06.02.2024. 23:19 ] @
Izvadio sam iz stare arhive kompajliranu ActiveX dll biblioteku pisanu svojevremeno u VB6.

Proverio sam brzinski da li radi još uvek sa MUP api-jem (koji koristim kod mene) i primerima koji prate istu.

Na Windows 10 x64 radi bez problema (testiran primer u VB.NET).

Još tada su odrađeni primeri za:

MS VB.NET (Visual Studio 2017)
MS Visual Basic 6 SP6 (VB)
MS Access 2002 - 2003 (VBA)
MS Access 2016 (VBA)
MS Excel (VBA)

U VB.NET je urađen kompletan primer gde je pokazano i isčitavanje slike.

Postoji mogućnost sa/bez UTF8 konverzije preuzetih podataka.

Što se tiče slike sa LK vezano za VB6 i VBA, u biblioteci je omogućeno korišćenje IPicture interfejsa kao i binarnog niza koji predstavlja isčitanu sliku sa LK.

Code:

.Picture.PersonPictureB ' Ovo je binarni niz koji iz koga je konvertovan sadrzaj i napravljena slika IPicture tipa
.Picture.PersonPicture  ' Ovo je IPicture tip objekta | treba videti kako se to moze iskoristiti u MS Access-u i sl.


Primer u VB6 za sliku

Code:

Set Picture1.Picture = <naziv instance objekta lk lib>.Picture.PersonPicture


MS Forms 2.0 u VB6 trebalo bi da podržava UTF8 prikaz obzirom da ni VB6 a ni VBA nisu UTF8 ready.

Github link:
https://github.com/bokidotnet/muprs-lk-lib


Implementacija i primena iste ne bi trebalo da je komplikovana ako se sve bude radilo kako treba i kako je navedeno još kada sam napravio ovo i naveo u primerima.

Nadam se da će pomoći.

p.s. Ko ima vremena neka napravi slobodno novi topic na formu za ovo ako vrsi posao.



[ bokinet @ 06.02.2024. 23:21 ] @
Za saobracajnu drugom prilikom kad budem imao malo vise slobodnog vremena...
[ jmunja @ 07.02.2024. 16:35 ] @
Ako može odgovor u čemu sam pogrešio.
U VBA Excel 2007 prijavljuje grešku: „53 – File not found:CelikApi.dll“
Imam instaliran Čelik za čitanje ličnih karata u „C:\Program Files\MUP RS“
Hvala unapred.
[ bokinet @ 07.02.2024. 17:00 ] @
CelikApi.dll nije vidljiv tj. dostupan ili fizicki se ne nalazi na racunaru.

Celik aplikacija nije isto sto i CelikApi.dll.

Pogledati pisaniju u procitaj me.txt file-u.

Malo vise info. oko nacina implementacije sa vase strane bi znacilo.

Dakle, lokacija recimo gde bi trebalo da bude vrlo verovatno vidlji dll je 'c:\windows'

[Ovu poruku je menjao bokinet dana 07.02.2024. u 19:34 GMT+1]
[ jmunja @ 08.02.2024. 15:35 ] @
Hvala Vam na sugestijama. Uspeo sam da rešim problem tako što sam folder "Lib" postavio na particiju "C" i odatle sam pokrenuo "install_lib".
Hvala još jednom
[ bokinet @ 08.02.2024. 15:46 ] @
Nema na cemu.

Sa 'c:\windows' folderom kod Windows-a nema greske posto moze da bude problema od build do build Windows OS i da li je 32-bit / 64-bit i da li je Office 32-bit ili Office 64-bit :)

Naknadna napomena:
Ovo sto sam postavio za download nije usaglaseno i testirano sa poslednjom verzijom CelikApi.dll koja se nalazi na MUP situ-u ali sve dll verzije koje su tada koriscene su sastavni deo zip file-a!
U sustini trebalo bi uvek da prolazi kombinacija CelikApi u 32bit verziji i za 32-bit i 64-bit verzije.
[ jmilovic @ 08.02.2024. 23:20 ] @
Uporno dobijam poruku -2147221164 class not registered gresku, i u excelu i u accessu.

Gde gresim?
[ bokinet @ 08.02.2024. 23:38 ] @
Zavisi od postupka i nacina rada/implementacije.

Koje razvojno okruzenje i td.?

Procitati txt file u prilozenom zip file-u.
[ jmilovic @ 08.02.2024. 23:42 ] @
Registrovao sam muplklib.dll uspesno, u reference chekiran, isprobano i u accessu i u excelu.
[ bokinet @ 08.02.2024. 23:45 ] @
Da li znaci da radi?
[ jmilovic @ 08.02.2024. 23:51 ] @
Pa ne radi, na zalost... Konstantno izbacuje gore pomenutu gresku...
[ bokinet @ 08.02.2024. 23:52 ] @
Verzije:
Windows OS? arh. x86/x64?
Office verzija ? arh. x86/x64?

[ jmilovic @ 08.02.2024. 23:57 ] @
Windows 11 x64
Office pro 2021 x64
[ bokinet @ 09.02.2024. 00:08 ] @
Generalno resenje kada je u pitanju x64 varijanta je da se uradi injection load preko ActiveX Exe (koje se napise u VB6) i gde se posle preko VBA pristupa biblioteci gde se ActiveX Exe koristi kao servis za kreiranje instance ActiveX dll objekta.

Isto celikapi.dll treba da bude vidljiv od strane OS-a na pr. c:\windows folder i sl. kako bi mogao da se ucita i posle iscitaju podaci.

Ovo vazi za sve stvari koje su stare varijante ActiveX dll (koje su recimo pisane u VB6 kao ovaj lib.) a da se hoce da iste rade u Office-u 64-bit.

Pravilo vazi sigurno zakljucno sa Windows 10.

Za Windows 11 nije mi poznato ali bi trebalo vazi isto.
[ bokinet @ 11.02.2024. 22:35 ] @
Zbog nemogućnosti ispravnog korišćenja ActiveX dll-ova koji su pisani recimo u VB6 i dr. starijim razvojnim okruženjima iste je moguće učitati bez menjanja istih pomoću ActiveX Exe biblioteke.

U te svrha na navedenom linku se nalazi ActiveX Exe biblioteka koja to rešava kao i praktičan primer na primeru MUPLKLib.dll.

Ovim se omogucava koriscenje svih starih ActiveX dll-ova u MS Office 64-bit VBA okruzenju.

Github link:
https://github.com/bokidotnet/activexdllvb6office64bit/

Primer koda na Github:
https://github.com/bokidotnet/.../main/VB6Office64%20primer.bas