Instalace jobworkera

Scénář

Potřebuji, aby na nějakém počítači u zákazníka (často na serveru) běžel ISKAM v režimu jobworkera a aby se automaticky startoval po restartech serveru.

Postup

Je nutné nejprve nainstalovat normálně klientskou aplikaci ISKAMu, spustit ji, přihlásit se a zařadit ji do struktury organizace.

Následně je vhodné nainstalovat službu windows, která na něj dohlídne a bude se starat o spouštění ISKAMu. Instalátor je tady.

Při instalaci se služba připraví pod lokálním systémovým účtem s automatickým zpožděným startem. Účet můžete samozřejmě změnit. Služba se po instalaci sama nespustí, abyste měli čas upravit konfigurační soubor.

Ve složce, kam se služba nainstaluje, je následně potřeba nastavit parametry. Je-li to na SQL serveru, je lepší nastavit zpožděné spouštění, aby už běžel SQL server. Popř. lze nastavit přímo závislost na SQL serveru

sc config "Start jobworker" depend= "MSSQL$SQL"

Další tipy a triky

Vyplněný INI vypadá třeba takto:

<INI>
  <JOBWORKER>
    <FILE>iskam.exe</FILE>
    <PROCESS>iskam</PROCESS>
    <PATH>C:\ApS Brno\ISKaM4</PATH>
    <LASTSTARTED>8.6.2013 4:21:13</LASTSTARTED>
  </JOBWORKER>
</INI>

Službu lze využít ke spouštění prakticky čehokoliv, jen je potřeba vědět, že „FILE“ volá s parametrem -noui. Pokud potřebujete volat nějaký program bez parametrů nebo s jinými, tak je možné dát do FILE název .bat souboru, který bude vstupní parametr ignorovat a přes „start“ spustí, co potřebujete. Pozor ovšem na to, že je skutečně nutné volat to přes start a v příkazu pro spuštění uvést přesně stejnou cestu, jaká je zde v PATH, jinak hrozí, že služba bude spouštět stále nové instance vašeho programu.

V INI souboru můžete rovněž použít pole <CURRENTUSER /> (bez obsahu, resp. obsah se ignoruje), díky čemuž se služba pokusí spustit program v rámci session právě přihlášeného uživatele, tj. viditelně. Toto lze využít např. pro spuštění bezobslužných kiosků. Např. pro spuštění náhledu na konto se pak volá .bat soubor např. s následujícím obsahem:

start "" "C:\ApS Brno\ISKAM4\iskam.exe" -accountview

Samotný .bat soubor musí být umístěn ve stejné cestě, kam odkazuje pole PATH v INI souboru:

<INI>
  <JOBWORKER>
    <FILE>accountview.bat</FILE>
    <PROCESS>iskam</PROCESS>
    <PATH>C:\ApS Brno\ISKAM4</PATH>
    <LASTSTARTED></LASTSTARTED>
    <CURRENTUSER />
  </JOBWORKER>
</INI>

Pole JOBWORKER může být v INI souboru více, služba pak může nezávisle na sobě udržovat více programů v běhu.