【问题标题】:How to get version of program in Vala?如何在 Vala 中获取程序版本?
【发布时间】:2012-12-24 08:12:33
【问题描述】:

我开始学习 Vala,只写了几行代码,我就遇到了第一个问题。这应该有点简单,但不知何故我在 Google 上找不到任何东西(“vala 版本号”或“vala 获取版本号”或“如何在 vala 中获取程序版本”没有带来任何有用的信息)。

Vala 的在线文档也没有提供任何有用的信息。在整个网络上,我找到了有关如何获得 Vala 版本或 GTK 版本或类似的东西的东西。

编辑过的东西

我想得到什么:正在运行的程序的版本。它应该查询自己以获取它自己的版本号。我可以在 Anjuta IDE 中为项目设置版本号,因此我希望能够以某种方式获取该版本信息。由于我可以获得应用程序的名称(通过 GLib.Environment),我应该也能够获得版本信息。

编辑结束

请有人这么好心并帮助我吗?看来我的 GoogleFu 今天不在我身边。

【问题讨论】:

  • 你不是很清楚你想得到什么版本。 Vala 编译器的版本?还是什么?
  • @lethalman 程序本身的版本。我正在使用 Anjuta IDE,在那里我可以为项目设置版本号。我应该能够以某种方式从程序本身查询该版本号。同样,我可以通过GLib.Environment.get_application_name().to_string() 获取应用程序的名称,我应该能够获取版本号。但是不知何故没有GLib.Environment.get_version()函数。

标签: version vala


【解决方案1】:

如果您使用自动工具,生成的 config.h 标头将包含您的包版本。然后可以通过自定义 config.vapi 绑定从 Vala 使用这些符号。您可以查看sampala,它显示了诀窍。

【讨论】:

  • 不是我希望的方式,但谢谢:)。希望像您在 C# 中所做的那样:Assembly.GetExecutingAssembly().GetName().Version。我猜你的回答意味着没有任何相似之处。
  • 好吧,我想我需要更多帮助:我看到了 Intl 的东西,我想这是必要的,但我看不到东西是从哪里读/写到文件的。再一次,谷歌在这里没有提供任何帮助。即使是 Vala 文档也对 Intl 中的这些函数没有任何说明。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-28
  • 1970-01-01
相关资源
最近更新 更多