📄 unitconfig.~pas
字号:
unit UnitConfig;
interface
uses Forms,SysUtils,IniFiles,Classes,StdCtrls;
const CNST_SysIniFileName = 'Setting\TYComSys.ini';
const CNST_UserIniFileName = 'Setting\TYComUser.ini';
const CNST_UDP = '通讯';
const CNST_UDP_Port = '端口';
const CNST_UDP_Port_Default = '7756';
const CNST_UDP_Server = '服务器';
const CNST_UDP_Server_Default = '218.242.236.136';
const CNST_Update = '更新';
const CNST_Update_URL = 'URL';
const CNST_Update_URL_Default = 'http://www.icesharp.net/communication/Update.htm';
const CNST_Update_Auto = '自动';
const CNST_Update_Auto_Default= '1';
const CNST_User = '用户';
const CNST_User_PWD = '密码';
procedure CreateSysConfigFile(var ServerIP,Port,UpdateURL:string;var IsAutoUpdate:boolean;var IPList,UserNameList:TStringList);
procedure SaveSysConfigFile(ServerIP,Port,UpdateURL:string;IsAutoUpdate:boolean);
procedure SaveSysUserFile(UserName,IP:string);
function GetUserListFile:string;
procedure GetUserInfo(var UserList,IPList:TstringList);
implementation
procedure CreateSysConfigFile(var ServerIP,Port,UpdateURL:string;var IsAutoUpdate:boolean;var IPList,UserNameList:TStringList);
var
IniFile:TIniFile;
IniFileName:string;
ss:TStringList;
i:integer;
begin
IniFileName := ExtractFilePath(application.exename)+CNST_SysIniFileName;
if not FileExists(IniFileName) then
FileCreate(IniFileName);
IniFile := TIniFile.Create(IniFileName);
//取得服务器IP
ServerIP := IniFile.ReadString(CNST_UDP,CNST_UDP_Server,CNST_UDP_Server_Default);
//取得通讯端口
Port := IniFile.ReadString(CNST_UDP,CNST_UDP_Port,CNST_UDP_Port_Default);
//取得自动更新URL
UpdateURL := IniFile.ReadString(CNST_Update,CNST_Update_URL,CNST_Update_URL_Default);
//取得是否自动更新标志
if IniFile.ReadString(CNST_Update,CNST_Update_Auto,CNST_Update_Auto_Default)= CNST_Update_Auto_Default then
IsAutoUpdate := true
else
IsAutoUpdate := false;
IniFile.Free;
IniFileName := ExtractFilePath(application.exename)+CNST_UserIniFileName;
if not FileExists(IniFileName) then
FileCreate(IniFileName);
IniFile := TIniFile.Create(IniFileName);
//取得用户IP和用户名称
ss := TStringList.Create;
try
IniFile.ReadSection(CNST_User,ss); {读入全部列表数据名}
if ss.Count>0 then
begin
for i:=0 to ss.Count-1 do {循环读入数据}
begin
IPList.Add(IniFile.ReadString(CNST_User,ss.Strings[i],''));
UserNameList.Add(ss.Strings[i]);
end;
end;
finally
ss.Free;
end;
IniFile.Free;
end;
procedure SaveSysConfigFile(ServerIP,Port,UpdateURL:string;IsAutoUpdate:boolean);
var
IniFile:TIniFile;
IniFileName:string;
begin
IniFileName := ExtractFilePath(application.exename)+CNST_SysIniFileName;
if not FileExists(IniFileName) then
FileCreate(IniFileName);
IniFile := TIniFile.Create(IniFileName);
//服务器IP
IniFile.WriteString(CNST_UDP,CNST_UDP_Server,ServerIP);
//通讯端口
IniFile.WriteString(CNST_UDP,CNST_UDP_Port,Port);
//自动更新URL
IniFile.WriteString(CNST_Update,CNST_Update_URL,UpdateURL);
//取得是否自动更新标志
if IsAutoUpdate Then
IniFile.WriteString(CNST_Update,CNST_Update_Auto,'1')
else
IniFile.WriteString(CNST_Update,CNST_Update_Auto,'0');
IniFile.Free;
end;
procedure SaveSysUserFile(UserName,IP:string);
var
IniFile:TIniFile;
IniFileName:string;
begin
IniFileName := ExtractFilePath(application.exename)+CNST_UserIniFileName;
if not FileExists(IniFileName) then
FileCreate(IniFileName);
IniFile := TIniFile.Create(IniFileName);
//用户名称
IniFile.WriteString(CNST_User,UserName,IP);
IniFile.Free;
end;
function GetUserListFile:string;
begin
Result := CNST_UserIniFileName;
end;
procedure GetUserInfo(var UserList,IPList:TstringList);
var
IniFile:TIniFile;
IniFileName:string;
i:integer;
begin
UserList.Clear;
IPList.Clear;
IniFileName := ExtractFilePath(application.exename)+CNST_UserIniFileName;
if not FileExists(IniFileName) then
FileCreate(IniFileName);
IniFile := TIniFile.Create(IniFileName);
IniFile.ReadSection(CNST_User,UserList);
for i:=0 to UserList.Count-1 do
IPList.Add(IniFile.ReadString(CNST_User,UserList[i],''));
IniFile.Free;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -