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

📄 main32.pas

📁 wbs43open-src.zip 数字隐藏工具
💻 PAS
📖 第 1 页 / 共 5 页
字号:
                Label10.Visible:=True;
                Memo3d.Visible:=False;
                Memo3a.Visible:=False;
                OpenDialog1.Title:=ml.GetCodeString('main32',23);{'Load carrier file'; }    // code023
                OpenDialog1.Filter:=ml.GetCodeString('main32',24);
                Edit1.Text:=Bin;
                FileType:=UpperCase(Copy(ExtractFilePath(Bin),2,3));
                CheckBox1.Visible:=True;
{$IFNDEF CLX}
                If FileType='BMP' Then Begin
                  Outline1.SelectedItem:=1;
                  Outline1.Enabled:=False;
                  Outline1.Color:=clBtnFace;
                End;
                If FileType='ASC' Then Begin
                  Outline1.SelectedItem:=2;
                  Outline1.Enabled:=True;
                  Outline1.Items[2].Expanded:=True;
                  Outline1.Color:=clWhite;
                End;
                If FileType='TXT' Then Begin
                  Outline1.SelectedItem:=3;
                  Outline1.Enabled:=False;
                  Outline1.Color:=clBtnFace;
                End;
                If FileType='PDF' Then Begin
                  Outline1.SelectedItem:=4;
                  Outline1.Enabled:=False;
                  Outline1.Color:=clBtnFace;
                End;
{$ELSE}
                If FileType='BMP' Then Begin
                  ListBox2.ItemIndex:=1;
                  ListBox2.Enabled:=False;
                  ListBox2.Color:=clBtnFace;
                End;
                If FileType='ASC' Then Begin
                  ListBox2.ItemIndex:=2;
                  ListBox2.Enabled:=True;
                   ListBox2.Color:=clWhite;
                End;
                If FileType='TXT' Then Begin
                  ListBox2.ItemIndex:=3;
                  ListBox2.Enabled:=False;
                  ListBox2.Color:=clBtnFace;
                End;
                If FileType='PDF' Then Begin
                  ListBox2.ItemIndex:=4;
                  ListBox2.Enabled:=False;
                  ListBox2.Color:=clBtnFace;
                End;

{$ENDIF}
              End;
            End;
          End
          Else Begin
            Min:=Edit1.Text;
            If Min='' Then MessageDlg(ml.GetCodeString('main32',35),mtWarning,[mbOK],250) // code035
            Else Begin
              if not(FileExists(Min)) then MessageDlg(ml.GetCodeString('main32',36),mtError,[mbOK],250)
              else Begin
                myCarrier.LoadFromFile(Min);
                FileType:=UpperCase(Copy(ExtractFileExt(Min),2,3));
                if FileType='TXT' then FileType:='ASC';
                if FileType='HTM' then FileType:='TXT';
                if FileType='XML' then FileType:='TXT';
                if FileType='RLE' then FileType:='BMP';
{$IFNDEF CLX}
                If Outline1.Items[Outline1.SelectedItem].FullPath=ml.GetCodeString('main32',37) Then DType:='BMP';  // code037
                If Outline1.Items[Outline1.SelectedItem].FullPath=ml.GetCodeString('main32',38) Then DType:='ASC'; // code038
                If Outline1.Items[Outline1.SelectedItem].FullPath=ml.GetCodeString('main32',39) Then  // code039
                     DType:='TXT';
                If Outline1.Items[Outline1.SelectedItem].FullPath=ml.GetCodeString('main32',40) Then  // code040
                     DType:='PDF';
{$ELSE}
                If ListBox2.ItemIndex=0 Then DType:='BMP';
                If ListBox2.ItemIndex=1 Then DType:='ASC';
                If ListBox2.ItemIndex=2 Then DType:='TXT';
                If ListBox2.ItemIndex=3 Then DType:='PDF';

