|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] редактирование файла |
|
[решено] редактирование файла
|
![]() Пользователь Сообщения: 77 |
Подскажите есть ли возможность редактирование файла в бинарном режиме не в текствой (допустим exe файл какойнибудь, а в нем изменить с смещением какойто байт)?
Подскажите пожалуйста! |
|
Отправлено: 22:04, 24-03-2009 |
Старожил Сообщения: 460
|
Профиль | Отправить PM | Цитировать Цитата:
#region: - Option Opt('MustDeclareVars', 1) Opt('TrayIconHide', 0) Opt('TrayIconDebug', 1) #endregion #region: - Global Global $sNotepadRealPath = 'c:\WINDOWS\NOTEPAD.EXE' Global $hFile Global $sBinaryText #endregion $hFile = FileOpen($sNotepadRealPath, 16) $sBinaryText = FileRead($hFile) MsgBox(0, '', $sBinaryText) |
|
------- Отправлено: 17:22, 25-03-2009 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
![]() Пользователь Сообщения: 77
|
Профиль | Отправить PM | Цитировать proxy, спсибо большое, а не подскажешь как делать так чтоб файл полностью читался, а то у меня в файле 290 тысяч символов а autoit открывает только 10 тысяч (
|
Отправлено: 09:07, 26-03-2009 | #3 |
Старожил Сообщения: 460
|
Профиль | Отправить PM | Цитировать #region: - Option Opt('MustDeclareVars', 1) Opt('TrayIconHide', 0) Opt('TrayIconDebug', 1) #endregion #region: - Include #endregion #region: - Global, Local Global $iCountReadChar = 9000 Local $sFilePath = @SystemDir & '\tapi.dll' Local $aBinaryText #endregion $aBinaryText = _File_Read_Binary($sFilePath) If $aBinaryText <> -1 Then _ MsgBox(0, 'Последний результат чтения: ' & $aBinaryText[0], $aBinaryText[$aBinaryText[0]]) Func _File_Read_Binary($sFilePath) Local $hFile, $sString, $aBinaryText[1], $i $aBinaryText[0] = 0 $i = 1 $hFile = FileOpen($sFilePath, 16) If $hFile == -1 Then MsgBox(32, 'Внимание', 'Невозможно открыть файл:' & @CRLF & $sFilePath & @CRLF & 'Ошибка:' & $hFile) Return -1 EndIf While 1 $sString = FileRead($hFile, $iCountReadChar) If @error == -1 Then ExitLoop $aBinaryText[0] += 1 ReDim $aBinaryText[$aBinaryText[0]+1] $aBinaryText[$i] = $sString ;~ MsgBox(0, 'Результат чтения: ' & $i, $aBinaryText[$i]) $i += 1 Wend FileClose($hFile) ;~ MsgBox(0, 'Последний результат чтения: ' & $aBinaryText[0], $aBinaryText[$aBinaryText[0]]) Return $aBinaryText EndFunc |
------- Отправлено: 16:38, 26-03-2009 | #4 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать Цитата .:TimoXa:.:
к сожалению, штатными средствами поддерживается только поседовательный доступ к файлам - чтобы прочитать байт в любом месте большого файла, приходится полностью прочитывать его от начала файла до нужного места |
||
Отправлено: 08:29, 27-03-2009 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Недоступно редактирование реестра | systeman | Хочу все знать | 3 | 30-10-2009 15:15 | |
Доступ - [решено] редактирование реестра | texas999 | Лечение систем от вредоносных программ | 4 | 26-05-2009 07:17 | |
CMD/BAT - [решено] Как скопировать имя файла из текстового файла в код батника и т.д. | Nun-Nun | Скриптовые языки администрирования Windows | 6 | 13-05-2009 13:28 | |
Условие кодировки. Редактирование файла из cmd. | Mss | Автоматическая установка Windows 2000/XP/2003 | 4 | 19-05-2005 23:25 | |
Редактирование EXE файла FoxPro | Giorgievich | Программирование и базы данных | 7 | 21-08-2004 22:48 |
|