Arsip: [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
more 11 years ago
kepiss
Para master saya ada masalah nie bikin koneksi menggunakan adoconnection
saat runtime.
latarbelakang masalahnya.
kan biasanya kalo aplikasi pindah komputer kalokoneksinya pake odbc pasti minta odbc datasource nya.
lha ane pingin saat aplikasi berjalan langsung membuat ODBC USER DSM sendiri terus setelah itu koneksi string
dari ado diseting gitu.
yang ane bingungin nyeting connction stringnya gimana yaw....
ini script yang sudah ane coba...mohon dikoreksi ya para guru..:D
[pas]
// ini code yang ane dapet dari searching....n pembuatannya User DSN nya berhasil tapi Configurasinya tidak bisa
const
ODBC_ADD_DSN = 1; // Add data source
ODBC_CONFIG_DSN = 2; // Configure (edit) data source
ODBC_REMOVE_DSN = 3; // Remove data source
ODBC_ADD_SYS_DSN = 4; // add a system DSN
ODBC_CONFIG_SYS_DSN = 5; // Configure a system DSN
ODBC_REMOVE_SYS_DSN = 6; // remove a system DSN
type
TSQLConfigDataSource = function( hwndParent: HWND;
fRequest: Integer;
lpszDriver,
lpszAttributes,
lpszMsg: PChar;
cbMsgMax: Word;
var pcbMsgOut: Word ) : BOOL; stdcall;
procedure AddDSN;
var
pFn: TSQLConfigDataSource;
hLib: LongWord;
strDriver,
strHome,
strAttr,
msgOut: PChar;
strFile: string;
fResult: BOOL;
ModName: array[0..MAX_PATH] of Char;
srInfo : TSearchRec;
OutLen : Word;
begin
hLib := LoadLibrary( 'ODBCCP32' ); // load from default path
if( hLib <> NULL ) then
begin
@pFn := GetProcAddress( hLib, 'SQLConfigDataSource' );
if( @pFn <> nil ) then
begin
GetMem( strDriver,255 );
StrCopy( strDriver,'Mysql ODBC 5.1 Driver' );
GetMem( strAttr,255 );
StrCopy( strAttr,'DSN=Test' +#0+'host=localhost'+#0+'user=root'+#0+'database=koprasi'+#0+#0);
GetMem( MsgOut,255 );
OutLen := 0;
fResult := pFn( 0, ODBC_ADD_DSN, strDriver, strAttr, MsgOut, 255, OutLen );
if( fResult = false ) then ShowMessage( 'Create DSN failed!' );
end;
FreeLibrary( hLib );
FreeMem( strDriver );
FreeMem( strAttr );
Freemem( MsgOut );
end
else
begin
ShowMessage( 'Unable to load ODBCCP32.DLL' );
end;
end;
// mengetes koneksinya gan ...tapi gagal..masalhnya apa yaw
procedure TForm1.Button1Click(Sender: TObject);
begin
try
AddDSN;
Adoconnection1.Connected:=False;
adoconnection1.ConnectionString:='Driver=MSDASQL.1;Persist Security Info=False;User ID=root;Data Source=Test;Initial Catalog=koprasi';
adoconnection1.LoginPrompt:=False;
Adoconnection1.DefaultDatabase:=null;
Adoconnection1.Connected:=True;
Showmessage('koneksi oke');
except
Showmessage('gagal biz');
end;
end;
Mohon yang bisa kasih solusi...butuh bantuan banget nie para guru...[/pas]
more 11 years ago
halimanh
Kalo saya sih pake cara yg lebih mudah. Buat suatu empty file dengan ekstensi .udl (bisa pake explorer), misalnya Koneksi.udl.
Terus di AdoConnectionnya:
ADoConnection.connectionString := 'Koneksi.udl'; //Kalo ditaruh di direktori yg sama dgn aplikasi, bisa dipake GetAppPath()
Nah, sekarang double click file 'koneksi.udl' di explorer. Bakal ada window popup. Sekarang tinggal configurasi koneksinya, seperti biasa. Sewaktu diinstall di tempat client, tinggal double click lagi file koneksi.udlnya untuk setting di tempat client, beres kan. Dengan begini, settingannya terpisah dengan aplikasinya, dan fleksible, bisa diubah sesuai kebutuhan.
more 11 years ago
kepiss
@halimanh: Kalo saya sih pake cara yg lebih mudah. Buat suatu empty file dengan ekstensi .udl (bisa pake explorer), misalnya Koneksi.udl. Terus di AdoConnectionnya:Maaf mas baru bales.....maksudnya gimana ya mas..... koneksi.udl nanti isinya apa?? apakah cuma kosongan file gitu mas?? logikanya bagaimana mas kok bisa?? maaf mas banyak nanya.....Nah, sekarang double click file 'koneksi.udl' di explorer. Bakal ada window popup. Sekarang tinggal configurasi koneksinya, seperti biasa. Sewaktu diinstall di tempat client, tinggal double click lagi file koneksi.udlnya untuk setting di tempat client, beres kan. Dengan begini, settingannya terpisah dengan aplikasinya, dan fleksible, bisa diubah sesuai kebutuhan.ADoConnection.connectionString := 'Koneksi.udl'; //Kalo ditaruh di direktori yg sama dgn aplikasi, bisa dipake GetAppPath()
more 11 years ago
halimanh
Silahkan coba dulu yg saya tulis ini, nanti pertanyaan anda terjawab sendiri.
@kepiss: [quote:70632df285="halimanh"]Kalo saya sih pake cara yg lebih mudah. Buat suatu empty file dengan ekstensi .udl (bisa pake explorer), misalnya Koneksi.udl. Terus di AdoConnectionnya:Nah, sekarang double click file 'koneksi.udl' di explorer. Bakal ada window popup. Sekarang tinggal configurasi koneksinya, seperti biasa. Sewaktu diinstall di tempat client, tinggal double click lagi file koneksi.udlnya untuk setting di tempat client, beres kan. Dengan begini, settingannya terpisah dengan aplikasinya, dan fleksible, bisa diubah sesuai kebutuhan.[/quote:70632df285] Maaf mas baru bales.....maksudnya gimana ya mas..... koneksi.udl nanti isinya apa?? apakah cuma kosongan file gitu mas?? logikanya bagaimana mas kok bisa?? maaf mas banyak nanya.....ADoConnection.connectionString := 'Koneksi.udl'; //Kalo ditaruh di direktori yg sama dgn aplikasi, bisa dipake GetAppPath()
more ...
- Pages:
- 1
reply |
Report Obsolete
Last Articles
Last Topic
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 3 years ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 4 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 11 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 11 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 11 years ago
Random Topic
- handshaking
by ihsantea in Enginering more 16 years ago - Posisi Alligment Center di TEDIT
by DeulleDo-X in Hal umum tentang Pascal Indonesia more 17 years ago - Interface koneksi lampu meja billyard...
by reminder2k1 in Enginering more 16 years ago - Menampilkan data tertentu aja
by aditya_online2008 in Reporting more 16 years ago - Gimana Taruh Checkbox skin di DBGrid ?
by R-One in MySQL more 16 years ago - Perusahaan yang develop menggunakan Delphi
by Joseph in OOT more 15 years ago - tidak bisa nge-print manual dengan QuickReport?
by gormet in Reporting more 16 years ago - pencarian data berdasarkan dua field
by Ayahe_Hasna in Hal umum tentang Pascal Indonesia more 16 years ago - Delphi 7.0 atau Delphi 2007 ?
by wequ in Hal umum tentang Pascal Indonesia more 17 years ago - [Req]D2005 update 1 and higher
by jayadi888 in OOT more 17 years ago