I believe that I have a solution for you.
The objects that are being generated by the ilsmartlinkage directive need their reference to be passed rather than the object itself, eg:
Object params [] = {SExtUebergabeLen, sExtUebergabe.get_Reference(), SUservgIoLen, sUservgIo.get_Reference()};
I tried this here with my test program and it then worked successfully.
Thanks.