LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Deconstructing an LabVIEW Application - uncompressed access to files

Solved!
Go to solution

Back in the early days one could change the file extension of an EXE to say LLB or ZIP and that was great; I used to drag drop VI into the zip file and saved tons of time.  Then at some point that format changed.

 

Today I have an EXE from a customer.  The company that had the source code went out of business suddenly.

I have an older version of the souce code and still working on bringing it to LV2020 from LV2010 it is missing so much.

 

The EXE build is LV2010.  I know the name of the file I want to modify.  It is a custom control (.ctl) that they hard coded some model numbers into that I want to modify.

 

I would like to either replace the file (.ctl) or modify the clear text existing model number text with some method.  At this point I would just change the numbers and have multiple EXE's for old and new product models.

 

If you cannot post how on the forum please message me.

 

 

0 Kudos
Message 1 of 6
(2,619 Views)

This thread has lots of information. You will need to go through it all.

 

https://lavag.org/topic/21233-exe-back-to-buildable-project/

 

mcduff

 

PS I have never done this, beyond my skills, but it is interesting.

Message 2 of 6
(2,612 Views)

Thanks I'll check it out!

0 Kudos
Message 3 of 6
(2,570 Views)

Be sure to watch the YouTube video embedded; the author goes through an example. I watched it a while ago, it's pretty neat, not Mars Landing neat, but still neat. 🙂

 

mcduff

0 Kudos
Message 4 of 6
(2,560 Views)

Thanks.

LabVIEW - Reverse engineering EXE back to project

 
Message 5 of 6
(2,480 Views)
Solution
Accepted by topic author Carey3255

The code at the below link allowed me to extract (but not reveal source code) and modify replace 3 pieces of code (one .ctl (modified) and two .vi's (had to re-relink to TYPEDEF because the previous installed had disconnected) which the client had old source code for but had no changes.

 

https://github.com/mefistotelis/pylabview

 

Here is a more Simplified procedure:

 

1.) Rename the .EXE to .EXE.ZIP

2.) Open the .EXE.ZIP with the 7ZIP application (regular windows unzip wont open it!)

3.) Find the Largest File - "2" in my case.

4.) Drag/Drop this "2" file into the pylabview folder

5.) Using Git-Bash (Git-2.30.1-64-bit.exe) after installing python (python-3.9.2-amd64.exe) and extracting pylabview execute the script for the file you Drag/Dropped in my case "2"

 

$ python ./readRSRC.py -vv -x -i 2

 

6.) Rename the 2_LVzp.bin to 2_LVzp.bin.zip the compressed file should open (even in regular windows unzip)

7.) Make a new LabVIEW project.

8.) In my case:  I did not add all the files because the cross-linking was horrible.  I only added the top-level vi and any VI's that are called through VI server that the LV application builder won't know how to add.

 

This was for a client who had lost the newest version of source code and I needed to add new production line models in a hurry (that were previously hard coded in a TYPEDEF - that will be changed to a DB call as I "build back better").

 

Many thanks to those that built the pylabview code and those pointing me in the right direction.

 

Enjoy!

 

Message 6 of 6
(2,429 Views)