Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Programmatically registering a user DSN

Posted on 2000-03-28
1
Medium Priority
?
824 Views
Last Modified: 2012-05-04

I know that this question has probably been asked fumfty times before but...

How do I get a listing of my currently installed DSNs and User DSNs, and then how do I create a DSN?

I tried using SOFTWING odbctool.dll (I used regsvr32 odbctool.dll) but delphi didn't recognize any of the classes. If it had worked, it would have been exactly what I was looking for.

Can anybody help me?
0
Comment
Question by:JLANE
1 Comment
 

Accepted Solution

by:
saravananr earned 200 total points
ID: 3098414
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Buttons;

const
  ODBCCP32 = 'ODBCCP32.DLL';

  function SQLConfigDataSource(
               hwndParent:       Integer;
               fRequest:         Integer;
               lpszDriverString: String;
               lpszAttributes:   String): Integer;stdcall;



type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;


var
  Form1: TForm1;

implementation

  function SQLConfigDataSource(
               hwndParent:       Integer;
               fRequest:         Integer;
               lpszDriverString: String;
               lpszAttributes:   String): Integer; external ODBCCP32 Name 'SQLConfigDataSource';

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
  rc: Integer;
  sName, sMDB : string;
begin
    sName := 'LqODBCDsn11';
    sMDB := 'D:\PROJECTS\LQ\Speedline\InterFace Database\Data\intfacedb.db';//   ' ( app.path & "test.mdb")

{   Microsoft Access Driver (*.mdb)}
//    rc := SQLConfigDataSource(0, 1, 'Microsoft Access Driver (*.mdb)', 'DSN=' + sName +
//    Chr(0) + 'DBQ=' + sMDB + Chr(0) + Chr(0));


// return code 0 means failure
    If rc = 0 Then
        ShowMessage('Could not configure data Source.');

end;

end.
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The uses clause is one of those things that just tends to grow and grow. Most of the time this is in the main form, as it's from this form that all others are called. If you have a big application (including many forms), the uses clause in the in…
Introduction Raise your hands if you were as upset with FireMonkey as I was when I discovered that there was no TListview.  I use TListView in almost all of my applications I've written, and I was not going to compromise by resorting to TStringGrid…
Is your data getting by on basic protection measures? In today’s climate of debilitating malware and ransomware—like WannaCry—that may not be enough. You need to establish more than basics, like a recovery plan that protects both data and endpoints.…
Screencast - Getting to Know the Pipeline
Suggested Courses

927 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question