Announcement

Collapse
No announcement yet.

doku zur 16bit bde

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • doku zur 16bit bde

    hi,

    ich suche dringend ne doku zur 16bit bde bzw. deren befehlen!<br>
    insbesondere geht um den befehl dbigetdatabasedesc(edit1.text, @dbdesc);<br>
    von welchem typ ist der erste parameter?

    gruß

    markus
    Herzliche Grüße

    Markus Lemcke
    barrierefreies Webdesign

  • #2
    Hallo,

    Borland hatte damals das <b>BDE SDK</b> (130 Dateien mit 2,66 MB) zur Verfügung gestellt, dort ist auch die Hilfedatei BDE.HLP mit der Dokumentation der 16-Bit-IDAPI-Funktionen enthalten. Die Hilfeseite zu <b>DbiGetDatabaseDesc</b> sieht so aus:

    <pre>
    DbiGetDatabaseDesc

    Syntax

    DBIResult DBIFN DbiGetDatabaseDesc (pszName, pdbDesc);

    Description

    DbiGetDatabaseDesc retrieves the description of the specified database from the configuration file.

    Parameters

    pszName Type: pCHAR (Input)
    Pointer to the database name.
    pdbDesc Type: pDBDesc (Output)
    Pointer to the client-allocated DBDesc structure.

    Prerequisites

    A valid database (alias) name must be specified.

    Completion state

    The output buffer contains the database description.

    DbiResult return values

    DBIERR_NONE The database description for pszName was retrieved successfully.
    DBIERR_OBJNOTFOUND The database named in pszName was not found.

    See also

    DbiOpenDatabaseList
    </pre>
    Im BDE-SDK ist auch ein umfangreiches Beispielprogramm, aus dem die folgende Unit mit einem Beispiel für diese IDAPI-Funktion stammt:
    <pre>
    { Aliases.pas }
    program Aliases;

    {$IfDef VER80}
    uses SnipTool, SnipData, SysUtils, WinTypes, WinProcs,
    DbiProcs, DbiTypes, DbiErrs;
    {$Else}
    uses WinTypes, WinCrt, Strings, DbiProcs, DbiTypes, DbiErrs,
    SnipTool, SnipData;
    {$EndIf}

    {================================================= ====================
    Procedure: Alias();

    Input: None.

    Return: None.

    Description:
    This example list the aliases available in the current
    configuration file.
    ================================================== =================== }

    var
    hDb: hDBIDb; { Handle to the Database }
    hDbCur: hDBICur; { Handle to the table }
    rslt: DBIResult; { Return value from IDAPI functions }
    TblProps: CURProps; { Table Properties }
    pRecBuf: pBYTE; { Record Buffer }
    szDatabase: array[0..DBIMAXNAMELEN+1] of CHAR;
    { String to contain the driver name }
    bIsBlank: BOOL; { Is the field blank? }
    DBDes: DBDesc; { Database descriptor }

    begin
    Screen('*** Alias Information Example ***');
    Screen('');

    Screen(' Initializing IDAPI...');
    if (InitAndConnect(hDb) <> DBIERR_NONE) then { Terminate example if }
    begin { Initialization fails }
    Screen('');
    Screen('*** End of Example ***');
    exit;
    end;

    Screen(' Setting the default Database directory... ');
    ChkRslt(DbiSetDirectory(hDb, pCHAR(szTblDirectory)), DBIERR_NONE,
    ' Error - DbSetDirectory.');

    rslt := ChkRslt(DbiOpenDatabaseList(hDbCur), DBIERR_NONE,
    ' Error - OpenDatabaseList.');

    if (rslt <> DBIERR_NONE) then
    begin
    Screen('');
    Screen(' Close the Database and exit IDAPI...');
    CloseDbAndexit(hDb);

    Screen('');
    Screen('*** End of example ***');
    exit;
    end;

    { Get the size of the record buffer }
    ChkRslt(DbiGetCursorProps(hDbCur, TblProps), DBIERR_NONE,
    ' Error - GetCursorProps.');

    { Allocate space for the Record Buffer }
    GetMem(pRecBuf, TblProps.iRecBufSize * sizeof(BYTE));
    if not Assigned(pRecBuf) then
    begin
    Screen(' Error - Could not allocate memory.');
    ChkRslt(DbiCloseCursor(hDbCur), DBIERR_NONE,
    ' Error - CloseCursor.');

    Screen('');
    Screen(' Close the Database and exit IDAPI...');
    CloseDbAndexit(hDb);

    Screen('');
    Screen('*** End of example ***');
    exit;
    end;

    Screen(' Go to the beginning of the table...');
    ChkRslt(DbiSetToBegin(hDbCur), DBIERR_NONE,
    ' Error - SetToBegin.');

    { Display information about all available aliases
    set in the configuration file. }
    while (DbiGetNextRecord(hDbCur, dbiNoLock, pRecBuf, nil)
    = DBIERR_NONE) do
    begin
    { Get the name of the Driver }
    ChkRslt(DbiGetField(hDbCur, 1, pRecBuf, @szDatabase,
    bIsBlank), DBIERR_NONE,
    ' Error - GetField.');

    { Skip a line }
    Screen('');

    { Get the description of the alias }
    rslt := ChkRslt(DbiGetDatabaseDesc(szDatabase, @DBDes),
    DBIERR_NONE, ' Error - GetDriverDesc.');
    if (rslt <> DBIERR_NONE) then
    continue;

    { Display the information about the database }
    Screen(' Logical Name or Alias: '+
    ' '+StrPas(DBDes.szName)+'');
    Screen(' Physical Name/Path: '+
    ' '+StrPas(DBDes.szPhyName)+'');
    Screen(' Database type: '+
    ' '+StrPas(DBDes.szDbType)+'');
    end;

    { Free the record buffer }
    FreeMem(pRecBuf, TblProps.iRecBufSize * sizeof(BYTE));

    { Close the table }
    ChkRslt(DbiCloseCursor(hDbCur), DBIERR_NONE,
    ' Error - CloseCursor.');

    Screen('');
    Screen(' Close the Database and exit IDAPI...');
    CloseDbAndexit(hDb);

    Screen('');
    Screen('*** End of Example ***');

    end.
    </pre&gt

    Comment


    • #3
      hi andreas,

      bekommt man diese doku noch irgendwoher?

      gruß

      marku
      Herzliche Grüße

      Markus Lemcke
      barrierefreies Webdesign

      Comment


      • #4
        Hallo Markus,

        wenn ich mich richtig erinnere, war das BDE SDK ein Bestandteil der (kostenpflichten) <b>Borland TIP-CD</b> (stammt aus dem alten, inzwischen eingestellten <i>Borland Connection</i>-Programm)

        Comment


        • #5
          auf gut deutsch: jetzt ist es zu spät

          gruß

          marku
          Herzliche Grüße

          Markus Lemcke
          barrierefreies Webdesign

          Comment

          Working...
          X