RE: FLI and delivery
> ...
> I encounter the following error when delivering at level 2
> 
> Error: Failed to find address for external symbol "ServiceMain".
> 
> I guess it is caused by the definition
> 
> (fli:define-foreign-callable ("ServiceMain" :encode :source
> :result-type :void)
>     ((argc dword)
>      (argv (:pointer :pointer)))
> ...
> 
> (deliver 'ntservice::standard-main "mysrv.exe" 2
>          :keep-symbols '(|%FOREIGN-CALLABLE/ServiceMain|
> service-control-handler servicemain |ServiceMain| "ServiceMain")
>          :interface :capi)
> 
> but none of the :keep-symbols helps.
> 
> ...
I'm sorry - the solution is quiet simple:
(deliver 'ntservice::standard-main "mysrv.exe" 5
         :multiprocessing t
         :keep-symbols '(ntservice::|%FOREIGN-CALLABLE/ServiceMain|))
makes the app working and utterly small (3MB) (I just forgot to mention the package).
Rem: This is the most compact working delivery command for my version of ntservice.lisp
Andreas