Palm Programmer's Laboratory

トップ 差分 一覧 ソース 検索 ヘルプ RSS ログイン

【C/C++】 Palm OS のバージョンをチェックする方法

[開発情報]

概要

 このドキュメントでは、プログラムから OS のバージョンをチェックする方法について説明します。

 

説明

 アプリケーションによっては、特定のバージョンの Palm OS だけで動作させたい場合があります。このような場合、FtrGet API を使用して動作しているデバイスの OS バージョンを取得し、sysMakeROMVersion マクロで生成した比較対象バージョンの値と比較します。

// OS version check.
UInt32 romVersion;
FtrGet( sysFtrCreator, sysFtrNumROMVersion, &romVersion );
if( romVersion < sysMakeROMVersion( 5, 0, 0, sysROMStageRelease, 0 ) ) {
    FrmAlert( OS_VERSION_ERROR_ALERT );
    return;
}

 上記サンプルでは、取得した OS バージョン( romVersion に格納 )が OS 5.0 未満であった場合にアラートを表示するようにしています。sysMakeROMVersion マクロの最初の2つのパラメータに OS のメジャーバージョンとマイナーバージョンを指定することを覚えておけばとりあえずは使えるでしょう。

 

参考情報

 「 Palm OS Programmer's Companion volume 1 」の The System Version Feature という項目に OS バージョンチェックに関する説明がありますので、詳しくはそちらを参照してください。

 

注意事項

 とくにありません。

 

コメント

Re: - kagelow (2006年11月05日 21時50分10秒)
以前、このページのコメント欄にて、ほしさんより次の情報をいただいていました。たまたまメモしていたので記載しておきます。『CLIE NX シリーズでは sysROMStageRelease (3) のところに sysROMStageDeveropment (0) が入ってるので、これではうまく行かないそうです。 http://www.ne.jp/asahi/fairy/chimera/Onl_Palm_Guchi.html (デバッグ版 5.0 でも、5.0 なことに変わりない訳で、sysROMStageDeveropment を使うのは理論的にも間違ってないと言える、かな。。。) 』

 
※ コメントスパムが来ますので、コメント用フォームを使用不可としました。コメントを記入したい方は、申し訳ありませんが直接入力するか、あるいは編集してコメント用フォームを有効にして入力願います。