Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 16 из 16

Тема: Проблема с SysLibFile

  1. #11

    Exclamation

    Цитата Сообщение от Валенок Посмотреть сообщение
    На самом деле проблема решилась другим способом. Ставлю проект на паузу, считываю файл - считывается полностью. Если же проект в запущенном состоянии, то всё происходит как я писал выше, любой из скачиваемых файлов не более 1кб.

  2. #12
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,290

    По умолчанию

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

  3. #13

    По умолчанию

    Вообщем всем спасибо, за помощь, проблему решил сам!)

  4. #14

    По умолчанию

    Поможите чем сможите
    Вот у меня такая штука.

    PROGRAM MAC_Control
    VAR
    PRG_MAC_Contrl_Start:BOOL:=TRUE;
    diFile: DWORD;
    ReadSizeByte: DWORD;
    File_Size: DWORD;
    Local_Addres_DATA:ARRAY [0..255] OF BYTE;
    END_VAR

    IF PRG_MAC_Contrl_Start THEN
    diFile:=SysFileOpen('local_addres.dat','r');

    IF diFile > 0 THEN
    File_Size:=SysFileGetSize('local_addres.dat');
    ReadSizeByte:=SysFileRead(diFile, ADR(Local_Addres_DATA), File_Size);
    SysFileClose(diFile);
    ELSE
    ; (* Error file *)
    END_IF

    PRG_MAC_Contrl_Start :=FALSE;
    END_IF

    Размер показывает, если файл кинуть на ПК и посчитать посимвольно + на каждый перенос 2 байто. Размер верен.
    Но данные не читаются?
    Покурил экземплы, форум все вроде очень похоже.
    Что может быть?

    Вот еще вопросик - Как я понимаю размер файла local_addres.dat всегда постоянен 76 байт. Это так?
    Ну чтоб массив не от 0..255 а 0..76 делать.

    Спасибо.

  5. #15

    По умолчанию

    С чтение разобрался. ( помогла перезагрузка , почему-то заводской сброс не помогал? )
    С длинной файла вопрос остается.

    Спасибо.

  6. #16

    По умолчанию

    Цитата Сообщение от pavelrer Посмотреть сообщение
    С длинной файла вопрос остается.
    Если так необходима экономия памяти выделяй ее динамически, например SysMemAlloc из SySLibMem.lib )

    И ышо. методически грамотней разбивать обращения к файлам по циклам ПЛК. то есть открыли - в следующем цикле измерили длинну. в следующем прочитали (а может быть и не в одном) в следующем закрыли.

Страница 2 из 2 ПерваяПервая 12

Похожие темы

  1. Особенности библиотеки SysLibFile
    от Партизан в разделе ПЛК1хх
    Ответов: 21
    Последнее сообщение: 12.08.2010, 10:06
  2. Библиотека SysLibFile
    от Serp в разделе ПЛК1хх
    Ответов: 37
    Последнее сообщение: 23.03.2010, 13:34
  3. Вопрос по SysLibFile
    от TYER в разделе ПЛК1хх
    Ответов: 6
    Последнее сообщение: 22.05.2009, 13:07
  4. работа с SysLibFile.
    от Юрий_1900 в разделе ПЛК1хх
    Ответов: 2
    Последнее сообщение: 19.11.2008, 13:10
  5. SysLibFile
    от незарегистрированный в разделе ПЛК1хх
    Ответов: 6
    Последнее сообщение: 31.10.2008, 18:01

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •