Sterownik w ODBC

0

Jak sprawdzic czy w ODBC istnieje dany sterownik, w moim przypadku np. chodzi mi o sterownik MySQL Connector/ODBC v5.
Chodzi mi o to zeby aplikacja na poczatku uruchamiania sprawdzila czy sterownik istnieje, jesli nie to uruchom program do zainstalowania go.

0

Posłużyć do tego może:

function SQLGetInstalledDrivers(lpszBuf: PChar; cbBufMax: Word; var pcbBufOut: Word): WordBool; stdcall; external 'odbccp32.dll';

A stosujemy ją np. tak:

procedure TForm1.Button1Click(Sender: TObject);
var
  aBuf    : array[0..4095] of Char; //4KB to chyba wystarczający bufor na nazwy sterowników :)
  wBytes  : Word;

  p : PChar;
begin
  if SQLGetInstalledDrivers(aBuf, 4096, wBytes) then
  begin
    p := aBuf;
    while p^ <> #0 do
    begin
      Memo1.Lines.Add(p);
      Inc(p, Length(p) + 1);
    end;
  end;
end;

1 użytkowników online, w tym zalogowanych: 0, gości: 1