Const adTypeBinary = 1
Const adModeReadWrite = 3
Dim filePath, newByte
' Получаем путь к файлу от пользователя
filePath = InputBox("Введите полный путь к файлу:", "Выбор файла")
If filePath = "" Then
MsgBox "Операция отменена пользователем"
WScript.Quit
End If
' Создаем объект для работы с файлом
Set objStream = CreateObject("
ADODB.Stream ")
objStream.Type = adTypeBinary
objStream.Open ' Открываем файл в режиме чтения/записи
objStream.LoadFromFile filePath
objStream.Position = objStream.Size - 1
' Генерируем случайное значение от 1 до 255
Randomize
newByte = CByte(Int(Rnd * 255) + 1)
' Записываем новый байт
objStream.Write newByte
objStream.Flush
objStream.Close
MsgBox "Последний байт успешно изменен на " & Hex(newByte)
Также желательна оптимизированная реализация скрипта для больших файлов (чтобы скрипт мог обрабатывать файлы весом несколько мегабайт и при этом при выполнении не тратить на это много времени и не занимать много места в RAM).
Ответы от чатагпт не интересуют, он все равно не справится с этим, так что ответы с ним или просто с изначально нерабочим кодом буду скрывать)0
Нормальный и человеческий ответ с рабочим кодом, который будет выполнять нужную мне основную логику, выберу лучшим.