LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Conflict between 2 projects

Solved!
Go to solution

Hello,

 

I have a file called driver.dll in project A.

I have another file called the same driver.dll in project B, but driver.dll in project A is not the same than driver.dll in project B.

 

My 2 projects were working correctly but I had to made some modifications inside driver.dll in project B.

And the main vi of project B uses the sub vi inside driver.dll from project B.

 

"Project B" works then as I want after modifications however "Project A" doesn't work anymore because of the modifications I have done in driver.dll inside project B.

The main vi of project A use the sub vi inside driver.dll from project B, not anymore from driver.dll inside project A.

 

Why ? I guess it is because I have created new sub vi in driver.dll from projectB, and as projectA doesn't see where the new sub vi are, projectA redirects toward in driver.dll from projectB.

 

See the picture embedded.

 

My question is how can I avoid conflicts to have back :

- driver.dll from project A on project A

- driver.dll from project B on project B

 

Thanks for any help,

Fabien

 

0 Kudos
Message 1 of 7
(2,720 Views)

@fabien-g wrote:

My question is how can I avoid conflicts to have back :

- driver.dll from project A on project A

- driver.dll from project B on project B


Make sure you never open a VI from project A while you are in project B.  Once that cross-linking has happened, about the only way to get it back is to move Project B to somewhere else on your harddrive, open Project A and fix any missing dependencies (ie links that were to Project B), and then put project B back.  Make sure you take care of the other way as well (move A, fix B, restore A).


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
Message 2 of 7
(2,689 Views)

Rename project B's folder, open project A and relink to the right DLL. Save and never open both projects at once, basically. (You can e.g. lower risk of cross linking by opening 2 LV instances instead of 2 projects in 1 LV if you need both (this can be done vis a subst-command so you have 2 LV 'paths')

/Y

G# - Award winning reference based OOP for LV, for free! - Qestit VIPM GitHub

Qestit Systems
Certified-LabVIEW-Developer
0 Kudos
Message 3 of 7
(2,685 Views)

@Yamaeda wrote:

(You can e.g. lower risk of cross linking by opening 2 LV instances instead of 2 projects in 1 LV if you need both (this can be done vis a subst-command so you have 2 LV 'paths')


A better way would be to have a VM for each project.  But that is another story...


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
Message 4 of 7
(2,682 Views)
Solution
Accepted by topic author fabien-g

I am certain I never open both project at the same time.

And most surprisingly is that, I restaured project A from an old save copy that were working perfectly and I renamed as project C and it didn't work anymore.

 

I had to solve my problem by redirecting manually each confusing link. It teared my hair out.

 

Thanks for your response,

Fabien

0 Kudos
Message 5 of 7
(2,662 Views)

@crossrulz wrote:
A better way would be to have a VM for each project.  But that is another story...

True. It costs some performance though.

/Y

G# - Award winning reference based OOP for LV, for free! - Qestit VIPM GitHub

Qestit Systems
Certified-LabVIEW-Developer
0 Kudos
Message 6 of 7
(2,644 Views)

Yes exactly.

Split the hard drive and use a unique project for each partition is a solution that works perfectly.

I finally use that solution.

 

Thanks,

Fabien

0 Kudos
Message 7 of 7
(2,614 Views)