Это должно работать.

Код:
InputFileName$=OpenFileRequester("Выберите файл для шифрования/дешифрования.","","(*.*)|*.*|",0)
PasswordFileName$=OpenFileRequester("Выберите файл-ключ.","","(*.*)|*.*|",0)
OutputFileName$=SaveFileRequester("Выберите/введите имя файла для результата работы шифровщика/дешифровщика","","(*.*)|*.*|",0)
InputFile=ReadFile(#PB_Any,InputFileName$)
KeyFileName=ReadFile(#PB_Any,PasswordFileName$)
OutputFile=CreateFile(#PB_Any,OutputFileName$)
*KeyBuffer=AllocateMemory(FileSize(PasswordFileName$))
*Overflow=*KeyBuffer+FileSize(PasswordFileName$)
*Byte.Ascii=*KeyBuffer
ReadData(KeyFileName,*KeyBuffer,Lof(KeyFileName))
While Not Eof(InputFile)
  WriteAsciiCharacter(OutputFile,ReadAsciiCharacter(InputFile)!*Byte\a)
  *Byte+SizeOf(Byte)
  If(*Byte<=*Overflow)
    *Byte=*KeyBuffer
  EndIf
Wend

Отредактировано PSY (06.12.2023 05:50:50)