📄 main32.pas
字号:
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 + -