⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unitpublic.pas

📁 delphi基于工业控制的串口通讯
💻 PAS
📖 第 1 页 / 共 2 页
字号:
                    Parameters[2].Value:=now;
                    Parameters[3].Value:=now;
                    try
                        Prepared;
                        ExecSql;
                    except
                    end;
                end;
            end;
        except
        end;
    end;
end;
//******************************************************************************
//查询报警图片
procedure ReadImageInfo(nImageNO:String);
begin
    if nImageNO='01号' then
    begin
        frm_Main.WarnAnimate1.Visible:=True;
        frm_Main.WarnAnimate1.Active :=True;
        frm_Main.WarnImage1.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='02号' then
    begin
        frm_Main.WarnAnimate2.Visible:=True;
        frm_Main.WarnAnimate2.Active :=True;
        frm_Main.WarnImage2.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='03号' then
    begin
        frm_Main.WarnAnimate3.Visible:=True;
        frm_Main.WarnAnimate3.Active :=True;
        frm_Main.WarnImage3.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='04号' then
    begin
        frm_Main.WarnAnimate4.Visible:=True;
        frm_Main.WarnAnimate4.Active :=True;
        frm_Main.WarnImage4.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='05号' then
    begin
        frm_Main.WarnAnimate5.Visible:=True;
        frm_Main.WarnAnimate5.Active :=True;
        frm_Main.WarnImage5.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='06号' then
    begin
        frm_Main.WarnAnimate6.Visible:=True;
        frm_Main.WarnAnimate6.Active :=True;
        frm_Main.WarnImage6.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='07号' then
    begin
        frm_Main.WarnAnimate7.Visible:=True;
        frm_Main.WarnAnimate7.Active :=True;
        frm_Main.WarnImage7.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='08号' then
    begin
        frm_Main.WarnAnimate8.Visible:=True;
        frm_Main.WarnAnimate8.Active :=True;
        frm_Main.WarnImage8.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='09号' then
    begin
        frm_Main.WarnAnimate9.Visible:=True;
        frm_Main.WarnAnimate9.Active :=True;
        frm_Main.WarnImage9.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='10号' then
    begin
        frm_Main.WarnAnimate10.Visible:=True;
        frm_Main.WarnAnimate10.Active :=True;
        frm_Main.WarnImage10.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='11号' then
    begin
        frm_Main.WarnAnimate11.Visible:=True;
        frm_Main.WarnAnimate11.Active :=True;
        frm_Main.WarnImage11.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='12号' then
    begin
        frm_Main.WarnAnimate12.Visible:=True;
        frm_Main.WarnAnimate12.Active :=True;
        frm_Main.WarnImage12.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='13号' then
    begin
        frm_Main.WarnAnimate13.Visible:=True;
        frm_Main.WarnAnimate13.Active :=True;
        frm_Main.WarnImage13.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='14号' then
    begin
        frm_Main.WarnAnimate14.Visible:=True;
        frm_Main.WarnAnimate14.Active :=True;
        frm_Main.WarnImage14.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='15号' then
    begin
        frm_Main.WarnAnimate15.Visible:=True;
        frm_Main.WarnAnimate15.Active :=True;
        frm_Main.WarnImage15.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
    if nImageNO='16号' then
    begin
        frm_Main.WarnAnimate16.Visible:=True;
        frm_Main.WarnAnimate16.Active :=True;
        frm_Main.WarnImage16.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'warn.jpg');
    end;
end;
//******************************************************************************
//解除报警
procedure LostWarn(nImageNO:String;nWarnImage:TImage;nWarnAnimate:TAnimate);
var
    nEquipment_NO   : String;
    nCont           : Integer;
    nTerminal       : Integer;
    nUport          : Integer;
begin
     with frm_DataModule.ADO_QuerySearch do
     begin
        Close;
        Sql.Clear;
        Sql.Add('Select * from [Equipment] where WarnImage=:u0');
        Parameters[0].Value:=Trim(nImageNO);
        try
            Open;
            if RecordCount>0 then
            begin
                nEquipment_NO   :=FieldByName('Equipment_NO').AsVariant;
                nCont           :=FieldByName('Cont').AsVariant;
                nTerminal       :=FieldByName('Terminal').AsVariant;
                nUport          :=FieldByName('Uport').AsVariant;
                with frm_DataModule.ADO_QueryWarninfo do
                begin
                    Close;
                    Sql.Clear;
                    Sql.Add('Select * from [Warninfo] where nFlag=0 and Equipment_NO=:u0');
                    Parameters[0].Value:=Trim(nEquipment_NO);
                    try
                        Open;
                        if RecordCount>0 then
                        begin
                            try
                                //把对应的端口的读数设置成默认的不报警的数值
                                MySpcomm.WriteUportReader(nCont,nTerminal,nUport,1);
                                with frm_DataModule.ADO_QueryWarninfo do
                                begin
                                    Close;
                                    Sql.Clear;
                                    Sql.Add('update [Warninfo] Set nFlag=1 ,StopWarn_Time=now where nFlag=0 and Equipment_NO=:u0');
                                    Parameters[0].Value:=Trim(nEquipment_NO);
                                    try
                                        Prepared;
                                        ExecSql;
                                        
                                        MyPlayer.Stop;
                                        nWarnImage.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'JpgFile\'+'Normal.jpg');
                                        nWarnAnimate.Active:=False;
                                        nWarnAnimate.Visible:=False;
                                        Application.MessageBox(pchar(nImageNO+'报警器报警已经撤防!请确认!'),Pchar(Application.Title),MB_ICONINFORMATION+MB_OK);
                                    except
                                    end;
                                end;
                                //撤防的时候把继电器恢复
                                if ResultVlues=1 then
                                begin
                                    MySpcomm.WriteUportOpenClose(nCont,nTerminal,nUport+4,LostVlues);
                                end;
                            except
                            end;
                        end;
                    except
                    end;
                end;
            end;
        except
        end;
     end;
end;
//写注册表信息
procedure WriteRegistry;
var
    Path, Name: string;
    RegF: TRegistry;
begin
    Path:=Application.ExeName; //程序的路径
    Name:=Application.Title; //程序的名字
    RegF:=TRegistry.Create;
    RegF.RootKey:=HKEY_LOCAL_MACHINE;
    try
        if RegF.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Run',True) then
        if not RegF.ValueExists(Name) then
        begin
            RegF.WriteString(Name,Path);
            RegF.CloseKey;
        end;
    finally
        RegF.Free
    end;
end;
end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -