Automatický update sieťového klienta

Automatický update sieťového klienta

FtpUpdate

FtpUpdate.exe je program, ktorý je umiestnený na klientskom počítači a po spustení prostredníctvom FTP služieb synchronizuje súbory umiestnené na klientskom počítači oproti FTP-serveru v takzvanom vzorovom adresári. Po ukončení synchronizácie štartuje program podľa parametrov. FtpUpdate.exe sa nachádza na inštalačnom DVD v adresári D2000.SDK\FtpUpdate.

Inštalácia


Po inštalácii klienta systému D2000 je potrebné nakopírovať súbor FtpUpdate.exe do podadresára Bin programového adresára lokálneho počítača.
Tento, po štarte (je potrebné, aby pracovný adresár bol zhodný s adresárom, kde je umiestnený súbor FtpUpdate.exe), vykoná synchronizáciu obsahu programového adresára a aplikačného adresára na počítači klienta s príslušným vzorovým programovým adresárom a aplikačným adresárom na FTP zdroji.


Konfigurácia FTP servera:

  1. Meno FTP servera je parametrizovateľné a zadáva sa ako prvý parameter (povinný) programu FtpUpdate.exe. Konfigurácia pre vytvorenie spojenia je použitá zo systémového nastavenia (INTERNET_OPEN_TYPE_PRECONFIG).

  2. Meno FTP užívateľa: anonymous do požadovaných adresárov musí mať prístup READ.

  3. Adresárová štruktúra FTP servera:
    V koreňovom adresári FTP servera musí byť vytvorený adresár D2000. V rámci neho sa nachádzajú ďalšie podadresáre. Tieto obsahujú vzorové adresáre s inštaláciou klientov, podľa ich typu. Názov typu inštalácie je zhodný s menom podadresára.

    Hodnota v registri

    Typ inštalácie

    Hodnota v registri

    Typ inštalácie

    1

    OPERATOR

    2

    OPERATOR_LITE

    3

    MANAGER

    4

    ODBC

    5

    WEB1

    6

    OPERATOR_BASIC

    7

    OPERATOR_BASIC_WBK

    8

    OPERATOR_STANDARD

    9

    OPERATOR_DESIGNER

    10

    OFFICE

    11

    WEB2


    Typ inštalácie na klientskom počítači je zapísaný v systémovom registri: HKEY_LOCAL_MACHINE\SOFTWARE\Ipesoft\D2000V55\Console.

    Príklad:

    Konzola OPERATOR_STANDARD (hodnota HKEY_LOCAL_MACHINE\SOFTWARE\Ipesoft\D2000V55\Console=8). Po štarte program ftpupdate.exe synchronizuje lokálne adresáre Bin, ResDll, Msg, Help s adresármi D2000\OPERATOR_STANDARD\Bin, D2000\OPERATOR_STANDARD\ResDll, D2000\OPERATOR_STANDARD\Msg, D2000\OPERATOR_STANDARD\Help. Pre iný typ inštalácie klienta je vybraný iný príslušný adresár.

    Do uvedených adresárov je potrebné umiestniť aktuálne verzie súborov, ktoré majú byť kopírované na klientské počítače.

  4. V prípade potreby automatickej výmeny súboru FtpUpdate.exe na klientskych počítačoch, je novšiu verziu ftpupdate.exe potrebné umiestniť do FTP adresára D2000.

Činnosť programu


Parametre príkazového riadku:

FtpUpdate.exe FTPSrvName [/PASSIVE] [/NOBEFORE] [/NOAFTER] [/BPparam1] [/BPparam2] [/APparam1] [FILE_TO_RUN.EXE [param1] [param2] [paramN]]*

parameter

Význam

FTPSrvName

Meno FTP servera.

/PASSIVE

Použije pasívny FTP mód.

/NOBEFORE

Nebude spúšťať skripty before.bat a before.vbs.

/NOAFTER

Nebude spúšťať skripty after.bat a after.vbs.

/BPparam

Odovzdá parameter param skriptom before.bat a before.vbs. Prepínačov /BP môže byť viac.

