Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

задача АГЕНТ

16K
03 октября 2006 года
Baur
8 / / 28.09.2006
1. Как можно делать вот такой агент (можно назвать loader.exe), при загрузке системы просыпается (на 5 сек) и начинает свою работу:
в компе находиться приложение
‘C:\приложениею.exe’
и в сервере находиться приложение
‘\\server\папка \приложениею.exe’
агент проверяет ‘C:\приложениею.exe’ если он оказывается более старым чем
‘\\server\папка \приложениею.exe’ (через дату или как) то его заменяет и запускает и обратно в нору.
Это нужен чтобы обеспечить клиентов новой версией программы


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

Заранее благодарен всем, кто откликнется!

[COLOR=red]замечание: просьба темы так не называть: "Все смотрите туда, ...".
читайте пожалуйста правила форума. (moderator)
[/COLOR]
1.9K
03 октября 2006 года
SABROG
242 / / 26.01.2006
Чесно говоря не понимаю зачем вы паритесь с этим обновлением. Проще всего сделать ярлык на .bat файл, где в конце будет запускаться ваша программа, а перед этим вставить нечто подобное:

 
Код:
@echo FY|xcopy \\server\program\program.exe c:\program\program.exe /D
@c:\program\program.exe


Действие - перезапись программы новой, если на диске C: файл создан ранее чем на сервере.
309
03 октября 2006 года
el scorpio
1.1K / / 19.09.2006
Цитата:
1. Агенту нужен вот такой возможность, когда его первый раз запускаем он должен записать свои данные в реестр, чтобы следующий раз проснуться вместе с windows, но он должен делать это только один раз, чтобы каждый раз не загружать память!


Прописать вызов в реестре "SOFTWARE\ Microsoft\ Windows\ CurrentVersion\ RunOnce" в системном или пользовательском разделе

1.9K
03 октября 2006 года
SABROG
242 / / 26.01.2006
Сравнить время создания двух файлов можно API функцией

Цитата:

The CompareFileTime function compares two 64-bit file times.

LONG CompareFileTime(

CONST FILETIME *lpFileTime1, // pointer to first file time
CONST FILETIME *lpFileTime2 // pointer to second file time
);


Parameters

lpFileTime1

Points to a FILETIME structure that specifies the first 64-bit file time.

lpFileTime2

Points to a FILETIME structure that specifies the second 64-bit file time.



Return Values

If the function succeeds, the return value is one of the following values:

Value Meaning
-1 First file time is less than second file time.
0 First file time is equal to second file time.
+1 First file time is greater than second file time.


See Also

GetFileTime, FILETIME



В зависимости от результата скопировать поверх нового:

Цитата:

The CopyFile function copies an existing file to a new file.

BOOL CopyFile(

LPCTSTR lpExistingFileName, // pointer to name of an existing file
LPCTSTR lpNewFileName, // pointer to filename to copy to
BOOL bFailIfExists // flag for operation if file exists
);


Parameters

lpExistingFileName

Points to a null-terminated string that specifies the name of an existing file.

lpNewFileName

Points to a null-terminated string that specifies the name of the new file.

bFailIfExists

Specifies how this operation is to proceed if a file of the same name as that specified by lpNewFileName already exists. If this parameter is TRUE and the new file already exists, the function fails. If this parameter is FALSE and the new file already exists, the function overwrites the existing file and succeeds.



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.

Remarks

Security attributes for the existing file are not copied to the new file.
File attributes (FILE_ATTRIBUTE_*) for the existing file are copied to the new file. For example, if an existing file has the FILE_ATTRIBUTE_READONLY file attribute, a copy created through a call to CopyFile will also have the FILE_ATTRIBUTE_READONLY file attribute. For further information on file attributes, see CreateFile.

See Also

CreateFile, MoveFile

21K
03 октября 2006 года
Dadic
3 / / 02.10.2006
[QUOTE=Baur]
1. Агенту нужен вот такой возможность, когда его первый раз запускаем он должен записать свои данные в реестр, чтобы следующий раз проснуться вместе с windows, но он должен делать это только один раз, чтобы каждый раз не загружать память!

Заранее благодарен всем, кто откликнется!
[/QUOTE]

Предлагаю.
Когда агент будет прописывать себя в реестр, пусть пропишет
путь к себе + какой то ключ (путь + /K), когда агент запускается с ключом (читаеш параметер) реестр не проверяет, в ином случае (когда он запускается впервые) делает запись в реестре.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог