Jump to content

Ton Plomp

Members
  • Posts

    1,991
  • Joined

  • Last visited

  • Days Won

    38

Posts posted by Ton Plomp

  1. Template at edit time. It would be a posible way to copy/rename a VI when I start a new app.

    I want to build a complex template, which includes many functions and layout settings.

    Thats the reason that I want to outsource the code into a XControl. All the wireing and coding would be hidden, and other programmers will have

    a easy template for building apps.

    Maybe some sub-panels with VI's where the BD is removed?

    Or use a good framework with sub-vis where the more advanced stuff is done.

    Ton

  2. Hi,

    I've project for subVI library in user.lib directory which is written with LabVIEW 8.0. I'd like to keep LabVIEW 8.0 as the main development environment for this toolkit but I'd also like to use the toolkit with LabVIEW 8.2. The problem I have is that if I just copy all the project files to user.lib directory under LabVIEW 8.2 directory and recomplie VIs, the recompilation also recompiles some files under my LabVIEW 8.0 user.lib and the project won't work under LabVIEW 8.0 any more.

    My project contains several libraries (lvlib), several hundreds of VIs within these libraries, some tools for internal use outside these libraries, some DLLs, multiple mnu files, help files, html files, build specifications etc. All of the files are managed using LabVIEW project.

    Any help how to properly move a project under user.lib to newer LabVIEW version...

    -jimi-

    What you should do is temperarily remove the 8.0 folder to a place where LV 8.2 can't find the VI's, this will force 8.2 to look into it's own 8.2 user.lib. After that you should be able to copy the 8.0 folder back. But better safe than sorry make a backup of both folder's.

    A good way to test this is making the 8.0 folder read only. 8.2 will than bother you with saving of several items.

    Ton

  3. Should I be concerned when I mass compile a toolkit in LV 8.2 (the internet toolkit BTW), and get this message (among others)?

    This means (A) that nothing has been done to the toolkit to update it for 8.2, and (B) that there is unneeded code inside VIs in the toolkit.

    Hmmmmm :(

    Jaegen

    (A) is correct (B) isn't

    A:

    It only means that the G-Code was correct and still is correct (you don't rewrite your VI's from scratch I think with a new LV environment?), the down side is that the internet server is way old

    B:

    LV 8.x has the ability to compile VI's with errors. This was done by ignoring cases which are controlled by a BD constant, the cases that will never executed are removed from the compiled code (an enhancement of the diagram disable structure)

    A problem arose here. What if you had some VI's in a not executed state which you wanted to call dynamically (thus by name), in LV 7 and prior these would be loaded into memory and could be called by name. Now in LV 8 the BD constant is replaced by an invisible FP control, making the compiler think that the case could be executed.

    So to maintain compatibility with the prior version the code is changed.

    Ton

  4. The only way I know to achieve something somewhat similar is to switch to the Palette View "Category (Standard)" and then whichever palette is top most (this can be changed as seen below) will show up first.

    post-121-1158302641.png?width=400

    PJM

    Now in LV 8.2 you get a message about the saving of the root.mnu, it looks like it is moved from menus\default\root.mnu to personal\LV data\8.2\pallettes\menus\default\root.mnu

    I'm not sure what is happening but maybe you can create a new root.mnu in you personal folder which has everything you want?

    Ton

    post-2399-1158309694.png?width=400

  5. Hello Michael,

    I've done something the other way around, use the project to structure my hard-drive, the only thing is that it is not fool proof (VI's missing references etc....)

    If I remember I'll try to dig the code monday and post it.

    You can use a .NET event that is triggered when some items are added to a folder (their was a discussion on forums.ni.com on this subject some weeks ago)

    Ton

  6. >> range=[]:1	Warning: Colon operands must be real scalars.	range =		Empty matrix: 1-by-0

    Apparently, it prints a warning to the console but otherwise continues execution with a type of empty matrix as the range result.

    I'm not sure if that is the result I want (a bug being ignored). But I think NI will improve the mathscript node step by step and eventually will cover these things.

    Ton

  7. Hello guys,

    I have many computers acquiring datas, and I need to read and write these datas from a single ethernet hard drive (LaCie 500 GB, FAT32).

    On a Mac G5 with LV8, once the ethernet drive is mounted in the finder, I try to read a simple config (or text or binary...) file in labview, but I get an open/create/replace file code 10 error.

    I've got the same behavior with a file located on a PC hard drive (mounted in the Finder too), but I don't have any problem with a file on a Mac hard drive.

    It works when I try the same from a PC with LV8. For me, all this tells it's related to smb/cifs stuffs...

    I tried manual path entries like : "file://Volumes/GRESSENSGRP;U676-BACKUP/Datas/file.txt", etc... but nothing works. I didn't find the same problem in the forums...

    Any idea ?

    thanks

    Boris

    First I have no experience with Mac/finder.

    Error 10 is a duplicate path error, I've only seen these when copying a file into it's own, or creating an existing folder. Maybe it is an access rights thing. A quick test might be a VI with only an open file vi, this will launch a browser so you can open the file, if this still give an error (and you can open the file with another application) it might be a bug.

    Ton

  8. array of size 2147483647

    Hi Stan,

    your VI doesn't open well on my machine but I think this is totally normal, you are creating an array of 2 G datapoints. With just normal U16 datatype you need a memory of 4 GB, for standard floating points (DBL) you need 16 GB memoryspace (timestamp 32 GB). The reason LV stops and not creates a 'normal' error is because the memory managemend is violated, it could be that LV just executes and want to allocate the memory, your OS is handling that (and can create extra memory on disk.

    What if LV continued and you didn't check for an error (even more the standard way to initiliaze an array has no error output then the function of your program was totally unreliable.

    Ton

  9. I want want to check out the project file...i noticed that if i modify the project by creating a new VI, it ask if i want to check out the projetc...so i believe my problem is solved, even if my question remains unanswered...

    You have to select the

    Project:******.lvproj

    line, this will give you the reaction you want!

    Ton

  10. In my case it's a security issue (exe can be executed by the file dialog), but after some test even when you remove the *.* from the file pattern, you can type it by your self and got all the file listed :(

    Hi Dany,

    in my opinion a user who knows how to execute an executable from the file browser knows how to run an executable in another way. Or are you disabling the windows key, ctrl-alt-del, ctrl-esc? Might it be possible to create a user account with almost no rights just to run your program? Maybe you can use the .net browser and run that one as a low-righted user?

    Ton

  11. Are you calling the exe using System Exec or are you calling the top level directly?

    Is this what you're doing? If not, it might help you.

    Hi All,

    I'm working with AartJan on this issue and ran into a rather strange item.

    Let me describe what I do:

    -I set the INI settings of the LabVIEW executable I want to connect to

    -I launch the exe

    -I try to connect to the VI server inside the exe (this will fail sometimes with error 68 connection refused)

    -I load a normal VI (not in the exe) into the executable application instance

    In the VI loaded via VI server I try to determine which application instance I'm in. I do this with the following code

    queuclientvi4.th.png

    properties:

    App.Name

    App.Kind

    The VI does not return a name (or error), but the app.kind is invalid. I have never seen this before but the same code inside the executable runs normal, and the development VI that loads the app. instance and this vi reports the correct items...

    Does anyone have seen this behaviour (app.kind=invalid)?

    Ton

  12. I'm just curious to why you are uninstalling 8.0. The ability to have several LV versions and change between them at will, is probably one of the really strong things about LV. I have 6.1, 7.0, 7.1.1, 8.0.1 and 8.2 on the same PC.

    My private laptop is kind of limited of diskspace (and at work I have complete set of 7.0 throught 8.2)

    7.1 is very usefull when you are using scripting.

    Ton

  13. I think i've found a good way to deal with the afterprobe.

    I had some code that was buggy, but it was too big to 'highlight' the code. Put a breakpoint before execution of this part and one after. At hitting the first breakpoint started 'afterprobing' and examined the code at the second breakpoint, remove afterprobe and continue as normal. In this way I was able to get a 'screenshot' of some code and how it works without filling my screen with tens of probes or creating an extensive logfile.

    Ton

  14. Is there an advantage to creating and using subvi's rather than wiring your entire code into one VI.

    Hi Packstove,

    their is no speed advantage, calling a subvi will cause some overhead (6 usec if I recall) However it will give you the option to do something programmers like:

    more with less work!

    You can use the same code over and over again. And problems are easier to track (if done right).

    Ton

  15. Unfortunately this is typical behavior of a file dialog box in Windows.

    Labview appears to only access the standard file dialog. When using things

    such as the Visual Studio environments, the "All Files" can be removed as you

    have access to more lower level functions.

    I think there is a way to bypass the windows dialog. There is as far as I know an option to use a crossplatform file-dialog, I suppose this one don't have that option. Another thing would be looking for a .NET class that will handle the case.

    Unfortunately I can't test it right now because I'm uninstalling 8.0 and installing 8.2

    [Edit:]Found it, it is an option in Tools>Options>Envirenment>Use native File dialogs[/edit]

    Ton

×
×
  • Create New...

Important Information

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