none
Version Resource in GUI anzeigen RRS feed

  • Frage

  • Hi,

       ich habe ein Project C++ in VS 2010 und habe dem Project eine Version Resource hinzugefügt. Hauptsächlich wegen den Assembly Infos und auch aus anderen gründen.

    Ich habe es aber bis jetzt noch nicht geschafft auf diese Resource in C++ zuzugreifen. Ich verwende Qt für meine Fenster und würde gerne in meiner Qt GUI die Version anzeigen.

    Gibt es einen Weg wie ich möglichst unkompliziert auf Infos von VS_VERSION_INFO zugreifen kann?

     

    danke im voraus 

    Mittwoch, 3. August 2011 15:06

Antworten

Alle Antworten

  • Hatten wir gerade erst hier:

    http://social.msdn.microsoft.com/Forums/de-DE/visualcplusde/thread/5b422f05-0a20-4a17-b162-fff9862b9c06


    Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de
    Donnerstag, 4. August 2011 06:24
    Moderator
  • Hi,

     

      danke für die Antwort. Aber all diese Lösungen lesen Assembly-Informationen aus Files. Da ist sicher auch eine Möglichkeit um an diese Informationen zu kommen aber nicht exact das was ich suche sondern eher ein work around den ich eher vermeiden möchte.

    Ist es nicht möglich auf eine im Project liegende Resource zugreifen zu können, muss ja nicht mal zur Laufzeit sein. Mir reicht sowas wie 

    #define VERSION_NR  <info aus ressource> (also einfach ein link für den preprocessor)

    wenn ich den in den Lösungen beschrieben Weg gehe muss ich die wie Version.lib etc verwenden und dass will nicht. Die Informationen sind ja da, wieso muss ich also die erst rein kompilieren und dann wieder rausholen und dabei files angreifen etc. 

     

    danke für die Hilfe

     

    lg P

     

    Donnerstag, 4. August 2011 10:45
  • Nein! Diese Versionen lesen auch die VERSION_INFO!
    Siehe GetFileVersionInfo / GetFileVersionInfoSize / VerQueryValue ...

    Ich verstehe nicht wie Du darauf kommst.
    Siehe auch:
    http://www.microsoft.com/msj/0498/c0498.aspx


    Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de
    Donnerstag, 4. August 2011 11:53
    Moderator
  • Ich verstehe nicht wie Du darauf kommst.


    Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de

    Die Daten sind ja zur Compile Zeit vorhanden und ich dachte, dass man die dann auch im code verwenden kann. Ist aber nicht so tragisch. Werd sie jetzt in der Laufzeit ermitteln. 

    Danke jedenfalls für die Infos und die Unterstützung hat mir sehr weitergeholfen.

    lg P.

    Donnerstag, 4. August 2011 13:11
  • Die Daten sind eben nicht zur Copile-Zeit vorhanden.
    Die Ressource-Daten werden von einem anderen Compiler bedienst als der C/C++ Compiler.
    Der Linker führt alles zusammen weiß aber auch keine Verbindung zwischen Ressource und Code Modulen herzustellen.

    Du musst zur Laufzeit darauf zugreifen...


    Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de
    Donnerstag, 4. August 2011 13:26
    Moderator