Versions of our projects
Previous topic  First topic  Next topic

Marinas-IDE maintains a counter with the Version, Release and Build of our project automatically. The same can be seen in the Sources tab.
Marinas-IDE mantiene un contador con la Version, el Release y el Build de nuestro proyecto en forma automática. El mismo se puede apreciar en la pestaña Sources.

With each successful compilation (Warning included), automatically increases the counter of the Build.
Con cada compilación exitosa (Warning incluido), se incrementa automaticamente el contador del Build.

When Build reaches to 10000 , it is incremented by 1 Release and settings the Build to 0000.
When the Release reaches 100 Version increases by 1 and Release are set to 00 and build to 0000.
When Version reaches 100 all counters are set to 0.

Cuando el Build llega a 10000 se incrementa en 1 el Release y se setea en 0000 el Build.
Cuando el Release llega a 100 se incrementa en 1 la Versión y se setea en 00 el Release y en 0000 el Build.
Cuando la Versión llega a 100 se setean en 0 todos los contadores.

These values can also be condigured by hand using the Set button located to the left of the counters.
Estos valores tambien pueden ser seteados en forma manual mediante el botón Set que se encuentra a la izquierda de los contadores.

When Marinas-IDE compiles our application will automatically passes a string with the version of our project.
Cuando Marinas-IDE compila nuestra aplicacion le traspasa automaticamente un string con la version de nuestro Proyecto.

This string is contained in the constant __PRJ_VERSION__ and can be accessed like any other constant like the __DATE__ and __TIME__ compilation.
Dicho string esta contenido en la constante __PRJ_VERSION__ y se puede acceder como cualquier otra constante al igual que el __DATE__ y __TIME__ de compilacion.

The string format is:
El formato del string es:




  • VV is the version
  • RR is the release
  • BBBB is the build
  • .

    For example, if __PRJ_VERSION__ contains "03090011" means:

    Por ejemplo: si __PRJ_VERSION__ contiene "03090011" significa:

    Version "03"
    Release "09"
    Build "0011"

    Example of use:

    Ejemplo de uso:

    #include ""

    Function main()
    mg_msgInfo( "Proyect Version: " + __PRJ_VERSION__ )
    Return .T.

    This constant may be different for each compiled source as Marinas-IDE performs incremental compilation, so it does not compile all sources at the same time unless you force a full compilation of the project. A good idea to unify this data would be to create a user function that resides in a module with FORCERECOMP (see: How to force the recompilation of modules automatically? for more information), so that from anywhere in our program is invoked this function that returns the version of Project last compilation.
    Esta constante podría ser diferente en cada source compilado ya que Marinas-IDE realiza compilación incremental, o sea que no compila todos los fuentes al mismo tiempo salvo que se fuerce una compilación full del proyecto. Una buena idea para unificar este dato sería crear una funcion de usuario que resida en un módulo con FORCERECOMP (ver: ¿Como forzar automaticamente la recompilacion de modulos? para mas informacion), de modo que desde cualquier lugar de nuestro programa se invoque dicha funcion que retornará la version de Proyecto de la ultima compilación.

    Example: Define the following function in a source with FORCERECOMP and only need that function to accelerate compilation
    Por Ejemplo: Definir la siguiente funcion en un source con FORCERECOMP y que solo tenga dicha funcion para acelerar su compilacion

    Function PRJ_Version()
    Return __PRJ_VERSION__

    Since that time we may use the following syntax from anywhere in our application and will always return the latest version of the compilation, because having forced recompilation, this module is always recompiled:
    A partir de ese momento podriamos usar la siguiente sintaxis desde cualquier lugar de nuestra aplicación y siempre devolverá la version de la ultima compilación, ya que por tener forzada la recompilación, este módulo siempre es recompilado:

    mg_msgInfo( "Proyect Version: " + Prj_Version() )

    Marinas-GUI Version 03.06 and
    Marinas-IDE Version 05.06 and
    LEX Files Version 02.06

    last update: April 27

    A Harbour/QT framework to make multiplatform programs

    (©) Copyright 2009-2017 by Fernando Santolin (aka CarozoDeQuilmes)

    2009-2017 Beta tester and full English translator: Bruno Luciani

    2014-2015 Final English corrector: David Worboys


    Previous topic  First topic  Next topic