Now, I have tried every possible combination I could imagine of portsettings in WM6 with and without the portsplitter.
If I do it correct with the portsplitter then the "outofmemoryexception" does not appear, but I do not get any gps-data(serial.inbuffercount). Other progs that use .Net 2.0 work. So I think there is something going wrong in Basic4ppc and its libaries.
I will test on other devices as soon as I can (maybe it is only on devices with buildIn gps). But now I have to stop programming.

This took me too many hours and I have do a job for money as well. Hopefully there will be an answer for this in near future.
Thanks a lot for your help.