Показано с 1 по 6 из 6

Тема: SysFileClose возвращает Invalid

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,574

    По умолчанию

    Код:
    	loadReception	: BOOL;
    	saveReception	: BOOL;
    	hFile			: DWORD;				(* дескриптор файла рецептов *)
    	reception		: ARRAY [0..9] OF PROD_RECEPT;
    
    
    IF loadReception THEN																			(* при загрузке плк *)
    	hFile:=SysFileOpen('rcpt.bin', 'r');																(* получение дескриптора файла *)
    	IF hFile>0 THEN																				(* если файл существует *)
    		logFileSize := SysFileGetSize('rcpt.bin');													(* вычисляем размер файла *)
    		(* читаем данные по минимуму, либо размер файла, либо размер массива *)
    		IF SysFileRead(hFile, ADR(reception)
    			,MIN(UDINT_TO_DWORD(logFileSize)
    			,INT_TO_DWORD(SIZEOF(reception)))) <> 0 THEN	(* если приняли соответствующее количество байт *)
    			SysFileClose(hFile);																	(* закрываем файл *)
    			loadReception:=FALSE;
    		ELSE SysFileClose(hFile);loadReception:=FALSE; END_IF;
    	ELSE loadReception:=FALSE; END_IF;
    END_IF;
    Такой код работает
    Не понятно зачем Вы рецепты в разные файлы пишите, не забывайте что к каждому файлу пишется еще служебная информация, поэтому такой способ больше занимает место на флеш

  2. #2

    По умолчанию

    Такой код работает
    Не понятно зачем Вы рецепты в разные файлы пишите, не забывайте что к каждому файлу пишется еще служебная информация, поэтому такой способ больше занимает место на флеш
    Спасибо, только недавно столкнулся с этой библиотекой и всех тонкостей не знал. Писал в разные файлы, т.к. это легче реализовать с моей точки зрения К тому же, рецептов у меня не более 15, места хватит : ))

    В моем случае нашел ошибку: SysFileClose должно было быть на строчку выше )
    Последний раз редактировалось Wanted; 23.04.2013 в 14:09.

Похожие темы

  1. Глобальные переменные. INVALID
    от GrAMm.78 в разделе ПЛК1хх
    Ответов: 3
    Последнее сообщение: 27.02.2012, 09:24
  2. Runtime error 380: invalid property value
    от Ox2CEF в разделе OWEN Proces Manager
    Ответов: 1
    Последнее сообщение: 24.11.2009, 18:10
  3. Ошибка 'Invalid type WORD at address %IW9.7.17.0'
    от Andy в разделе ПЛК1хх
    Ответов: 2
    Последнее сообщение: 15.11.2008, 22:15

Ваши права

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