Как написать программу архивирования
Елена; 18.2.03

Уважаемые участники форума. Подскажите, где найти шаблон программы на C для Global Wincc 5.1, чтобы сархивировать переменную с частотой выше, чем 500 мсек.

И еще. Как средствами WinCC 5.1 также через Global создать новую директорию (папку) в Windows.
Re: Как написать программу архивирования
Юрий Оганесян; 19.2.03

Больше всего мне нравится непринужденный стиль вопроса :).

Способы писать в базу из WinCC помимо Tag Logging на форуме обсуждались уже раз 10, но, думаю, никто не решиться гарантировать, что хоть один способ успеет на требуемое время. Не знаю полностью вашу задачу, но интуиция мне говорит, что ее надо решать (если вообще надо) как-то по-другому, а не «в лоб» и, возможно, с применением совсем других аппартно-программных средств.
По поводу создания папки, то WinAPI открыто, но все та же интуиция снова говорит мне, что вы «ломитесь не в ту дверь».

Re: Как написать программу архивирования
Elena; 20.2.03

Спасибо за ответ, за стиль - отдельно. Просмотрела Форум за 1998-2003, "по зубам" ничего не нашлось. Будем писать эту переменную в виде ряда переменных, которые будут приходить из контроллера с больщей частотой, их архивировать, а потом собирать в массив нужной нам переменной. Что про папку, так туда хотелось сбросить архив переменной несколько раз, допустим, за смену, но под разными именами. Библиотека Dos не подключилась (не признал) и mkdir не признал тоже.

Re: Как написать программу архивирования
Александр Родин, ООО "Нева Электрик"; 20.2.03

Оставте ваш адрес, или пишите на наш...

Поедлимся.
Re: Как написать программу архивирования
Константин; 20.2.03

Александр, просьба неприлично не выражаться :-))

Re: Как написать программу архивирования
Елена; 20.2.03

Заранее благодарны...

Адрес
vniimt_44@mail.net-burg.net
Re: Как написать программу архивирования
Alexis; 20.2.03

2 Александр Родин

Александр, Вы стандартным TagLogging-ом без использования различных прибамбасов типа AR_SEND архивируете с частотой менее 0.5 секунды?
Или Вы делитесь чем-то другим?
Re: Как написать программу архивирования
Александр Родин, ООО "Нева Электрик"; 20.2.03

2Alexis

Нет стандартным таглоггингом архивировать с циклом менее 500 мс не получится никогда.

Да и вабще, у нас таких задач пока не ставилось. Более того, даже если взяться за эту задачу средствами самой WinCC, то ни к чему хорошему это не приведет. Хотя в принципе это возможно, потому как есть возможность создания пользовательского цикла 100мс.

Теоретически, если сделать архивирующий глобал-скрипт с пользовательским циклом, то можно добиться желаемого результат... Только кому нужен этот гемор ?... %))))))))

А делюсь я просто функцией создания дерриктории... :)
Re: Как написать программу архивирования
Alexis; 21.2.03

Нда... медленный TagLogging...


Кстати, а с WinCC ver6 кто-нибудь разбирался?

А создание директории эт же просто:

BOOL CreateDirectory(
LPCTSTR lpPathName,
LPSECURITY_ATTRIBUTES lpSecurityAttributes
);

Parameters
lpPathName
[in] Pointer to a null-terminated string that specifies the path of the directory to be created.
There is a default string size limit for paths of 248 characters. This limit is related to how the CreateDirectory function parses paths.

Windows NT/2000/XP: To extend this limit to 32,767 wide characters, call the Unicode version of the function and prepend "\\?\" to the path. For more information, see Naming a File.

lpSecurityAttributes
Windows NT/2000/XP: [in] Pointer to a SECURITY_ATTRIBUTES structure. The lpSecurityDescriptor member of the structure specifies a security descriptor for the new directory. If lpSecurityAttributes is NULL, the directory gets a default security descriptor. The target file system must support security on files and directories for this parameter to have an effect.
Return Values
If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero. To get extended error information, call GetLastError.

Requirements
Windows NT/2000/XP: Included in Windows NT 3.1 and later.
Windows 95/98/Me: Included in Windows 95 and later.
Unicode: Implemented as Unicode and ANSI versions on Windows NT/2000/XP. Also supported by Microsoft Layer for Unicode.
Header: Declared in Winbase.h; include Windows.h.
Library: Use Kernel32.lib.