Jump to content

i2dx

Members
  • Posts

    683
  • Joined

  • Last visited

  • Days Won

    2

Posts posted by i2dx

  1. be carefull !

    Error=TRUE does not mean no execution in all cases.

    it is true for the most system VIs,

    but surely a self written sub-vi will execute when the error in = ERROR and handle the error in the way you programmed it, which can mean, if there is no error handling the next system VI (e.g. the yellow ones) will not execute at all ...

    take a look at the example and you will hopefully see what i mean ...

    cheerio

    cb

    Download File:post-885-1119734181.zip

  2. sure,

    take a look at the cont. AI and the cont. AO examples.

    copy both block diagrams into one vi, then you have 2 paralell while-loops (i guess) which you maybe want do stop via an occurence (?) and you have a simultanous AI/AO vi ...

    cheers,

    CB

  3. - If it runs correctly and the block diagram wasn't locked, could it be edited?

    - If it could be edited without a scripting license then that would mean you don't have to have a scripting license to script?  :blink: How does that work??

    - What about previously scripted code in version 7.1... will it be blocked? 

    - What if the world ends tomorrow???

    Ok anyway... just a few things that make my head go into a no-wait do-loop  :wacko:

    5099[/snapback]

    the same question is:

    you can buy a toolset from NI which helps you to develop some things faster ...

    you can save a complete VI hierarchy and include all VI'S from the VI-Lib (which means, including the toolset-vis, too) and distribute this to a colleague who has not bought the toolset ...

    is this a breach of the license agreement? :wacko:

    i think VI-Scripting will be available as a toolset ... so ni can make some extra $$$

  4. :headbang: Does somebody knows how can I start again a Timed Loop ones it has been stoped with the "Stop Timed Loop.vi" function? (LabVIEW 7.1)

    5047[/snapback]

    put a while-loop around it ...

  5. as my labview teacher said: if your block diagram extend the size of your screen, it's not well structured.

    i bought a 2048 x 1536 display ;-)

    the german translation of labview is sometimes really ugly. that's why i use the english version ...

    cheers,

    cb

  6. Do these ActiveX based tools port well for distribution on different Windows/ADO versions? I've downloaded LabSQL and the VIs were broken, I had to reselect the ActiveX class on controls to repair them. I anticipate a nightmare if I use them in a distributed application.

    4859[/snapback]

    i have to admit, i don't know.

    i have tested my toolkit on Windows XP and Windows 2k and it worked well ...

    cheerio

    CB

    BTW: an Update can be found here: ADO Toolkit

  7. Hi all

    I would like to Write/Read data between two exe application.

    I can use Notifier operation to Write/Read data between two Vi, but I can't use it after I build *.exe.

    Dose anybody knows how to do this or any example?

    Thanks in advance.

    4749[/snapback]

    every *.exe is running in its own runtime environment, with its own memory, etc ...

    if you are experienced with windows programming you can use the windows messaging system via the win-API or you can use TIP/IP or UDP ...

    cheers

    cb

  8. this is no strange error, its the typical former "bluescreen", now "Read-Exception" Windows error, which happens, if you want to read/write to a memory location which is protected by the OS.

    i try to translate:

    The instruction in "0x123456" referenced memory at "0x56789". The memory could not be "read".

    This happens typically im C++ e.g. by trying to read a private variable by a pointer.

    Mybe you have open activeX references or stuff like this in your LV programm ?

    best regards,

    CB

  9. I have a VI which is an "action engine", i.e., it contains LV2 style global variables in uninitialized shift registers. The VI works fine unless I decide to load it dynamically using the VI server. Unfortunately it also dynamically unloads the VI when it finishes. Thus its memory is destroyed. Is there any way to load a vi with the VI server and keep it in memory when it is done? To make LV treat it as if it had been placed on a diagram as a regular sub-vi (called or not)?  I do notice that the VI server will call execute and return from my vi with everything working fine and retaining the global memory, if I also have the vi loaded statically as a sub vi somewhere.

    4697[/snapback]

    i do the following (e.g. when working with subpanels):

    in the calling vi i open references to the dynamically loaded vis and collect them into an array of vi-references.

    i call the dynamiv VIs via the "run vi" method, not via the "call by reference node". they terminate themselfes or are terminated by an occurrence.

    at the "run vi" method i choose "auto dispose refnums" = FALSE, because i close the refnums at the end of the calling vi.

    that works fine 4 me !?

    best regards,

    cb

  10. Hi everybody,

    have you ever set the frontpanel properties of a sub-vi to "dialog", minimized it and started the main-vi ?

    then you know what i mean :oops: you have to kill LV, or you use some other dirty tricks.

    with this little tool i wrote, you can avoid this, because you "prepare" the frontpanel settings, but actually do not set them, until you want to release your project or compile it.

    Installation:

    extract the file "FrontPanelTool_en.zip" and copy the FrontPanelTool_en.llb to your %labview%/project folder.

    the tool is used by selecting "Frontpanel Tool ..." from the "Tools" menu in LabVIEW. The frontmost VI is automatically selected, but you can select your own "main.vi"

    The tool searches for a special comment in all VIs through the complete VI hierarchy and in every VI the "special comment" is found the frontpanel properties are set as specified in the comment.

    try it with the "example" vi to see how it works

    ah, by the way: the code is password protected ... ;)

    please review and discuss,

    best regards,

    cb

    Download File:post-885-1114528429.zip

    Download File:post-885-1114528431.zip

  11. Hi erverybody,

    i have written a database toolkit, because the NI Database Connectivity Toolset is to expensive (4 what it does) and i allready had some trouble with it. the ones who know the NI database connectivity toolset may recognise some similarity ;-)

    I was an user of the NI DBCTK when i was at NI, but i am not willing to pay 1000 Euros for a piece of software, which is in my humble oppition just a bulky wrapper arround some ActiveX Methods. Its not worth the price in my eyes. And furthermore i am not convinced that the usage of GOOP shown in NI DBCTK is a programmers masterpiece of object oriented programming in G.

    it is now in beta stadium and i would like to ask you, if you could review and comment my work. it's not complete, there are functions for SQL-Server, mySQL, Oracle and dokumentation missing, but it is working well with Access and Excel. I promise to implement the missing functions as soon as i need them ;-)

    the toolkit is intended to be free software and is published under the GPL. If the guys from OpenG think its useful, they can have it ...

    1.

    Installation:

    extract the file: "ADO-Tool.zip" in your %labview%/vi.lib/addons folder. There will be a new folder "ADO-Tool". There is no installation routine or something like that. If you want to get rid of it, just delete the ADO-Tool folder and nothing will be left.

    2. take a look at the example

    extract the file "ado toolkit example.zip" to a folder and open the "access example.vi"

    3. please tell me what you think about it.

    Attention: maybe you have to download and install the latest MDAC-Drivers from microsoft.com ...

    best regards,

    cb

    Download File:post-885-1114525354.zip

    Download File:post-885-1114525355.zip

  12. Where I can find differential calculus examples ?

    4631[/snapback]

    differential calculus on a computer means:

    you have to divide the increment of the y-axis by the increment of the x-axis.

    if you are searching for a "differential equation solver" or something that does symbolic calculus you will not find anything usefull in LabVIEW. You can try to use a Matlab node, if you have a copy.

    best regards

    cb

    Download File:post-885-1114507357.zip

  13. :thumbup: What a nice response. Congratulation to each of you who helped!

    As many of us suspected, the activation won't disappear, but at least seems to leave us some "free air" to work. Software activation is soooo popular that we will see more and more software be tied to it :thumbdown: .

    Since I haven't any other sw product from NI that needs activation, could someone explain me what it involves? Is it something like winXP?

    Didier

    4640[/snapback]

    yes, it's like xp.

    you need a "code" to activate your product via internet in the license manager.

    take a look at CVI 7.1 and you see how it works. According to my (more or less reliable) information NI will implement an activate mechanism in LV8.

    i am not glad about this "feature" but i can live with it, but i am glad NI has changed the license agreement !

  14. Hi to all, I juz started working on Labview recently due to work commitment, but was kinda of being throw to figure it myself. :wacko:   Though i can quite understand how a program worked, but i juz couldn't write one with a complex programme (previously program by someone else) lingering in my mind. :blink:  

    Anyone pls, do give me advice on how i should go abt starting off in Labview 7.1. Thanks... :lightbulb:

    4200[/snapback]

    if you want write complex programms, don't use LabVIEW Express ... ;)

    Express is made (IMHO) 4 "quick'n dirty' solutions in your Lab ...

    switch your functions palette to "advanced" and take a look at the functions they provide.

    there are some good beginners books, who are written 4 newbies and show you how to get used to labview and "think in labview". Maybe you want to visit the LV Basic Course ?

    i can only recommend german books, therefore my english speaking colleagues may help you out ?

    best regards

    cb

  15. Hi,

    a short one.

    I want to set a floating VI as the active VI. I wondering if it can be done with the property App.ActiveVI. I only found the read able version of it.

    Is the property App.ActiveVI write able and if how can i get or create it?

    thanks in advanced.

    Alex

    4146[/snapback]

    i have not tested this:

    what about the property "frontmost vi" ?

    ever tried to set a key focus on a control / indicator on the floating vi ?

    best regards

    cb

  16. Hi

    if it possible for you application leave the OPC-connection open, like the references of the serial communication. Have a look at other references. Sometimes memory is not released, even you close it.

    You can use the memory monitoring vi, to figure out which vi is creating the memory leak.

    You find it under examples->memmon.llb

    Ciao

    Alex

    4147[/snapback]

    in july 2004 i experienced a bug in the LV DataSocket Vis, which showed the same behavior (creating a memory leak) as you described. Furthermore my Programm was crashing when opening more then 7 Items on the OPC-Server simultaneously. I think the new DataSocket VIs in LV 7 / 7.1 are not as well programmed as they should be. The only chance to get rid of this was:

    remove all the DS-Vis and attach DS-Connections to Controls which i used as "local Variables", which worked.

    This was a very very ugly programming style and i hated this solution, but it was the only way to get the software running "properly". I don't know if NI has fixed this issues in the 7.1.1 Update.

    best regards

    cb

  17. You can make a simple password pop-up window by using the Prompt User For Input VI, it is an express VI on the Time & Dialog controls.  You can configure it to return a string to your VI, then compare it to the actual password. 

    You could use the File I/O VI's to make a password file, and read it into the VI before you prompt the user, so the password is not actually stored in the VI.

    4170[/snapback]

    maybe you want some encryption for your username/password files ?

    then you can use this very simple XOR-"Encryption", which makes the text at least "unreadable" 2 humans, but it will not withstand any brute force cracking ;-)

    best regards,

    cb

    Download File:post-885-1110525035.zip

  18. Hi Michael.

    what is a good way to pass data then? I'm still really new to Labview and always looking for new ways to work, providing it's within my capabilities!

    RE the event structure - I was trying to set it to react to the change in value of a boolean object on the front panel

    cheers :)

    4133[/snapback]

    the best way to exchange data between 2 parallel structures (e.g. while loops) is using queues.

×
×
  • Create New...

Important Information

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