LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

how to find source files for an exe?

I have an exe that has eben built by someone else. How do I know which files are being used as source files?
 
0 Kudos
Message 1 of 11
(7,445 Views)
You can't. When you build a LV executable there are no "links" left back to the source code. Is the developer still around who created it?

Mike...

Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
0 Kudos
Message 2 of 11
(7,439 Views)

No. He has quit.

I cannot figure out exactly which files he has used to make the exe.

0 Kudos
Message 3 of 11
(7,435 Views)

Mike

One more trivial question. Once the exe is built, are all the required files on the exe? What I mean is that, the source path which we specify is only to "build" the application, correct? When we run the exe, the application does not access the source files through the source path specified, correct?

I am in a bit of a jam here since he has quit. Thanks for your help.

0 Kudos
Message 4 of 11
(7,434 Views)
Well, that can be a long story... It all depends on how he wrote the application. Technically an executable doesn't need to access the source files anymore, but it is possible to write an application that expects parts of the code to exist in external libraries. In addition inexperienced developers will often put setup information in external files that are necessary for operation. Did this guy leave any documentation behind at all?

What sort of application is it? Is it a critical piece of software? Do you need to be able to modify it?

Mike...

Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
0 Kudos
Message 5 of 11
(7,429 Views)
Depending on what version of LabVIEW you are using, you can find out the names of all source files.  In versions 7.1 and earlier, you can rename the EXE to LLB and LabVIEW will recognize the EXE as an LLB, and you can browse the VIs in the EXE.  You may not be able to open them, as most will have their front panels removed, but you will at least be able to see the list of all the files (but no paths to the original source).  On newer versions of LabVIEW, it appears that this no longer works.

Also don't forget that if the person built the EXE with a small EXE and a supportting llb, there may be a data.llb (default name, the user could rename it) that will have almost all of the VIs in it (again, you may not be able to open them, but would be able to get a list).

Have you not been able to find a .bld file (for v7.1 and earlier) or a .lvproj (8.0 and later) file?  This would be the definition of the EXE build and will give you a list of everything with paths.

Message Edited by Matthew Kelton on 10-16-2007 12:18 AM

0 Kudos
Message 6 of 11
(7,421 Views)
hi there
 
in addition to the tipps matthew gave you you can open the exe with a text editor in ASCII mode and simply search for ".vi", ".ctl" etc.
Best regards
chris

CL(A)Dly bending G-Force with LabVIEW

famous last words: "oh my god, it is full of stars!"
0 Kudos
Message 7 of 11
(7,401 Views)
You can however still use this trick.

Make a VI in the same version the exe was build in. This VI has a property
node All VI's in Memory, and it's result is put on the screen. Run the exe,
and from the command line start the vi with the exe, like "c:\app.exe
"c:\allvis.vi". The vi will be loaded in the exe, and you'll get all vi's it
uses. It might be easier to convert the array to a string, so you can copy
paste it more easilly.

Regards,

Wiebe.


Message 8 of 11
(7,383 Views)
be aware that this trick only shows those VIs which are currently in memory. You will not see any VIs (and their Sub-VIs) which are loaded dynamically at another time.
Best regards
chris

CL(A)Dly bending G-Force with LabVIEW

famous last words: "oh my god, it is full of stars!"
0 Kudos
Message 9 of 11
(7,378 Views)
If the employee that quit actually left the source files intact, then you could do a search for *.lvproj (LabVIEW 8.x) or *.bld. LabVIEW 8.x requires you to create a project and save it before creating an executable. The project file should have all of the information you need. Prior to 8.x, a .bld file defined the source files needed for an exe. If the employee did all of the development on a local pc, then the search should be pretty simple.
0 Kudos
Message 10 of 11
(7,370 Views)