Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблема с файлами


Страницы:   1 2

djkondakov ©   (2009-07-21 14:14:00) 

Здравствуйте! Возникла проблема: при попытке открыть файл для чтения происходит ошибка 103 (Файл не открыт). Как можно исправить?


Anatoly Podgoretsky   (2009-07-21 16:54:00) [1]

> Palladin  (21.07.2009 16:36:22)  [22]

Ты хочешь сказать, что они положили на текстовые файлы неизвестной длины, например на COMx


Palladin   (2009-07-21 16:36:00) [2]

хотя могу предположить, что механизм в какой то из версий, старше седьмой, поменяли...


Palladin   (2009-07-21 16:35:00) [3]

а ты попробуй


Игорь Шевченко   (2009-07-21 16:34:00) [4]

Palladin ©   (21.07.09 16:10) [19]


> нельзя прочитать используя TextFile


program ReadExe;

{$APPTYPE CONSOLE}

uses
 SysUtils;

var
 F: TextFile;
 S: string;
 I: Integer;
begin
 AssignFile(F, ParamStr(0));
 FileMode := 0;
 Reset(F);
 I := 0;
 while not Eof(F) do
 begin
   readln(F, S);
   Inc(I);
 end;
 writeln(I, ' строк в ', ParamStr(0));
end.


13 строк в C:\Documents and Settings\Мои документы\Borland Studio Projects\TESTS\ReadExe\ReadExe.exe


Palladin   (2009-07-21 16:10:00) [5]


> то есть exe нельзя прочитать как текстовик?

нельзя прочитать используя TextFile


djkondakov   (2009-07-21 16:10:00) [6]

Тоже нашел. Правда, был Notepad2 (Винда такая, Самлабовская).


Anatoly Podgoretsky   (2009-07-21 16:01:00) [7]

> djkondakov  (21.07.2009 15:48:16)  [16]

Ну а теперь попробуй в Notepad без плюсов


djkondakov   (2009-07-21 15:48:00) [8]

Гхм... то есть exe нельзя прочитать как текстовик? Открыв упакованный файл в Notepad ++, я спокойно нашел свой лог-файл.


Anatoly Podgoretsky   (2009-07-21 15:45:00) [9]

> djkondakov  (21.07.2009 15:36:13)  [13]

В текстовом режиме?


Юрий Зотов   (2009-07-21 15:43:00) [10]

> djkondakov   (21.07.09 15:36) [13]

В режиме чтения и не текстовый. А у Вас?


djkondakov   (2009-07-21 15:36:00) [11]

Да, я нашел свою ошибку. И последующие тоже. И, кстати, что такого в том, что экзешник сам себя читает? Разве инсталлеры так не делают?


Anatoly Podgoretsky   (2009-07-21 15:31:00) [12]

> Юрий Зотов  (21.07.2009 15:26:11)  [11]

При том в  текстовом режиме!  и с монопольными шаринг свойствами.
Это у него будет следующая проблема, когда сможет пробраться через остальной ужас.


Юрий Зотов   (2009-07-21 15:26:00) [13]

assignfile(fprom, paramstr(0));
reset(fprom);


EXE открывает для чтения себя же?


Anatoly Podgoretsky   (2009-07-21 15:22:00) [14]

Неумение пользоваться справкой, отладчиком и прочим.
Неверно выбран тип файлов, неверная работа с буферами.
Тут наиболее подходит TFileStream и чтение одним блоком.
А ошибка "отричательное позиционирование" с этим в отладчик, но лучше переписать все нафиг.


djkondakov   (2009-07-21 15:00:00) [15]

Так. Теперь в 46-й строке ошибка 131 (Первый раз о такой слышу - I/O Error 131). Отладчик заюзать не могу, так как приходится сначала "запихивать" в полученный экзешник файлы с помощью пакера, а потом уже запускать.


Anatoly Podgoretsky   (2009-07-21 14:53:00) [16]


> 35-я строка. Выделена жирным.

У тебя нет прав


Игорь Шевченко   (2009-07-21 14:38:00) [17]


> Ошибка происходит где-то в районе строки


отладчика нет/не знаешь/пусть лохи пользуются ?

перед строкой вставить
FileMode := 0


djkondakov   (2009-07-21 14:37:00) [18]

35-я строка. Выделена жирным.


Anatoly Podgoretsky   (2009-07-21 14:32:00) [19]

> djkondakov  (21.07.2009 14:21:02)  [2]

В какой строке ошибка


djkondakov   (2009-07-21 14:26:00) [20]

Ошибка происходит где-то в районе строки, выделенной жирным, т.к. сообщение "Файл назначен" выводится, а "Файл открыт" - нет.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо