武内(yossy_takeuchi)です。

AMANO wrote:
> 天野です。 
>>>
>>>> また、自分が使っているOpenOffice.orgのバージョンが 1.1.5 なのか何なのか、
>>>> どうやったら簡単にわかるか、ってこともとっても重要でござんす。 
>>>>
>> これはタイトルバーに「1.1.5」と出ているからわかります。
> 
> そういう意味ではないと思います。shellから簡単に情報が取れるべきです。
> で、それは可能で、--helpオプションではビルドの番号までが表示されますが、
> パッチ情報は(当然というか)表示されません。--version-patchオプションとか
> を付けて
> パッチ情報までを取ることが出来るようにすべきということでしょうが、
> そこまで至れり尽くせりのプログラムって普通ではないですよね...。
> まあ、もちろん、可能ならうれしいのですが。

個人的には、アップデートパッチの実行の際、
OpenOffice.orgのインストールフォルダに入っているiniファイルを読み込み、
バージョン(及びビルドID)を取得し、アップデートの可否を判別するのが
最良の方法だと思います。

【OpenOffice.org 1.1.x の場合】
OpenOffice.orgをインストールしたフォルダの"program"サブフォルダ
(デフォルトではC:\Program Files\OpenOffice.org1.1.5\program)に
"bootstrap.ini"というファイルがあります。
この bootstrap.iniにある [Bootstrap]プロパティの
"ProductKey"キー 及び "buildid"キーを取得して
判別すれば問題ないはずです。

--- bootstrap.ini (OpenOffice.org 1.1.5) ---
[Bootstrap]
ProductKey=OpenOffice.org 1.1.5
Location=$SYSUSERCONFIG/sversion.ini
Section=Versions
BaseInstallation=$ORIGIN/..
UserInstallation=$ORIGIN/..
buildid=645m58(Build:8950)
InstallMode=STANDALONE
ProductPatch=

[ErrorReport]
ErrorReportPort=80
ErrorReportServer=report.services.openoffice.org
--- bootstrap.ini (OpenOffice.org 1.1.5) ---


【今後の参考に:OpenOffice.org 2.0.xの場合】
2.0.0では上記方法でいいのですが、
2.0.1以降ではbootstrap.iniの内容が、
bootstrap.iniとversion.iniの2つに分割されています。

下記はOpenOffice.org 2.0.3rc7の例です。
"buildid"キーがbootstrap.iniではなく、
version.iniの方に書かれています。

--- bootstrap.ini (OpenOffice.org 2.0.3rc7) ---
[Bootstrap]
BaseInstallation=$ORIGIN/..
ProductKey=OpenOffice.org 2.0
InstallMode=<installmode>
UserInstallation=$SYSUSERCONFIG/OpenOffice.org2
[ErrorReport]
ErrorReportPort=80
ErrorReportServer=report.services.openoffice.org
--- bootstrap.ini (OpenOffice.org 2.0.3rc7) ---

--- version.ini (OpenOffice.org 2.0.3rc7) ---
[Version]
buildid=680m7(Build:9044)
ProductPatch=
ProductSource=OOC680
ProductCode={A04E6A2B-1665-4946-879A-159ED7DFDA93}
UpgradeCode={7C35B9AB-2CE3-4C18-BE7C-5B97EA089EB3}
ProductMajor=680
ProductMinor=7
ProductBuildid=9044
AllLanguages=ja
MsiProductVersion=2.0.9044
UpdateURL=http://update.services.openoffice.org/ProductUpdateService/check.Update
--- version.ini (OpenOffice.org 2.0.3rc7) ---


【ちなみに】
拙作の"OpenOffice.org Icon Launcher"や
"Portable OpenOffice.org"のランチャーでは、
"bootstrap.ini"を操作して、
OpenOffice.orgユーザー設定の保存場所を変更しています。

Portable OpenOffice.orgのランチャーはNSISで記述されていますので、
iniファイルの読込み方法の参考になると思います。
(私はDelphi6で書いていますが)

Portable OpenOffice Launcher 1.1.3 (ソースコードも同梱)
https://sourceforge.net/project/showfiles.php?group_id=133951


【補足】
Linuxの場合、programフォルダにある"bootstraprc"に
同様の内容が記述されています。(1.1.x 及び 2.0.0)

2.0.1以降の場合は"bootstraprc"と"versionrc"の
2ファイルに分割されています。
(KNOPPIX 5.0.1 CDに収録のOpenOffice.org 2.0.2で確認。
 OpenOffice.org 2.0.1では未確認)
-- 
================================================================
武内 義幸 (yossy_takeuchi)
Toyohashi-city, Aichi, Japan
mailto:[EMAIL PROTECTED]
mailto:[EMAIL PROTECTED]
http://yossyt.net/ (ドメイン取得しました)

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

メールによる返信