Technically, LV can call multiple instances of a reentrant VI,
but it currently doesn't allow Running multiple ones as this
requires duplication of VI pieces other than the dataspace.
To get multiple instances of a panel, you have two options.
You can duplicate the top-level VI on disk to a temp directory
with a unique name and open the new file instance. Again, it isn't
necessary to duplicate any subVIs, only the top-level VI.
The second approach is to make the multi-instance panel into
a template VI, a .vit file. Then open the file each time from
the template.
Greg McKaskle
Rudolf Potucek wrote:
>
> Oops ... I just found out that LabVIEW is actually too stupid to call two
> SEPARATE instances of the same VI ... that explains it, I guess.
>
> Still, is
there a way to call an independent copy of a VI containinng
> front panel controls (i.e. the regular 'reentrant' approach won't work)?
> After all it DOES appear silly to make a physical copy of a VI just so I
> can run two of them ...
>
> Rudolf
>
> Rudolf Potucek (potucek@acs1.acs.ucalgary.ca)
> wrote:
> $ I am trying to run sub-VIs from a control center in such a fashion that
> $ the control center does all the global data initialization etc. and then
> $ allows the user to call sub-VIs via menu bar.
>
> $ So far so good ... however I would like to be able to call multiple
> $ instances of the same sub-VI (a new one each time the menu entry is
> $ selected). The problem is that the calling loop will stall until the
> $ called VI terminates. Is there any decent way around the problem that
> $ does not require to hardwire the maximum number of instances?
>
> $ In case it makes a difference, I am using LabVIEW 5.1.1.
>
> $ TIA,
>
> $ Rudolf