btw, do you close ProcessInformation.hProcess handle when you call CreateProcessAsUser from Start8svc.exe?
because I noticed these leaking process objects in my system:
0: kd> !process 0 0 start8.exe
PROCESS a4d73540 SessionId: 1 Cid: 0784 Peb: 7f329000 ParentCid: 059c
DirBase: bd75f320 ObjectTable: 00000000 HandleCount: 0. Image: Start8.exe
PROCESS aa09f040 SessionId: 1 Cid: 08c0 Peb: 7f11f000 ParentCid: 059c
DirBase: bd75f3c0 ObjectTable: 00000000 HandleCount: 0. Image: Start8.exe
PROCESS c6a319c0 SessionId: 2 Cid: 1200 Peb: 7fb79000 ParentCid: 059c
DirBase: bd75f4e0 ObjectTable: bcbd59c0 HandleCount: <Data Not Accessible> Image: Start8.exe
PROCESS 88190940 SessionId: 1 Cid: 12fc Peb: 7facb000 ParentCid: 059c
DirBase: bd75f3a0 ObjectTable: 00000000 HandleCount: 0. Image: Start8.exe
PROCESS a4da3200 SessionId: 2 Cid: 1310 Peb: 7fced000 ParentCid: 059c
DirBase: bd75f560 ObjectTable: 00000000 HandleCount: 0. Image: Start8.exe
PROCESS a4d9b340 SessionId: 2 Cid: 1330 Peb: 7f7b5000 ParentCid: 059c
DirBase: bd75f5a0 ObjectTable: 00000000 HandleCount: 0. Image: Start8.exe
PROCESS a65d2400 SessionId: 2 Cid: 0f7c Peb: 7f488000 ParentCid: 059c
DirBase: bd75f520 ObjectTable: 00000000 HandleCount: 0. Image: Start8.exe