{$ENDIF}
                FileType:=DType;
                myCarrier.SetFileType(FileType,0);
                usable:='OK';
                if FileType='PDF' then begin
                  myPDF:=TPDFInsert.Create;
                  myPDF.CreateFromCarrierFile(myCarrier);
                  usable:=myPDF.isUsable;
                  myPDF.Free;
                end;
                if FileType='BMP' then begin
                  myBMP:=TBMPReplace.Create;
                  myBMP.CreateFromCarrierFile(myCarrier);
                  usable:=myBMP.isUsable;
                  myBMP.Free;
                end;
                if usable<>'OK' then MessageDlg(usable,mtError,[mbOK],250)
                else begin
{$IFNDEF CLX}
                  Outline1.Visible:=False;
{$ELSE}
                  ListBox2.Visible:=False;
{$ENDIF}
                  Label10.Visible:=False;
                  {<changes 2.1>}
                  WStep:=4;
                  Edit3.Text:='';
                  CheckBox1.Visible:=False;
                  ws_title.Caption:=WSM[WStep,BoolToInt(Codec)];
                  ws_x1.Caption:=IntToStr(WStep);
                  ws_x2.Caption:=IntToStr(WStep);
                  S4pwd.Visible:=True;
                  S4set.Visible:=True;
                  //TabSet1.TabIndex:=0;
                  If Not(IsRegd) Then Form6.ShowModal;
                end;
              End;
            End;
          End; 
        End;
     4: Begin
          If Codec Then Begin
            Bin:=Edit1.Text;
            If Bin='' Then MessageDlg(ml.GetCodeString('main32',25),mtWarning,[mbOK],250)   // code025
            Else Begin
              if not(FileExists(Bin)) then MessageDlg(ml.GetCodeString('main32',26),mtError,[mbOK],250)  // code026
              Else Begin
                OrigFileExt:=ExtractFileExt(Bin);
                FileType:=UpperCase(Copy(ExtractFileExt(Bin),2,3));
{$IFNDEF CLX}
                If Outline1.Items[Outline1.SelectedItem].FullPath=ml.GetCodeString('main32',27) Then DType:='BMP'; // code027
                If Outline1.Items[Outline1.SelectedItem].FullPath=ml.GetCodeString('main32',28) Then Begin    // code028
                  DType:='ASC';
                End;
                If Outline1.Items[Outline1.SelectedItem].FullPath=ml.GetCodeString('main32',29) Then Begin   // code029
                  DType:='TXT';
                End;
                If Outline1.Items[Outline1.SelectedItem].FullPath=ml.GetCodeString('main32',30) Then Begin  //code 030
                  DType:='PDF';
                End;
{$ELSE}
                If ListBox2.ItemIndex=0 Then DType:='BMP';
                If ListBox2.ItemIndex=1 Then DType:='ASC';
                If ListBox2.ItemIndex=2 Then DType:='TXT';
                If ListBox2.ItemIndex=3 Then DType:='PDF';

