Jump to content

hooovahh

Moderators
  • Posts

    3,239
  • Joined

  • Last visited

  • Days Won

    237

hooovahh last won the day on August 8

hooovahh had the most liked content!

About hooovahh

Profile Information

  • Gender
    Male
  • Location
    Detroit MI

Contact Methods

LabVIEW Information

  • Version
    LabVIEW 2020
  • Since
    2004

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

hooovahh's Achievements

  1. Well I was having a hard time coming up with the words of what I actually needed. In my mind MoveBlock took a pointer to an array returned from a DLL and gets the actual array of data in LabVIEW. I wanted the opposite, which was to take an array of data from LabVIEW, and get a pointer for it. I agree the title is terrible, and MoveBlock can do both operations, with the only extra needed is allocating the memory with DSNewPtr, and releasing the memory with DSDisposePtr. That totally makes sense now. Thanks.
  2. That's what I thought, which is why I was confused by the datatype that the DSNewPtr returned for an Integer Sized Pointer as a U64.
  3. Aw man, you're telling me an undocumented feature that can make my program perform better, but also unstable, isn't the right approach. Fine I'll stick with the CLNs. But it is very tempting to use this node, and just lock down the VI and put up all kinds of warnings. About the 32/64 bit through. So on my 64 bit Windows, but 32 bit LabVIEW, the memory pointers are always 64 bit, and but it looks like it is always only using 32 bits for the address. This is using the "Integer Sized Pointer" for the nodes. This is apparently an I64. Shouldn't it be an I32, and only on 64 bit LabVIEW, be an I64? Also these should probably be unsigned right? But likely doesn't change the functionality?
  4. Thanks, I did figure it out. Using the linked example was very helpful. First I think the pointer wasn't being put at the right index, so data was being read at an address and then that was being sent. Then the example used I32 not U8 as the data of the array, and there were extra zeros between data points. Seems all good now.
  5. So I'm dealing with calling some DLLs for external communication. When you call the DLL one function returns a pointer to an array of data. Using the MoveBlock I can successfully get the array of data back into LabVIEW. But one issue I'm having is that I also need to go the opposite way. I have an array of data in LabVIEW and I need to send it to the DLL. I realize the normal way you would do this is by calling the DLL with the Array Data Pointer on the Call Library Node. The problem is the data I need to reference, is actually a reference in the reference. In LabVIEW I have an array of U8 like this: [0]=0xFF [1]=0xAB [2-5]=Pointer to Data [6, 7] = 0x1234 I'm already calling the DLL passing in the array of 8 bytes using the Array Data Pointer, but within that array needs to be 4 bytes, referencing another pointer for another array of data. Is there a way to create a pointer in LabVIEW to some array of data? Then I can put it in my array, and send that? Sorry my C and DLL calling experience isn't as good as my LabVIEW experience and even finding the words to search for are difficult since it returns all kinds of information about MoveBlock, and LabVIEW control references. Thanks. Edit: Okay looks like I might need DSNewPtr to make a pointer, that I can then pass into the DLL. It is partially working, it just isn't the data that I put into the pointer.
  6. Sorry I'm just trying to work out how I'm going to support helping the community, in the event that management decides to not go the subscription route.
  7. I messaged the site admin again. Also remember there is a Community Edition, and presumably there will be for 2022. So a subscription and payment aren't required for 2022, but an NI account in this case would be.
  8. I'd first ignore LabVIEW and just look at the theoretical limit using command line tools. I used Iperf in the past between two computers with one setup to be the server, and one the client. The fact that you see 100% makes me think there is a different bottleneck.
  9. This is very different for multiple reasons. But honestly these types of subscriptions don't bother me, because they often are for features you didn't pay for. This isn't someone paying for seat heaters, and then having them taken away and now you have to pay a monthly fee. In this case you had the option to pay for the seat heaters up front on a single cost (perpetual), or you now have the option of a monthly fee. Choice is good. I don't think the "Full Self Driving" of a Tesla is worth the $12k they are asking. Especially for a beta feature tied to the car, not the owners account. Which is why I think it is a nice option that they have subscription option that people can buy into for a month if they have a long trip planned. I still won't personally get it but I like that there is choice.
  10. Here's a thread on LAVA years ago with some VIs to get a list of what groups the user is in. In the past I've had a couple of groups for various features of the software. An admin would assign what user can do what features, and then in my software I'd just query the users access and enable things based on that. I also used DSC years ago and it was fine, but I'd prefer Windows security since group policy can dictate things like passwords expiring, and password rules.
  11. Dan I think you might be misunderstanding OP. NI allows you to recertify by attending and participating in NI event. If you get 50 points, you get to renew your CLA, or CLD without having to retake a test. Attending a user group is 5 points, presenting is 10. I still have time, but yeah I'm also going to be struggling to get enough points when needed. I'm either renewing by points, or not renewing at all. If there are any more online user groups taking place it would be nice to know about them so I can attend. I've been slacking for sure.
  12. SystemLink Enterprise discussion moved to here.
  13. Yeah I'm concerned about this too. I have about a year and a half so I'm not screwed yet, but I'm going to have to focus to make sure I get there. I plan on going to NI Week/Connect next year, and doing the beta this year. This on top of attending and presenting at user groups should be enough. Previous years I renewed by points without even trying.
  14. This is a neat feature, but I feel like it would have been more beneficial had it came out 10 years ago or so. We've struggled with multiple versions of LabVIEW and drivers on a single OS, so now many developers will use VMs or Docker to sandbox a project to only have one version of LabVIEW, and the right version of the tools it uses. I feel like we've all gravitated to this due to the issues that come up with trying to manager version interoperability. I do still have a few versions of LabVIEW installed on my main machine. But if I'm ever building a binary I make sure and do it in the right VM for the project, so an older project doesn't now suddenly rely on the newest version of some dependent tool.
  15. Congrats, and I hope you find your new work rewarding, and stimulating. Thanks for all your help to the NI community, and LabVIEW in general.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.