/APparam

Odovzdá parameter param skriptom after.bat a after.vbs. Prepínačov /AP môže byť viac.

FILE_TO_RUN.EXE

Názov súboru, ktorý bude po ukončení FTPUpdate automaticky spustený.

param1..paramN

Parametre, ktoré budú odovzdané súboru FILE_TO_RUN.EXE.

* parametre uvedené v hranatých zátvorkách [] predstavujú nepovinné parametre


Beh programu:

  1. Po štarte FtpUpdate.exe si tento najprv skontroluje, či existuje nová verzia \\FTPSrvName\D2000\FtpUpdate.exe.

    • Ak áno: Skopíruje ju pod dočasným menom FtpTemp.exe do adresára Bin na lokálnom počítači, odovzdá jej svoje parametre, spustí ju a skončí. FtpTemp.exe spraví kópiu seba samého do súboru FtpUpdate.exe a pokračuje bodom 2.

    • Ak nie: Pokračuje bodom 2.

  2. Spustenie skriptov pred začiatkom samotnej synchronizácie:
    Ak sa na FTP serveri v adresári D2000/ nachádzajú súbory before.bat alebo before.vbs, tieto sú skopírované na lokálny počítač a vykonané. Ak boli pri spustení FTPUpdate.exe zadané parametre /BPparameter1 /BPparameter2 /BPparameterN, budú tieto odovzdané skriptu (už bez prefixu "/BP"). Skripty sú po vykonaní zmazané. Spusteniu skriptov sa dá zabrániť spustením FTPUpdate.exe s prepínačom /NOBEFORE.

  3. Synchronizácia adresárov:
    Vyhodnotí meno vzorového adresára na FTP serveri podľa typu konzoly. Následne synchronizuje všetky podadresáre nachádzajúce sa na FTP serveri. Napríklad:

    D2000\Vzorový adresár\Bin

    Bin

    D2000\Vzorový adresár\ResDll

    ResDll

    D2000\Vzorový adresár\Msg

    Msg

    D2000\Vzorový adresár\Help

    Help

    D2000\Vzorový adresár\Inst_Odbc

    Inst_Odbc

    Synchronizácia nemaže súbory na lokálnom počítači.

  4. Spustenie skriptov po synchronizácii:
    Ak sa na FTP serveri v adresári D2000/ nachádzajú súbory after.bat alebo after.vbs, tieto sú skopírované na lokálny počítač a vykonané. Ak boli pri spustení FTPUpdate.exe zadané parametre /APparameter1 /APparameter2 /APparameterN, budú tieto odovzdané skriptu (už bez prefixu "/AP"). Skripty sú po vykonaní zmazané. Spusteniu skriptov sa dá zabrániť spustením FTPUpdate.exe s prepínačom /NOAFTER. Umožňujú napr. zaregistrovať komponenty a podobne.

  5. Po ukončení synchronizácie registruje Add-in D2000 WorkBook pre MS Excel.

  6. Naštartuje program, ktorý je špecifikovaný parametrami.

 

Napríklad:
FtpUpdate.exe D2SRV /NOBEFORE /APparam1 /APparam2 HI.EXE /SD2SRV /F60 /LSK /TP

Uvedená konštrukcia zabezpečí:

  • ignorovanie skriptov before.bat a before.vbs,

  • aktualizáciu verzie,

  • spustenie skriptov after.bat a after.vbs s uvedenými parametrami param1 param2,

  • štart procesu D2000 HI s uvedenými parametrami /SD2SRV /F60 /LSK /TP.

 

Takto je možné (pre užívateľa transparentne) kontrolovať a v prípade potreby synchronizovať verziu pred každým spustením procesu (napríklad D2000 HI) nasledovnou zmenou zástupcu:

Zástupca pred zmenou (bez automatickej aktualizácie):

Zástupca po zmene:

Táto spočíva v štartovaní ftpupdate.exe namiesto hi.exe, pričom sú zachované štartovacie parametre procesu.

Pre zabezpečenie správnej ikony zástupcu je potrebné zvoliť voľbu Change Icon a nastaviť: