[C++] firebird API geeft error

Pagina: 1
Acties:

  • dexter07051982
  • Registratie: November 2001
  • Laatst online: 16-07-2025
ik heb het probleem dat tijdens het runnen ik de fout krijg dat de DPB niet goed is. ik snap niet waarom en dus ook niet wat ik fout doe. Kan iemand mij dit vertellen?

(code is niet echt netjes maar het is maar een probeersel om te een verbinding te krijgen)

C++:
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
#include "ibase.h"
#include "iostream.h"
#include "string.h"

int main()
{
    cout << "test \n";
    isc_db_handle db1;      // declare database handle
    db1 = 0L;

    isc_tr_handle tr1;      // declare transaction handle
    tr1 = 0L;

    char dpb_buffer[255], *dpb;
    short dpb_length;
    // Construct a database parameter buffer.
    dpb = dpb_buffer;
    *dpb++ = isc_dpb_version1;
    *dpb++ = isc_dpb_num_buffers;
    *dpb++ = 1;
    *dpb++ = 90;
    dpb_length = dpb - dpb_buffer;

    char uname[255] = "SYSDBA";
    char upass[255] = "masterkey";
    /* Add user name and password to DPB. */
    dpb = dpb_buffer;
    isc_expand_dpb(&dpb, &dpb_length, isc_dpb_user_name, uname, isc_dpb_password, upass, NULL);

    char *filenaam = "C:\\Program Files\\Firebird\\Firebird_1_5\\examples\\employee.fdb";
    ISC_STATUS status_vector[20];   // error conditions

    isc_attach_database(status_vector, strlen(filenaam), filenaam, &db1,
        dpb_length,
        dpb_buffer);

    if (status_vector[0] == 1 && status_vector[1])
    {
        isc_print_status(status_vector);
        return (1);
    }

    return (0);
}


gebruikte howto (na tip)
http://www.ibphoenix.com/downloads/60ApiGuide.zip

ik gebruik win xp home, firebird 1.5 en MS VS C++ 6.0

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 23:27

Creepy

Tactical Espionage Splatterer

Welke foutmelding krijg je? Op welke regel krijg je deze melding?

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • dexter07051982
  • Registratie: November 2001
  • Laatst online: 16-07-2025
Creepy schreef op 03 februari 2004 @ 18:22:
Welke foutmelding krijg je? Op welke regel krijg je deze melding?
de error is een tekstregel dat de dpb niet klopt. deze wordt weergegeven als ik de connectie met de database probeer te maken.
(dus geen compilererror)

Verwijderd

dexter07051982 schreef op 05 februari 2004 @ 09:28:
[...]


de error is een tekstregel dat de dpb niet klopt. deze wordt weergegeven als ik de connectie met de database probeer te maken.
(dus geen compilererror)
De connectie moet dacht ik in het volgende formaat zijn:

server_ip:database

dus

127.0.0.1:C:\\Program Files\\Firebird\\Firebird_1_5\\examples\\employee.fdb

o.i.d. zelf ff verifieren.

[ Voor 4% gewijzigd door Verwijderd op 05-02-2004 21:09 ]


  • dexter07051982
  • Registratie: November 2001
  • Laatst online: 16-07-2025
ik ben nu per toeval achter de oorzaak van de error gekomen.
als ik namelijk dpb meegeef aan attacht db dan doet ie het wel. ik weet nu alleen niet waarom het niet werkt als ik dpb_buffer meegeef. voor zover ik weet verwijzen die toch naar hetzelfde adress?

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 04:03
Niet als isc_expand_dpb iets met dpb gedaan heeft. Iets zinnigers kan ik er niet over zeggen; dit is typisch debugwerk.
Pagina: 1