项目需要使用"数据链接属性"对话框来设置ConnectionString,查阅了一些资料,解决办法如下:
1.Delphi
在Delphi中比较简单,步骤如下:
方法1: use ADOConED;
ADOConED.EditConnectionString(ADOConnection1);
这样我们就可以使用:
ShowMessage(ADOConnection1.ConnectionString)
查看ADOConnection1的ConnectionString了
方法2: ADOConnection1.ConnectionString:=PromptDataSource(handle,'');
或者:
ADOConnection1.ConnectionString:=PromptDataSource(handle,ADOConnection1.ConnectionString);
附:PromptDataSource函数的代码:
function PromptDataSource(ParentHandle: THandle; InitialString: WideString): WideString;
var
DataInit: IDataInitialize;
DBPrompt: IDBPromptInitialize;
DataSource: IUnknown;
InitStr: PWideChar;
begin
Result := InitialString;
DataInit := CreateComObject(CLSID_DataLinks) as IDataInitialize;
if InitialString <> '' then
DataInit.GetDataSource(nil, CLSCTX_INPROC_SERVER,
PWideChar(InitialString), IUnknown, DataSource);
DBPrompt := CreateComObject(CLSID_DataLinks) as IDBPromptInitialize;
if Succeeded(DBPrompt.PromptDataSource(nil, ParentHandle,
DBPROMPTOPTIONS_PROPERTYSHEET, 0, nil, nil, IUnknown, DataSource)) then
begin
InitStr := nil;
DataInit.GetInitializationString(DataSource, True, InitStr);
Result := InitStr;
end;
end;
本文介绍了在Delphi项目中如何利用'数据链接属性'对话框设置ConnectionString。提供了两种方法,包括使用ADOConED组件的EditConnectionString方法以及通过PromptDataSource函数实现。通过这些方法,可以方便地查看和编辑ADOConnection1的ConnectionString。

2505

被折叠的 条评论
为什么被折叠?



