0

プリコンパイル済みヘッダーファイルで処理されるplistがあり、その中にCFBundleGetInfoStringなどのフィールドで数回使用される「変数」VERSION_STRINGがあります。つまり、キーCFBundleGetInfoStringの値は次のとおりです。MyProductVERSION_STRINGCopyright©2009MyCorp

MyHeader.h(Info.plistプレフィックスヘッダーとして設定されています)で、VERSION_STRINGをMAJOR.MINOR.PATCH.BUILDの形式にビルドできるようにしたいと思います。

#define MAJOR 1
#define MINOR 0
#define PATCH 0
#define BUILD 23

どういうわけか私はこれを行うことができないようです。私はそれらの瞬間の1つを持っているかもしれません

4

2 に答える 2

1

実際には、これに関するApple Tech Noteと、私が抱えていた問題に対する解決策があります。したがって、これに遭遇する可能性があり、同じ問題を抱えている人のために、テクニカルノートTN2175:Cプリプロセッサを使用したXcodeでのInfo.plistファイルの前処理を確認しました。

于 2009-12-20T19:33:19.987 に答える
0

plistファイルを取得し、拡張子を追加して名前を変更します(おそらくP?)。ファイルの先頭に追加#include "MyHeader.h"し、Cプリプロセッサ(通常はcpp)を使用してビルドで前処理します。余分な行を除外する必要があるかもしれ#ませんが、なぜそれが機能しないのかわかりません。

デフォルトでcppは、stdoutに出力する必要があるため、次のようなコマンドを追加すると正常に機能する場合があります。

cpp myplist.plist.P | grep -v '^#' > myplist.plist
于 2009-12-08T21:48:37.383 に答える