parent
93c7cb4629
commit
e3917cfa3d
|
|
@ -6609,7 +6609,9 @@ begin
|
|||
hd := 0;
|
||||
if(wnd is class(TWincontrol))and wnd.HandleAllocated()then hd := wnd.Handle;
|
||||
else if ifnumber(wnd)then hd := wnd;
|
||||
return gettswin32api().MessageBoxA(hd,ifstring(txt)?txt:"",ifstring(title)?title:"",flag >= 0?flag:0);
|
||||
api := gettswin32api();
|
||||
api.clipcursor(0);
|
||||
return api.MessageBoxA(hd,ifstring(txt)?txt:"",ifstring(title)?title:"",flag >= 0?flag:0);
|
||||
end
|
||||
function GetCurrentTslDir(); //获得tsl目录以\结尾
|
||||
begin
|
||||
|
|
|
|||
|
|
@ -2293,6 +2293,141 @@ type tcountlocker = class() //
|
|||
private
|
||||
fkernel;
|
||||
end
|
||||
//////////////////////字符串文件读取累//////////////////////////////////
|
||||
type tfileer_rwraw = class() //字符串文件类型
|
||||
{**
|
||||
@explan(说明)字符串文件类型,load save,local_changed_check,data %%
|
||||
**}
|
||||
function create();
|
||||
begin
|
||||
ffilename := "";
|
||||
fAlias := "";
|
||||
fdatachanged := false;
|
||||
inputchanged();
|
||||
end
|
||||
function load();//加载
|
||||
begin
|
||||
if not(ifstring(ffilename) and fileexists("",ffilename)) then return 0; //文件名不存在
|
||||
p := 0;
|
||||
len := filesize(fAlias,ffilename);
|
||||
tm := filetime(fAlias,ffilename);
|
||||
if not fdatachanged then //对象数据修改了
|
||||
begin
|
||||
if (len=flen) and (tm=floadtime) then return 1; //大小时间没变
|
||||
end
|
||||
if 1 = readfile(rwraw(),fAlias,ffilename,p,len,data) then //读文件
|
||||
begin
|
||||
fdata := data;
|
||||
flen := len;
|
||||
floadtime := tm;
|
||||
floaded := true;
|
||||
fdatachanged := false;
|
||||
return 1;
|
||||
end
|
||||
end
|
||||
function save(); //保存
|
||||
begin
|
||||
if not(ifstring(ffilename) and ffilename) then return 0;
|
||||
if fileexists(fAlias,ffilename) then
|
||||
begin
|
||||
tm := filetime(fAlias,ffilename);
|
||||
if tm=floadtime then return 1;
|
||||
sz := filesize(fAlias,ffilename);
|
||||
if sz>length(fdata) then
|
||||
begin
|
||||
if filedelete(fAlias,ffilename)<>1 then return 0;
|
||||
end else
|
||||
begin
|
||||
p := 0;
|
||||
if 1 = readfile(rwraw(),fAlias,ffilename,p,sz,data) then
|
||||
begin
|
||||
if fdata=data then
|
||||
begin
|
||||
return 1;
|
||||
end
|
||||
end
|
||||
end
|
||||
end else
|
||||
begin
|
||||
exportfile(ftstring(),fAlias,ffilename,"");
|
||||
end
|
||||
if 1=writefile(rwraw(),fAlias,ffilename,0,length(fdata),fdata) then
|
||||
begin
|
||||
floadtime := filetime(fAlias,ffilename);
|
||||
flen := length(fdata);
|
||||
floaded := true;
|
||||
fdatachanged := false;
|
||||
return true;
|
||||
end
|
||||
return false;
|
||||
end
|
||||
function local_changed_check(); //本地文件是否从修改后发生改变
|
||||
begin
|
||||
if floaded then
|
||||
begin
|
||||
if fileexists(fAlias,ffilename) then
|
||||
begin
|
||||
if floadtime<>filetime(fAlias,ffilename) then
|
||||
begin
|
||||
return 1; //改变
|
||||
end
|
||||
end else
|
||||
begin
|
||||
return 2; //删除
|
||||
end
|
||||
end
|
||||
end
|
||||
property fname read ffilename write setfilename;//文件名
|
||||
property Alias read fAlias write fAlias; //目录别名
|
||||
property data read getdata write setdata; //数据集
|
||||
property ftime read floadtime;//
|
||||
private
|
||||
fAlias;
|
||||
floadtime;
|
||||
ffilename;
|
||||
flen;
|
||||
fdata;
|
||||
fleadload;
|
||||
fdatachanged;
|
||||
private
|
||||
function getdata();
|
||||
begin
|
||||
return fdata;
|
||||
end
|
||||
function setdata(s);//设置数据
|
||||
begin
|
||||
if ifstring(s) and s<>fdata then
|
||||
begin
|
||||
inputchanged();
|
||||
fdata := s;
|
||||
fdatachanged := true;
|
||||
end
|
||||
end
|
||||
function setalias(s);
|
||||
begin
|
||||
if ifstring(s) and s<>fAlias then
|
||||
begin
|
||||
fAlias := s;
|
||||
inputchanged();
|
||||
end
|
||||
end
|
||||
function setfilename(f); //修改文件名
|
||||
begin
|
||||
if f<>ffilename then //文件改变
|
||||
begin
|
||||
ffilename := f;
|
||||
inputchanged();
|
||||
end
|
||||
end
|
||||
function inputchanged();//输入改变
|
||||
begin
|
||||
fdata := "";
|
||||
flen := "";
|
||||
floadtime := 0;
|
||||
floaded := false;
|
||||
end
|
||||
|
||||
end
|
||||
type tinstancemanager = class()
|
||||
{**
|
||||
@explan(说明)函数c语言指针管理器 %%
|
||||
|
|
|
|||
|
|
@ -727,10 +727,10 @@ begin
|
|||
begin
|
||||
g_windows_proc_handle := makeinstance(thisfunction(tslvclproc));
|
||||
end
|
||||
{try
|
||||
try
|
||||
SetProcessDpiAwareness(2); //shez dpi¸ÐÖª
|
||||
except
|
||||
end }
|
||||
end
|
||||
end
|
||||
function uninit();//Ð¶ÔØ
|
||||
begin
|
||||
|
|
|
|||
Loading…
Reference in New Issue