[C#] EID applicatie oproepen via server

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • jeetn
  • Registratie: April 2006
  • Laatst online: 16-10-2024
Hallo,

We (mijn collega en ik) moeten voor onze stage een applicatie schrijven waar je je EID kaart in een kaartlezer stopt op een knop drukt en alle gegevens die nodig zijn in een formulier worden ingevuld.

Dit is ons zonder problemen gelukt, maar dit lukt wel maar enkel op onze localhost.

Als wij nu deze applicatie op de server plaatsen en deze proberen aan te roepen dan zien we wel dat wordt geprobeerd de kaart te lezen, maar verder doet hij niets... Hij blijft gewoon lezen...

Als we dat met Visual Studio 2005 debuggen dan lukt het zonder problemen... Er wordt ons 3x gevraagd om op OK te drukken om toegang tot de kaart te verlenen. En daarna zien we de gegevens in het formulier verschijnen.

Wanneer we de applicatie (die op een server staat) aanroepen vanop een laptop en dan op de knop drukken om onze gegevens te laten verschijnen. Dan verschijnen die 3 message boxen niet om te vragen of toegang tot de kaart mag worden verleend. Hij blijft op dat moment gewoon lezen (volgens ons toch), we zien gewoon dat de browser verder blijft laden... We hebben deze al eens 45 min lang laten draaien en nog zagen we de gegevens niet :s

Mss weet iemand van jullie wat we verkeerd doen?

Acties:
  • 0 Henk 'm!

  • urk_forever
  • Registratie: Juni 2001
  • Laatst online: 17:38
Moeten we met onze glazen bol zien hoe jou programma eruit ziet? MAW laat een wat zien van wat je doet.

Hail to the king baby!


Acties:
  • 0 Henk 'm!

  • sig69
  • Registratie: Mei 2002
  • Laatst online: 21:31
jeetn schreef op woensdag 02 april 2008 @ 17:10:
...
Wanneer we de applicatie (die op een server staat) aanroepen vanop een laptop en dan op de knop drukken om onze gegevens te laten verschijnen. Dan verschijnen die 3 message boxen niet om te vragen of toegang tot de kaart mag worden verleend. Hij blijft op dat moment gewoon lezen (volgens ons toch), we zien gewoon dat de browser verder blijft laden... We hebben deze al eens 45 min lang laten draaien en nog zagen we de gegevens niet :s

Mss weet iemand van jullie wat we verkeerd doen?
Hoe moet ik dit zien? Er staat een .exe op de server die je vanaf de laptop opent of wat? Je logt verder ook niks? Hoe "zie" je dat de applicatie wel aan het lezen is?

[ Voor 5% gewijzigd door sig69 op 02-04-2008 17:20 ]

Roomba E5 te koop


Acties:
  • 0 Henk 'm!

  • jeetn
  • Registratie: April 2006
  • Laatst online: 16-10-2024
Hoe moet ik dit zien? Er staat een .exe op de server die je vanaf de laptop opent of wat?
Op de server staat geen .exe. Het is een webapplicatie die we maken. Op de server staat IIS, daar hebben we alle nodige gegevens op geplaatst om de site te laten werken.

Op de laptops moeten we dus gewoon surfen naar de server met ook verwijzing naar de map waarin de website op de server staat.

Hierna verschijnt de default.aspx. Wanneer we nu een kaart in de kaartlezen steken en op de knop drukken om de gegevens uit te lezen dan gebeurt er niets meer. De pagina blijft dan gewoon laden.
Hoe "zie" je dat de applicatie wel aan het lezen is?
Dat "zien" we door dat de pagina blijft laden. En omdat de smartcard reader aangeeft dat de kaart wordt gelezen.
Je logt verder ook niks?
Wat bedoel je hiermee?


Hier een paar delen van onze code:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//Aanmaken collecties om data in op te slaan
MapCollection MapColID = new MapCollection();
..
..
RetStatus retStatus = new RetStatus();
EIDlib eid = new EIDlib();
..
..
retStatus = eid.Init("", 0, 0, out lHandle);
..
naam = (String)MapColID.GetValue("Name");
voornaam = (String)MapColID.GetValue("FirstName1");
gebDat = (String)MapColID.GetValue("BirthDate");
gebPlaats = (String)MapColID.GetValue("BirthPlace");
rijksRegister = (String)MapColID.GetValue("NationalNumber");

Acties:
  • 0 Henk 'm!

  • sig69
  • Registratie: Mei 2002
  • Laatst online: 21:31
Steek je de kaart in de laptop of in de server? Dat maakt nogal een verschil natuurlijk

[ Voor 29% gewijzigd door sig69 op 02-04-2008 19:16 ]

Roomba E5 te koop


Acties:
  • 0 Henk 'm!

  • roy-t
  • Registratie: Oktober 2004
  • Laatst online: 19-09 10:19
Ik neem aan dat de website via een activex iets de kaartlezer in de laptop accessed? Daar gaat het waarschijnlijk fout met permissies.

~ Mijn prog blog!


Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 21:57
Schrijf eens wat trace-code in je web-pagina, zodanig dat je kan nagaan waar die pagina precies blijft hangen.

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • jeetn
  • Registratie: April 2006
  • Laatst online: 16-10-2024
We steken de kaart in de laptop. (Daar hebben we nog een probleem aangezien de applicatie telkens kijkt of er een kaart in de server zit)

activeX mag normaal geen problemen geven aangezien het wel lukt als we de applicatie debuggen vanuit Visual Studio. Die wordt dan ook in de browser gestart en daar lukt alles dan perfect.

Het probleem is ontstaan wanneer we begonnen testen nadat de applicatie op de server werd geplaatst.


EDIT:

We hebben nog een beetje zitten debuggen en hebben vastgesteld dat op dit deel wordt vastgelopen:

code:
1
retStatus = eid.GetID(out MapColID, out CertifCheck);


Hieronder een deel van de methode die we aanroepen wanneer op de knop wordt gedrukt:

code:
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
//Functie fillForm om de gegevens vanaf de eID naar het form te schrijven.
    void fillForm()
    {
        // Declareren van nodig parameters

        //PERSOON
        String naam;
        ...

        //ADRES
        String adres;
        ...
        //FOTO

        //KAARTINFO
        String vervalDatum;

        //Aanmaken collecties om data in op te slaan
        MapCollection MapColID = new MapCollection();
        ...
        CertifCheck CertifCheck = new CertifCheck();

        RetStatus retStatus = new RetStatus();
        EIDlib eid = new EIDlib();
        int lHandle = new int();

        //initialiseren van de eID-toolkit
        retStatus = eid.Init("", 0, 0, out lHandle);

        //try
        //{
            /************************************************
             * GEGEVENS IN COLLECTIES EN PARAMETERS STOPPEN *
             ************************************************/

            //Persoonsgegevens
            [b]retStatus = eid.GetID(out MapColID, out CertifCheck);[/b]

            naam = (String)MapColID.GetValue("Name");
            ...

[ Voor 76% gewijzigd door jeetn op 03-04-2008 08:49 ]


Acties:
  • 0 Henk 'm!

  • Niemand_Anders
  • Registratie: Juli 2006
  • Laatst online: 09-07-2024

Niemand_Anders

Dat was ik niet..

Euh, Visual Studio staat op de laptop en de (development) website wordt ook gehost vanaf de website toevallig?

If it isn't broken, fix it until it is..


Acties:
  • 0 Henk 'm!

  • jeetn
  • Registratie: April 2006
  • Laatst online: 16-10-2024
Ik snap niet echt wat je bedoelt.

Visual Studio staat idd op de laptop.
Pagina: 1