So this is what I got so far.

;from kixtart.kix
IF Left(@WKSTA,5)=pcsoc

call jredeploy.kix

ENDIF


;jredeploy.kix
IF NOT (registry check here)


$CompNR=Right(@WKSTA,3)

$installed=ReadProfileString("jredeploy.ini",compNR,$CompNR)


IF $installed=0

shell "\\server\jre.exe"

WriteProfileString("jredeploy.ini",compNR,$CompNR,1)

ENDIF

ENDIF

EXIT


jredeploy.ini
[compNR]
000=0
001=0
006=0
010=0
011=0
...

Now I only need some help with the try-again loop sugested by Les