Jump to content

Saverio

Members
  • Posts

    137
  • Joined

  • Last visited

  • Days Won

    4

Posts posted by Saverio

  1. Actually, that thread does answer the question. The fundamental issue is that the ActiveX calls are done in the UI thread. Once you take this into account, the results you are seeing are exactly what should be happening, and there's no mystery. If your ActiveX component doesn't have a user interface then you may be able to use an MTA model with a wrapper DLL that can be configured in terms of which thread to use per call.

  2. A VI in an executable doesn't have a special "tag" to indicate it's called dynamically, since any VI can be called dynamically, even if it happens to be on the block diagram of one VI that is in the executable - another VI may go ahead and call that subVI dynamically. A project build spec will have a list of VIs that are added to the build since they are called dynamically by the code, but this list also include support VIs that you always want to include in the executable, regardless of whether they're called dynamically or not. Thus, this list could be misleading.

    What are you trying to ultimately find out? Perhaps there's an alternate solution.

  3. Ummm... slight problem with example... the value for the item "Test123_*.* (doesn't work)" is actually defined as "Test_*.*". No files in the test directory match that pattern, irrespective of the List Folder function. If I place a string control on the front panel and enter a pattern of "Test123_*.*" then the resultant array is ["test123_1.txt", "test123_2.txt"].

  4. I guess there is no way to bypass these security concerns?

    Yes. Use a different operating system. :D

    The VISA example (http://imageshack.us...lpt1outalt.jpg/) produces an error on my PC. Not sure why...

    Did you ground the necessary pins? Pins 11 and 12. See here: http://digital.ni.co...6257206000551CB

    So, after all this do you still think this is easier than simply getting an off-the-shelf digital I/O module?

  5. A warning about those VIs: Vista and Windows 7 impose more strict security on direct access to hardware. If you want to manipulate the parallel port, use VISA. There's an example that ships with LabVIEW.

    That said, the likely reason is that the required DLL is not being copied to you application's data folder. This is not surprising, given that those VIs shouldn't be used in the first place. See here: http://digital.ni.com/public.nsf/allkb/496CD7613F331EA4862571E200633507

    • Like 2
  6. Why is 3,3v a problem?

    I didn't say it was a problem. I said it needed to be checked. You would need a different resistor value and what's considered "high" would be different.

    Chicken :lol: Seriously though. This is kindergarten stuff. But if you've never used a screwdriver as a chisel, then maybe it's better to just throw money at it. :D

    And when your motherboard gets damaged because you connected something improperly, or did not properly ground, or did not properly account for potential overvoltages or voltage spikes, then we'll see what's cheaper: buying a new computer or buying a cheap digital I/O module. :P

    P.S. I always use a screwdriver as a hammer. :D

  7. Then you can connect 5V LEDs directly or just short them to ground (if using as digital in).

    This would actually need to be checked. If a computer comes with a parallel port it's likely to be 3.3V, not 5V. I know the old Dells we still have in the lab are 3.3V parallel ports.

    In the end, it's probably better to go with an off-the-shelf cheap USB-based digital I/O module. There's tons of these on the market.

  8. The document you linked to does not imply that Type Cast is supposed to interpret a U8 integer as an ASCII character. It does no such thing. That's the first assumption you need to let go of. Because of the way Type Cast works you can use it to convert a U8 to an ASCII character. But that's only because the ASCII codes were originally based on single byte values. Second, the document that you linked to only applies to the "standard" ASCII set (i.e., to values less than 128). For values of 128 or greater you do not get the extended ASCII set. LabVIEW displays characters on string-based indicators using Multibyte Character Strings. You can read more here: https://decibel.ni.com/content/docs/DOC-10153

×
×
  • Create New...

Important Information

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