SB C&Sの最新技術情報 発信サイト

C&S ENGINEER VOICE

SB C&S

【連載:ThinApp技術指南】08:設定ファイル Package.ini について

仮想化
2026.01.02

設定ファイル Package.ini について

SB C&S後藤です。

2026年初回投稿です。公開日時設定が間違っていなければ、ですが。。。

本年もよろしくお願いいたします。

昨年に引き続きパッケージの詳細について解説を続けていきます。このあたりから少々話が重たくなります。あきらめずに読み進めていただけると幸いです。


Package.ini とは

Package.iniとは仮想アプリをビルドするときの設定を記述したファイルです。メモ帳などのテキストエディターで編集することができます。

Package.iniはThinApp Setup Captureの途中でプロジェクトフォルダーに作成されます。

分離モードや圧縮設定など、設定を変更したい場合はこのファイルを編集して再ビルドします。

まずは一度開いてざっと内容を確認してみると良いでしょう。Visual Studio Codeなどの色分けしてくれるエディターを使用するとより見やすくなります。

Package.ini


Package.iniの書式

Package.iniには簡単な書き方の決まりがあります。

セクション

Package.iniは複数のセクションに分けて記述されています。

[]に囲まれた文字がセクション見出しを表しています。基本的に、各設定項目は決まったセクション見出しの下に記述する必要があります。

セクションの種類は以下の5つです。

  • [Compression]
  • [Isolation]
  • [BuildOptions]
  • [<App>.exe](exeファイル名)
  • [FileList]

[Compression]は圧縮設定、[Isolation]は分離モード設定を記述するセクションです。

[BuildOptions]はパッケージ全体に関する設定のほとんどを記述するセクションです。

[FileList]ExcludePatternを追加する際に手動で追加するセクションです。

[<App>.exe]はキャプチャした.exeごとに複数作成されます。実際はそれぞれのexeファイル名になります。
また、動作確認等に用いる[cmd.exe][regedit.exe]が自動的に追加されます。

ThinAppの公式ドキュメントでは、設定を例示する際にこのセクションがセットで記載されています。

[BuildOptions]
LogPath=C:\ThinappLogs

これは[BuildOptions]セクションに記述する設定であるということを意味します。
セクション見出しのすぐ下でなくても、次のセクション見出しより上であればどこでも構いません。


パラメータと値

パラメータ名=値の形式で、=でつなぎます。例を提示します。

Wow64=0

複数の値を指定する場合は;で区切ります。

PermittedGroups=Administrators;TestUsers


コメントアウト

行頭に;がある場合はコメントアウトです。この行は設定として効力を持ちません。

;Wow64=0

複数設定の区切りと同じ;を使用しますが、行頭にある場合はコメントアウトです。


Setup Capture内の設定とパラメータ

Setup Captureで行った設定は、一部を除いてこのPackage.iniに反映されています。

エントリーポイント

アプリのセクションでDisabled=1が付いていないものがエントリーポイントです。

エントリーポイントになっている場合:

[cmd.exe]
Source=%SystemSystem%\cmd.exe
Shortcut=Notepad++.exe

エントリーポイントでない場合:

[cmd.exe]
Source=%SystemSystem%\cmd.exe
Shortcut=Notepad++.exe
Disabled=1

エントリーポイントでないアプリをエントリーポイントに変更する際は、;Disabled=1とコメントアウトするか、行を削除すればOKです。


ディレクトリ分離モード

DirectoryIsolationModeで設定します。MergedWriteCopyに加えて、Setup Captureで指定できなかったFullモードも指定できます。

[Isolation]
DirectoryIsolationMode=WriteCopy


サンドボックスの場所

サンドボックスへのパスはSandboxPathで設定します。特定の場所を指定していない場合は、Package.ini内でパラメータが省略されている場合があります。

[BuildOptions]
SandboxPath=%AppData%\Thinstall

相対パスでも指定できます。エントリーポイントと同じディレクトリに配置する場合:

[BuildOptions]
SandboxPath=.

SandboxPathにはフォルダー名(サンドボックス名)は含まれません。フォルダー名はSandboxNameで指定します。

[BuildOptions]
SandboxName=TestApp


Customer Experience Improvement Programへの参加

品質向上のための匿名データ送信の設定です。

[BuildOptions]
QualityReportingEnabled=0


インベントリ名

[BuildOptions]
InventoryName=TestApp


プライマリーデータコンテナ

[Notepad++.exe]
Source=%ProgramFilesDir(x64)%\Notepad++\notepad++.exe
ReadOnlyData=Package.ro.tvr
WorkingDirectory=%ProgramFilesDir(x64)%\Notepad++
Shortcuts=%Programs%

.dat に分けた場合:

[Audacity.dat]
Source=%ProgramFilesDir(x64)%\Audacity\Audacity.exe
ReadOnlyData=Package.ro.tvr
MetaDataContainerOnly=1


パッケージ圧縮設定

[Compression]
CompressionType=None

[BuildOptions]
OptimizeFor=Memory

圧縮設定

圧縮を有効にするとCompressionType=FastOptimizeFor=Memoryが適用されます。


その他のよく使うパラメータ

子プロセスを仮想環境外で実行する

[BuildOptions]
ChildProcessEnvironmentExceptions=WINWORD.EXE;EXCEL.EXE;POWERPNT.EXE;OUTLOOK.EXE;MOC.EXE

すべて外部で実行する場合:

[BuildOptions]
ChildProcessEnvironmentDefault=External


サンドボックスの都度削除

[BuildOptions]
RemoveSandboxOnExit=1

開始時に削除する設定:

[BuildOptions]
RemoveSandboxOnStart=1


詳細

その他の設定は公式ドキュメントを参照してください。

Omnissa ThinApp Package.ini パラメータ リファレンス ガイド

Package.iniの知識はThinAppの仮想化を成功させるために必須のものです。大量の設定項目が出てきて面食らうかもしれませんが、少しずつ慣れていってください。


執筆協力

Nagisaworks 伊藤さま

ThinApp技術指南

著者紹介

SB C&S株式会社
ICT事業本部 技術本部
ソリューション技術統括部 技術推進室
後藤 正幸