unit FilesManage;interfaceuses SysUtils, FileCtrl, Classes; function SearchFiles(const SearchPath: String; const FileName: String; List: TStrings): Boolean;implementationfunction IsDirectory(const Name: String): Boolean;
begin
Result := DirectoryExists(Name);
end;function IsDot(const Name: String): Boolean;
begin
Result := (Name = '.')or(Name = '..');
end;function SearchFiles(const SearchPath: String; const FileName: String; List: TStrings): Boolean;
var
Attr: Integer;
F: TSearchRec;
begin
Attr := faAnyFile;
if FindFirst(SearchPath + '\' + FileName, Attr, F) = 0 then
begin
if not IsDot(F.Name) then
List.Add(SearchPath + '\' + F.Name); while FindNext(F) = 0 do
begin
if not IsDot(F.Name) then
List.Add(SearchPath + '\' + F.Name);
if not IsDot(F.Name)and IsDirectory(SearchPath +'\'+ F.Name) then
begin
SearchFiles(SearchPath +'\'+ F.Name, FileName, List)
end; end;
FindClose(F);
end;
Result := True;
end;end.
begin
Result := DirectoryExists(Name);
end;function IsDot(const Name: String): Boolean;
begin
Result := (Name = '.')or(Name = '..');
end;function SearchFiles(const SearchPath: String; const FileName: String; List: TStrings): Boolean;
var
Attr: Integer;
F: TSearchRec;
begin
Attr := faAnyFile;
if FindFirst(SearchPath + '\' + FileName, Attr, F) = 0 then
begin
if not IsDot(F.Name) then
List.Add(SearchPath + '\' + F.Name); while FindNext(F) = 0 do
begin
if not IsDot(F.Name) then
List.Add(SearchPath + '\' + F.Name);
if not IsDot(F.Name)and IsDirectory(SearchPath +'\'+ F.Name) then
begin
SearchFiles(SearchPath +'\'+ F.Name, FileName, List)
end; end;
FindClose(F);
end;
Result := True;
end;end.
DBTables, Classes, Windows;const
ADD_ALIAS_HELP_TEXT =
'函数原形:'+#13+
' function AddAlias(const AliasName, UserName, ServerName, DatabaseName: String): Boolean;'+#13+#13+
'参数说明:'+#13+
' AliasName:新建别名名称'+#13+
' UserName:用户名名称'+#13+
' ServerName:服务器名称'+#13+
' DatabaseName:数据库名称'+#13+#13+
'返回值说明:'+#13+
' 创建成功返回True,否则返回False'+#13+#13+
'技术支持:'+#13+
' WWW:http://CoolSlob.8u8.com'+#13+
' Email:[email protected]';
procedure AddAliasHelp;
function AddAlias(const AliasName, UserName,
ServerName, DatabaseName: String): Boolean; overload;
function AddAlias(const AliasName, UserName,
ServerName, DatabaseName, EnableBCD: String): Boolean; overload; function DeleteAlias(const AliasName: String): Boolean;
function AliasExists(const AliasName: String): Boolean;implementationprocedure AddAliasHelp;
begin
MessageBox(GetFocus, PChar(ADD_ALIAS_HELP_TEXT), 'AddAlias Help...',
MB_ICONINFORMATION);
end;function AddAlias(const AliasName, UserName,
ServerName, DatabaseName: String): Boolean; overload;
var
vSession: TSession;
vParams: TStringList;
begin
vSession := TSession.Create(nil);
vSession.Name := 'AliasManage';
vSession.SessionName := 'AliasManage';
vParams := TStringList.Create;
try
vParams.Add('User Name=' + UserName);
vParams.Add('Server Name=' + ServerName);
vParams.Add('Database Name=' + DatabaseName);
try
vSession.AddAlias(AliasName, 'MSSQL', vParams);
vSession.SaveConfigFile;
Result := True;
except
Result := False;
end;
finally
vParams.Free;
vSession.Destroy;
end;
end;function AddAlias(const AliasName, UserName,
ServerName, DatabaseName, EnableBCD: String): Boolean; overload;
var
vSession: TSession;
vParams: TStringList;
begin
vSession := TSession.Create(nil);
vSession.Name := 'AliasManage';
vSession.SessionName := 'AliasManage';
vParams := TStringList.Create;
try
vParams.Add('User Name=' + UserName);
vParams.Add('Server Name=' + ServerName);
vParams.Add('Database Name=' + DatabaseName);
vParams.Add('Enable BCD=' + EnableBCD);
try
vSession.AddAlias(AliasName, 'MSSQL', vParams);
vSession.SaveConfigFile;
Result := True;
except
Result := False;
end;
finally
vParams.Free;
vSession.Destroy;
end;
end;function DeleteAlias(const AliasName: String): Boolean;
var
vSession: TSession;
begin
vSession := TSession.Create(nil);
vSession.Name := 'AliasManage';
vSession.SessionName := 'AliasManage';
try
try
vSession.DeleteAlias(AliasName);
vSession.SaveConfigFile;
Result := True;
except
Result := False;
end;
finally
vSession.Destroy;
end;
end;function AliasExists(const AliasName: String): Boolean;
var
vSession: TSession;
vAliasList: TStringList;
begin
vSession := TSession.Create(nil);
vAliasList := TStringList.Create;
vSession.Name := 'AliasManage';
vSession.SessionName := 'AliasManage';
try
try
Result := vSession.IsAlias(AliasName);
vSession.GetAliasNames(vAliasList);
if vAliasList.IndexOf(AliasName) < 0 then
Result := False
else
Result := True;
except
Result := False;
end;
finally
vAliasList.Free;
vSession.Destroy;
end;
end;
end.
DBTables, Classes, Windows;const
ADD_ALIAS_HELP_TEXT =
'函数原形:'+#13+
' function AddAlias(const AliasName, UserName, ServerName, DatabaseName: String): Boolean;'+#13+#13+
'参数说明:'+#13+
' AliasName:新建别名名称'+#13+
' UserName:用户名名称'+#13+
' ServerName:服务器名称'+#13+
' DatabaseName:数据库名称'+#13+#13+
'返回值说明:'+#13+
' 创建成功返回True,否则返回False'+#13+#13+
'技术支持:'+#13+
' WWW:http://CoolSlob.8u8.com'+#13+
' Email:[email protected]';
procedure AddAliasHelp;
function AddAlias(const AliasName, UserName,
ServerName, DatabaseName: String): Boolean; overload;
function AddAlias(const AliasName, UserName,
ServerName, DatabaseName, EnableBCD: String): Boolean; overload; function DeleteAlias(const AliasName: String): Boolean;
function AliasExists(const AliasName: String): Boolean;implementationprocedure AddAliasHelp;
begin
MessageBox(GetFocus, PChar(ADD_ALIAS_HELP_TEXT), 'AddAlias Help...',
MB_ICONINFORMATION);
end;function AddAlias(const AliasName, UserName,
ServerName, DatabaseName: String): Boolean; overload;
var
vSession: TSession;
vParams: TStringList;
begin
vSession := TSession.Create(nil);
vSession.Name := 'AliasManage';
vSession.SessionName := 'AliasManage';
vParams := TStringList.Create;
try
vParams.Add('User Name=' + UserName);
vParams.Add('Server Name=' + ServerName);
vParams.Add('Database Name=' + DatabaseName);
try
vSession.AddAlias(AliasName, 'MSSQL', vParams);
vSession.SaveConfigFile;
Result := True;
except
Result := False;
end;
finally
vParams.Free;
vSession.Destroy;
end;
end;function AddAlias(const AliasName, UserName,
ServerName, DatabaseName, EnableBCD: String): Boolean; overload;
var
vSession: TSession;
vParams: TStringList;
begin
vSession := TSession.Create(nil);
vSession.Name := 'AliasManage';
vSession.SessionName := 'AliasManage';
vParams := TStringList.Create;
try
vParams.Add('User Name=' + UserName);
vParams.Add('Server Name=' + ServerName);
vParams.Add('Database Name=' + DatabaseName);
vParams.Add('Enable BCD=' + EnableBCD);
try
vSession.AddAlias(AliasName, 'MSSQL', vParams);
vSession.SaveConfigFile;
Result := True;
except
Result := False;
end;
finally
vParams.Free;
vSession.Destroy;
end;
end;function DeleteAlias(const AliasName: String): Boolean;
var
vSession: TSession;
begin
vSession := TSession.Create(nil);
vSession.Name := 'AliasManage';
vSession.SessionName := 'AliasManage';
try
try
vSession.DeleteAlias(AliasName);
vSession.SaveConfigFile;
Result := True;
except
Result := False;
end;
finally
vSession.Destroy;
end;
end;function AliasExists(const AliasName: String): Boolean;
var
vSession: TSession;
vAliasList: TStringList;
begin
vSession := TSession.Create(nil);
vAliasList := TStringList.Create;
vSession.Name := 'AliasManage';
vSession.SessionName := 'AliasManage';
try
try
Result := vSession.IsAlias(AliasName);
vSession.GetAliasNames(vAliasList);
if vAliasList.IndexOf(AliasName) < 0 then
Result := False
else
Result := True;
except
Result := False;
end;
finally
vAliasList.Free;
vSession.Destroy;
end;
end;
end.
DBTables, Classes, Windows;const
ADD_ALIAS_HELP_TEXT =
'函数原形:'+#13+
' function AddAlias(const AliasName, UserName, ServerName, DatabaseName: String): Boolean;'+#13+#13+
'参数说明:'+#13+
' AliasName:新建别名名称'+#13+
' UserName:用户名名称'+#13+
' ServerName:服务器名称'+#13+
' DatabaseName:数据库名称'+#13+#13+
'返回值说明:'+#13+
' 创建成功返回True,否则返回False'+#13+#13+
'技术支持:'+#13+
' WWW:http://CoolSlob.8u8.com'+#13+
' Email:[email protected]';
procedure AddAliasHelp;
function AddAlias(const AliasName, UserName,
ServerName, DatabaseName: String): Boolean; overload;
function AddAlias(const AliasName, UserName,
ServerName, DatabaseName, EnableBCD: String): Boolean; overload; function DeleteAlias(const AliasName: String): Boolean;
function AliasExists(const AliasName: String): Boolean;implementationprocedure AddAliasHelp;
begin
MessageBox(GetFocus, PChar(ADD_ALIAS_HELP_TEXT), 'AddAlias Help...',
MB_ICONINFORMATION);
end;function AddAlias(const AliasName, UserName,
ServerName, DatabaseName: String): Boolean; overload;
var
vSession: TSession;
vParams: TStringList;
begin
vSession := TSession.Create(nil);
vSession.Name := 'AliasManage';
vSession.SessionName := 'AliasManage';
vParams := TStringList.Create;
try
vParams.Add('User Name=' + UserName);
vParams.Add('Server Name=' + ServerName);
vParams.Add('Database Name=' + DatabaseName);
try
vSession.AddAlias(AliasName, 'MSSQL', vParams);
vSession.SaveConfigFile;
Result := True;
except
Result := False;
end;
finally
vParams.Free;
vSession.Destroy;
end;
end;function AddAlias(const AliasName, UserName,
ServerName, DatabaseName, EnableBCD: String): Boolean; overload;
var
vSession: TSession;
vParams: TStringList;
begin
vSession := TSession.Create(nil);
vSession.Name := 'AliasManage';
vSession.SessionName := 'AliasManage';
vParams := TStringList.Create;
try
vParams.Add('User Name=' + UserName);
vParams.Add('Server Name=' + ServerName);
vParams.Add('Database Name=' + DatabaseName);
vParams.Add('Enable BCD=' + EnableBCD);
try
vSession.AddAlias(AliasName, 'MSSQL', vParams);
vSession.SaveConfigFile;
Result := True;
except
Result := False;
end;
finally
vParams.Free;
vSession.Destroy;
end;
end;function DeleteAlias(const AliasName: String): Boolean;
var
vSession: TSession;
begin
vSession := TSession.Create(nil);
vSession.Name := 'AliasManage';
vSession.SessionName := 'AliasManage';
try
try
vSession.DeleteAlias(AliasName);
vSession.SaveConfigFile;
Result := True;
except
Result := False;
end;
finally
vSession.Destroy;
end;
end;function AliasExists(const AliasName: String): Boolean;
var
vSession: TSession;
vAliasList: TStringList;
begin
vSession := TSession.Create(nil);
vAliasList := TStringList.Create;
vSession.Name := 'AliasManage';
vSession.SessionName := 'AliasManage';
try
try
Result := vSession.IsAlias(AliasName);
vSession.GetAliasNames(vAliasList);
if vAliasList.IndexOf(AliasName) < 0 then
Result := False
else
Result := True;
except
Result := False;
end;
finally
vAliasList.Free;
vSession.Destroy;
end;
end;
end.
//这是帮我一个以前的同事写的,写这个时没考虑太多,不过功能也完成了
//我怕他不会用,还写了Help :),唉,多心了~~~
感动得我泪流满面啊~~~~~~~~~~~~~~~