04-06-2016 02:08 PM
I work somewhere you cant transfer binary files from one machine to another, only text files. Is there a utility somewhere that will convert the native binary vi file to text (like xml) or something and back again? Preferrably in perl or python or even c source code.
Thanks
04-06-2016 02:10 PM - edited 04-06-2016 02:11 PM
The trick I have done is just change the extension to a txt file. The will fool most of the blockers (at least most that I have ran into). And then obviously change the extension back to vi on the other end.
04-06-2016 02:32 PM - edited 04-06-2016 02:37 PM
If changing the extension like Crosrulz said does not work, back in the 90's people used to post binaries (and porn) on Usenet by UUencoding them.
UUencoding encodes binaries into ASCII
https://en.wikipedia.org/wiki/Uuencoding
Granted all the good Usenet news readers had UUencode/decode built in, but I am sure there are still UU encoder/decoders out there.
04-07-2016 02:08 AM
By text I meant something readable (like xml.) The native format is unreadable (lots of oddball characters.)
04-07-2016 04:52 AM - edited 04-07-2016 04:53 AM
You could simply write something yourself...
04-07-2016 07:16 AM
Can you send pictures? You could create Snippets (though that probably leaves off some "important stuff", but at least the code gets through) and it is a Viewable PNG (pretty harmless). Alternatively, are Zip files allowed?
Bob Schor
04-07-2016 08:45 AM - edited 04-07-2016 08:46 AM
Be aware that if this facility is restricting file types as a measure of security - which is highly likely - if they catch you doing this, there could be consequences, even legal ones, as you are willingly circumventing their security measures.
04-07-2016 09:13 AM - edited 04-07-2016 09:23 AM
@apchar_ wrote:By text I meant something readable (like xml.) The native format is unreadable (lots of oddball characters.)
So you want to be able to read it like the source code of your VI? That's just not going to happen.
But here is what a UUencoded VI looks like.
begin 644 Arts_FastChgCuttoff.vi
M4E-20PT*``-,5DE.3$)65P``2X@```9K````(```2V@```"0%0"````````@
M````````!``#`#P````?0(`"``````$``0`"_____P```````````````++?
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
I had to cut it short due to post size limitation of the board.
04-07-2016 11:09 AM
If you want to turn a file into text, you can do that, if you want to turn a binary file into text, and have it make sense you aren't be able. LabVIEW VIs contain lots of information that isn't translatable to text. The VI file might contain the binary compiled code, how should that look as text? How should the icon be represented as text? That being said some have found very experimental functionality in LabVIEW today for writing a VI as XML. It is so experimental I can clearly say it is not what you should use in this situation.
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
16 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord
03-04-2022 12:37 PM
I would also like to see a utility like this.
The purpose would be to store VIs in a way that could be checked into source control, and meaningfully/easily checked for differences, etc.
I imagine something that basically just stores the location of every wire, every VI call, all controls and indicators, etc. Storing it in an XML format file would be fine.
Then, when you want to work on the project, you check out the text files, run the utility to re-build all the VIs exactly as they were when checked in, and load the project in LabVIEW.