12-20-2011 11:44 AM
Sorry.
That is what happens when I am editin trip reports and posting at the same time.
and as plain text.
http://technet.microsoft.com/en-us/library/bb726981.aspx
The title indicates Win 2000 but most of the stack and switches remain the same.
Ben
12-20-2011 11:49 AM
Yeah the link was bad for me, too. I'm not really sure how to implement a .net solution in LabVIEW. I imagine there's some Windows dll call I could make to get it working (I'm guessing that's all that's going on inside GetRawSocketConnectionFromID.vi). The preferable solution would be to still be able to handle this graphically and without dll calls, though, like with an NI update to GetRawSocketConnectionFromID. Thanks again for the replies
12-20-2011 02:52 PM - edited 12-20-2011 02:54 PM
@jwkelly wrote:
Everything works perfectly on Win 7 64-bit, just not with LV 2011 64-bit. Also GetRawSocketFromConnectionID is where the error is produced, which is password protected so I have no way of making any modifications to it. Thanks for the speedy reply, though
You should replace the GetRawSocketFromConnectionID VI with the one from vi.lib/Utility/tcp.llb/TCP Get Raw Net Socket.vi. You also need to change the first parameter of the setsockopt() Call Library Node to be a pointer sized unsigned integer.
12-20-2011 03:54 PM
Thank you, that made it work perfectly. Also thank you for the many other solutions I saw from you back when I was trying to figure out how to use dlls properly in LabVIEW.
Do you know if I make this change whether the code will work on 32-bit LabVIEW as well, or do I need to code it both ways and use the conditional disable diagram with the TARGET_BITNESS condition?
12-21-2011 12:56 AM - edited 12-21-2011 01:00 AM
If you change the VI to use the Get Raw Socket function in vi.lib and the first parameter of setsockopt() to a pointer sized integer it should work on both 32 Bit and 64 Bit platforms. NI may have been a little slow to provide 64 Bit support for LabVIEW, but if they do it, they usually do it right and this one shows again that there has been put a lot of thought into it, to provide true 64 Bit support and allow to write VIs that actually can work on both platforms. This is another example of the striving to provide true multiplatform support in LabVIEW.