Will ProjectInfo be written into native storage?


Hi Jules,

I found JUCE uses some self-definted global variables in ProjectInfo namespace to achieve application relative information.

namespace ProjectInfo
    const char* const  projectName    = "Juce Demo";
    const char* const  versionString  = "1.0.0";
    const int          versionNumber  = 0x10000;

But on Windows and Mac, there’s platform native storage for these data. For example, on Windows we could use resouece file to define these data and embed them to the binary. On Mac, there’s a Info.plist as container.

My question is: is that possible for JUCE to write value defined in ProjectInfo to platform native storage?

What JUCE currently does might be a trade-off for all platforms (e.g. Linux or Android, which I’m not familiar). But I’m wondering if it’s part of your to-do list, or you prefer to keep the current way. Thanks!


Eh? Your question doesn’t seem to make much sense…

Those aren’t global variables, they’re constants, auto-generated by the introjucer which your app can use to find out about its name and version number. The introjucer also puts the same data into any relevant plists, etc when it generates them.


Hi Jules,

Many thanks for the reply!

As I said in another post, I’m working on a porting work to utilize JUCE in an existing application. So I’m just using JUCE as a library but need it to report the application’s information. The existing application has code to extract project information from binary resource or PLIST file depending on if it’s running on Windows or Mac. I want to take JUCE as another “platform” and report the same information.

Anyway, I think what I could find JUCE platform specific code in “introjucer” and work out my own cross-platform part.