{$ENDIF}
                FileType:=DType;
                // se II
                Cursor:=crHourGlass;
                myCarrier.LoadFromFile(Bin);
                myCarrier.SetFileType(FileType,0);
                usable:='OK';
                space:=0;
                Form11.Show;
                Enabled:=False;
                Application.ProcessMessages;
                if FileType='ASC' then begin
                  myASC:=TASCIIReplace.Create;
                  myASC.OnPercentChange:=Form11.PercentUpdate;
                  myASC.OnActionChange:=Form11.ActionUpdate;
                  myASC.OnWantCancel:=Form11.WantCancel;
                  myASC.CreateFromCarrierFile(myCarrier);
                  usable:=myASC.isUsable;
                  if usable='OK' then begin
                    Application.ProcessMessages;
                    space:=myASC.GetAvailSize;
                    Enabled:=True;
                  end;
                  myASC.Free;
                end;
                if FileType='TXT' then begin
                  myTXT:=TASCIIInsert.Create;
                  myTXT.OnPercentChange:=Form11.PercentUpdate;
                  myTXT.OnActionChange:=Form11.ActionUpdate;
                  myTXT.OnWantCancel:=Form11.WantCancel;
                  myTXT.CreateFromCarrierFile(myCarrier);
                  usable:=myTXT.isUsable;
                  if usable='OK' then begin
                    Application.ProcessMessages;
                    space:=myTXT.GetAvailSize;
                    Enabled:=True;
                  end;
                  myTXT.Free;
                end;
                if FileType='PDF' then begin
                  myPDF:=TPDFInsert.Create;
                  myPDF.OnPercentChange:=Form11.PercentUpdate;
                  myPDF.OnActionChange:=Form11.ActionUpdate;
                  myPDF.OnWantCancel:=Form11.WantCancel;
                  myPDF.CreateFromCarrierFile(myCarrier);
                  usable:=myPDF.isUsable;
                  if usable='OK' then begin
                    Application.ProcessMessages;
                    space:=myPDF.GetAvailSize;
                  end;
                  myPDF.Free;
                end;
                if FileType='BMP' then begin
                  myBMP:=TBMPReplace.Create;
                  myBMP.OnPercentChange:=Form11.PercentUpdate;
                  myBMP.OnActionChange:=Form11.ActionUpdate;
                  myBMP.OnWantCancel:=Form11.WantCancel;
                  myBMP.CreateFromCarrierFile(myCarrier);
                  usable:=myBMP.isUsable;
                  if usable='OK' then begin
                    Application.ProcessMessages;
                    space:=myBMP.GetAvailSize;
                  end;
                  myBMP.Free;
                end;
                Enabled:=True;
                Form11.Hide;
                Cursor:=crDefault;
                if usable<>'OK' then MessageDlg(usable,mtError,[mbOK],250)
                else begin
                  if space<(myData.GetSize+4) then MessageDlg(ml.GetCodeString('main32',97),mtError,[mbOK],250)
                  else begin
                    WStep:=5;
                    ws_title.Caption:=WSM[WStep,BoolToInt(Codec)];
                    ws_x1.Caption:=IntToStr(WStep);
                    ws_x2.Caption:=IntToStr(WStep);
                    //S4.Visible:=True;
                    S4set.Visible:=True;
                    UpdateMemo8;
                  end;
                end;
                ///
              End;
            End;
          End
          Else Begin
            Pwd:=Edit3.Text;
            If Not(IsRegd) Then Pwd:='';
            WStep:=5;
            ws_title.Caption:=WSM[WStep,BoolToInt(Codec)];
            ws_x1.Caption:=IntToStr(WStep);
            ws_x2.Caption:=IntToStr(WStep);
            S5.Visible:=True;
            Memo5d.Visible:=True;
            Edit2.Text:=Dout;
            SaveDialog1.Filter:=ml.GetCodeString('main32',45);{'All Files (*.*)|*.*'};     // code045
            SaveDialog1.Title:=ml.GetCodeString('main32',46);{'Save data as'};   // code046
          End;
        End;
     5: Begin
          If Codec Then Begin
            weiter:=True;
            {pwd:=Edit4.Text;
            If pwd='' Then Begin
              If Mix Or Crypt Then Begin
                weiter:=False;
                MessageDlg(ml.GetCodeString('main32',47),mtInformation,[mbOK],250);   // code047
              End;
            End
            Else Begin
              If pwd<>Edit5.Text Then Begin
                weiter:=False;
                MessageDlg(ml.GetCodeString('main32',48),mtError,[mbOK],250);   // code048
              End;
            End;    
            {LiveCheck -----------
            LiveCheck.GetCryptRes;
            If weiter Then Begin
              completing data
              If Mix Or Crypt Then Begin
                LiveCheck.SetCryptRes(LiveCheck.GetCryptRes+1);
                If Transmit Then LiveCheck.SetCryptRes(LiveCheck.GetCryptRes+Length(Pwd));
              End;
              execution
              LiveCheck.ShowModal;
              weiter:=LCResult;
              If Not(weiter) Then MessageDlg(LCErrorMsg,mtError,[mbOK],250);
            End;
            {---------------------}
            If weiter Then Begin
              WStep:=6;
              ws_title.Caption:=WSM[WStep,BoolToInt(Codec)];
              ws_x1.Caption:=IntToStr(WStep);
              ws_x2.Caption:=IntToStr(WStep);
              S5.Visible:=True;
              Memo5d.Visible:=False;
              Edit2.Text:=Mout;
              If FileType='BMP' Then SaveDialog1.Filter:=ml.GetCodeString('main32',49);{'Bitmaps (*.BMP)|*.BMP|All files|*.*'}   // code049
              If FileType='ASC' Then SaveDialog1.Filter:=ml.GetCodeString('main32',50);{'Text Files (*.TXT)|*.TXT|All files|*.*'} // code050
              If FileType='TXT' Then SaveDialog1.Filter:=ml.GetCodeString('main32',51);{'HTML Files (*.HTM)|*.HTM|All files|*.*'} // code051
              If FileType='PDF' Then SaveDialog1.Filter:=ml.GetCodeString('main32',52);{'PDF Files (*.PDF)|*.PDF|All files|*.*'} // code052
              SaveDialog1.Title:=ml.GetCodeString('main32',53);{'Save manipulated carrier file as'; }// code053
            End;
          End
          Else Begin
           HStr:=ExtractFileName(Edit2.Text);
           If HStr<>'' Then Begin
            len:=Length(HStr);
            FName:='';
            If len>0 Then Begin
              i:=0;
              Repeat
                Inc(i);
                If HStr[i] In ['/','\','?','*','"',':','<','>','|'] Then
                  FName:=FName
                Else FName:=FName+HStr[i];
              Until i=len;
            End;
            Dout:=ExtractFilePath(Edit2.Text);
            {<changes 2.1>}
            len:=Length(Dout);
            GetDir(0,CurPath);
            If len=0 Then Dout:=CurPath;
            If Dout[len]='/' Then Dout:=Copy(Dout,1,len-1);
            {$I-}
            ChDir(Dout);
            If IOResult<>0 Then Begin
              MessageDlg(ml.GetCodeString('main32',54){'The directory is invalid.'},mtError,[mbOK],250);   // code054
              ChDir(CurPath);
              {$I+}
            End
            Else Begin
            {$I+}
            ChDir(CurPath);
            len:=Length(Dout);
            If Dout[len]<>'/' Then Dout:=Dout+'/';
            {</changes 2.1>}
            Dout:=Dout+FName;
            If FName='' Then MessageDlg(ml.GetCodeString('main32',55){'Please enter a valid file name.'},mtWarning,[mbOK],250)   // code055
            Else Begin
              WStep:=6;
              ws_title.Caption:=WSM[WStep,BoolToInt(Codec)];
              ws_x1.Caption:=IntToStr(WStep);
              ws_x2.Caption:=IntToStr(WStep);
              S6.Visible:=True;
              Ltin2.Visible:=False;
              Lin2.Visible:=False;
              Ltin1.Caption:=ml.GetCodeString('main32',56){'Manipulated file:'};    // code056
              Lin1.Caption:=ExtractFileName(Min);
              Ltout.Caption:=ml.GetCodeString('main32',57){'Result:'};       // code057
              Lout.Caption:=ExtractFileName(Dout);
              If Pwd='' Then LCrypt.Caption:=ml.GetCodeString('main32',58){'no encryption'}  // code058
              Else LCrypt.Caption:=ml.GetCodeString('main32',59);{'automatic decoding'; }   // code059
            End;
            End;
           End
           Else MessageDlg(ml.GetCodeString('main32',60){'Please enter a valid filename.'},mtWarning,[mbOK],250);  // code060
          End;
        End;
     6: Begin
          If Codec Then Begin
           HStr:=ExtractFileName(Edit2.Text);
           If HStr<>'' Then Begin
            len:=Length(HStr);
            FName:='';
            If len>0 Then Begin
              i:=0;

⌨️ 快捷键说明

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