The form for the server project is missing from the files that you submitted, therefore I can't really tell what the app is doing.
Looking at the client project's source I am a little confused by what you are trying to do in the PointerValueChanged event handlers, because you appear to be setting the slides value equal to itself, and if this slide is supposed to be bound to a datasocket connection, everytime it updates its value based on the connection it also calls the PointerValueChanged handler to alter it again. In short I don't think this is a very good idea, and is rather redundant anyway.
Did you take a look at the two samples that I mentioned in my previous post? I know that they are in CVI, but you indicated that you are somewhat com
fortable programming in it as well (CVI uses the same datasocket implementation as CWDS does, nids.dll, so that will not be an issue either). These examples can be used in the same scenario that you are inquiring about and should work rather well for your purposes.
In the end I am pretty sure that when you have multiple clients on multiple computers reading data that has attributes it does work fine with DS4.0. So really I think you should try the examples I mentioned to see if they exhibit the same behavior.
Jason F.
Applications Engineer
National Instruments
www.ni.com/ask