如题:最好有源代码,先谢了!
解决方案 »
- winexec执行执行DOS命令,完毕时如何暂停在DOS窗口?需要看结果
- 好久没来了,上来散分,新老朋友不限
- 如何将word表格的内容输出到excel的记录中?
- 问一个很傻的问题
- 在一个程序中,怎样控制任一个子窗口最多打开一次?
- 小问题,不难
- 请教如何使用net send后,如何能够知道已发送成功
- ADOQUERY的SQL语句中参数据的设定疑难求解!!!
- 在Delphi程序中调用VC++编写的DLL
- 怎样将图片等自动化对象插入到TRichEdit组件中
- 调用dll里面的窗体时,怎样才能使窗体不显示出来,而且也不影响调用它的窗体的正常工作,高分酬谢,急等!!跪谢
- 转到JAVA了,学了javaScript ,可写出来的代码还是DELPHI风格。
具体配置可以保存到注册表,Ini文件里面。如果是文件型的,不如Access,可以根据相对目录动态生成连接字符串就行了。
procedure TDMEAM.DataModuleCreate(Sender: TObject);
var
sTempAddRess :String;
sServerName,sDatabaseName,sDataUser,sDataPw,sDataType,sAdoConString :String;
List: Tinifile;
begin
If ADOConnectionEAM.Connected Then
ADOConnectionEAM.Connected := False;
sTempAddRess :=ExtractFilePath(Application.ExeName);
Try
List := Tinifile.Create(ExtractFilePath(Application.ExeName)+'DataSet.ini');
sServerName:=list.readstring('LdEamDataSet','sServerName','');
sDatabaseName:=list.readstring('LdEamDataSet','sDatabaseName','');
sDataUser:=list.readstring('LdEamDataSet','sDataUser','');
sDataType:=list.readstring('LdEamDataSet','sDataType','');
sDataPw:=List.readstring('LdEamDataSet','sDataPw','');
if sDataPw<>''then
sDataPw:=Trim(DecryptString(sDataPw,'hjjh',kb256));
If sDataType='Access' Then
sAdoConString :='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+sDatabaseName+';Persist Security Info=False '
Else
Begin
If sDataPw<> '' Then
sAdoConString :='Provider=SQLOLEDB.1;Persist Security Info=True;Connect Timeout=5;User ID='+sDataUser+';Password='+sDataPw+' ;Initial Catalog='+sDatabaseName+';Data Source='+sServerName
Else
sAdoConString :='Provider=SQLOLEDB.1;Persist Security Info=True;Connect Timeout=5;User ID='+sDataUser+';Password=ldmaster;Initial Catalog='+sDatabaseName+';Data Source='+sServerName;
End;
ADOConnectionEAM.ConnectionString:=sAdoConString;
Finally
List.free;
End;
Try
ADOConnectionEAM.Connected := True;
Except
ShowMessage('数据库连接失败,请重新配置!');
Exit;
End;
end;