A156-3:
ご面倒をお掛けし申し訳ございません。
> 研究会さんの方での確認は「外部プログラム通信」を70個以上配置しても80MB(mzasファイル)にはならなかったという解釈でいいですか?
検証では[フレーム]:1個、[パネル]:1個に[ボタン]:100個を画面配置しました。[外部プログラム通信]も100個追加し、[ボタン]のアクションイベントに接続しました。
ファイルサイズはバイナリファイルが150KB程度、XMLファイルが400KB程度です。
大変申し訳ないのですが、以下をお試し頂けないでしょうか。
目的は今ファイルにある処理を使った場合と新規にコンポーネントを追加した場合と違いがあるかの比較と、またコンポーネント数等の増加によってファイルサイズがどのくらい大きくなるかの確認です。
1)@お手元のファイルで、[ボタン](=[外部プログラム通信]が接続されている)と[外部プログラム通信]をまとめて20ずつコピーし、ビルダー上に貼り付ける。(shiftキーを押しながら[ボタン]と[外部プログラム通信]をクリックしていくとまとめて選択できる。選択状態で右クリック、コピー)保存してファイルサイズを確認。
A念のため新しく増えた[ボタン]の接続先を、[接続コンポーネント選択]を行い新しい[外部プログラム通信]に変更する。
保存してファイルサイズを確認。
2)@お手元のファイルに「コンポーネント一括追加」で[ボタン]と[外部プログラム通信]を新規に20個追加する。
保存してファイルサイズを確認。
A[ボタン]のアクションイベントに[外部プログラム通信]を接続。メソッド設定はまだ。保存してファイルサイズを確認。
Bメソッド、引数の設定。手間が掛かるので、一旦Aで作った接続を外し、既にある接続をコピー&ペーストして、[接続コンポーネント選択]で新しい[外部プログラム通信]を接続先としても良い。
保存してファイルサイズを確認。
以上最終的に新しくコンポーネント(20+20)と処理数(20)が増えた状態を作り、1)、2)を比較して、ファイルサイズに違いがある場合には、コピー対象となった元々の処理やコンポーネントに原因があることが考えられます。
また、コンポーネント数を増やしてもファイルサイズがそれ程増加しなかった場合には、他の箇所に原因がないか検討する必要が出てきます。
また、例えば[ラベル]や[ボタン]には有効時(通常時)/無効時のアイコンを設定することができるようになっており、無効時のアイコンを設定している(有効時には目で確認できない)、画面配置から外しているなどで、画像設定に気が付かない場合があります。大変お手数ですが今一度ご確認下さい。
Q156-4:
標記の件に関しまして、確認事項について連絡します。
>1)@お手元のファイルで、[ボタン](=[外部プログラム通信]が接続されている)と[外部プログラ>ム通信]をまとめて20ずつコピーし、ビルダー上に貼り付ける。(shiftキーを押しながら[ボタン]と> [外部プログラム通信]をクリックしていくとまとめて選択できる。選択状態で右クリック、コピー)保存してファイルサイズを確認。
MZAX:5,638KB
MZAS:74,145KB
>A念のため新しく増えた[ボタン]の接続先を、[接続コンポーネント選択]を行い新しい[外部プログラム通信]に変更する。保存してファイルサイズを確認。
MZAX:5,638KB
MZAS:74,145KB
>2)@お手元のファイルに「コンポーネント一括追加」で[ボタン]と[外部プログラム通信]を新規に20個追加する。保存してファイルサイズを確認。
MZAX:5,602KB
MZAS:74,143KB
>A[ボタン]のアクションイベントに[外部プログラム通信]を接続。メソッド設定はまだ。保存してファイルサイズを確認。
MZAX:5,610KB
MZAS:74,146KB
>Bメソッド、引数の設定。手間が掛かるので、一旦Aで作った接続を外し、既にある接続をコピー&ペーストして、[接続コンポーネント選択]で新しい[外部プログラム通信]を接続先としても良い。保存してファイルサイズを確認。
MZAX:5,616KB
MZAS:74,149KB
※外部プログラム通信における接続先ファイルはPDFファイルを指定した場合上記の通りの結果となりました。
サイズの差は非常に微々たる変化だったように感じます。
> また、コンポーネント数を増やしてもファイルサイズがそれ程増加しなかった場合には、他の箇所に原因がないか検討する必要が出てきます。
現在こちらでもどこの部分が影響しているのか引き続き検証中です。
まだはっきりしていませんが、PDFと接続している以外の部分で影響があるように思えます。
音声ファイル(MP3)、画像ファイル(JPG)の2種類の箇所をボタン削除したときのファイルサイズが大きく変化しました。いずれもMZASの場合で74MB→55MB位になりました。
>また、例えば[ラベル]や[ボタン]には有効時(通常時)/無効時のアイコンを設定することができるようになっており、無効時のアイコンを設定している(有効時には目で確認できない)、画面配置から外しているなどで、画像設定に気が付かない場合があります。大変お手数ですが今一度ご確認下さい。
2箇所ボタンに画像を貼り付けていたところがありました。
これを削除して上記のベースサイズ(MZAX:5.6MB,MZAS:74MB)となりました。
(MZAXで2MB減、MZASで6MB減)
また、今回の検証しているモデルの概要を記載します。
外部プログラム通信の指定先を音声ファイル(MP3)にしている数:7つ。
〃 画像ファイル(JPG) 〃 :48
(但し、ここでは対話モードを正常起動にて「標準のアプリケーションで開く(FILE)」を起動しないの状態して作成していました。(起動しないコンポーネントもファイルサイズに影響する様なので実質倍の96個か。)
PDFファイルが接続されている数:30個
もう少し検証してみますが、これまでの状況をお伝えしておきます。
本件について、新たに判明したことがありましたので連絡します。
これまで詳細を細かく説明しておりませんでしたが、動作検証しているモデル上では、ボタンから外部プログラム通信コンポーネントを介して音声ファイル、画像ファイル、PDFファイルを開くアプリケーションを起動させるものですが、その際、使用しているもので、フレームやパネルを数箇所使用して作成しています。
その中で判明した事実としてボタンからフレームを介してテキストエリア(HG教科書体(BOLD/24)を400文字程度)を表示させることをさせていたのですが、この部分でかなりのサイズを要していたことが新たにわかりました。
その時の状況ですが、まず最初のファイルサイズがMZAXで5,045KB,MZASで70,754KBの状態で、
@テキストエリアを削除→MZAX:5,043 MZAS:70,754(この段階ではサイズは殆ど変わらず)
A@で削除したテキストエリアを表示させていたフレーム及びボタンを削除→すると、MZAX:2,633KB、MZAS:15,447KBという状態になりました。
研究会さんの方でも再現可能だと思います。
これはこれで、テキストエリアの使い方に課題が出てきました。
それでもまだこの時点で15MB(MZAS)あります。
外部プログラム通信の直接的な要因ではなさそうですが、フレームやボタンとの組合せでサイズへの影響度合いが変わるのではという感が今しております。
試しに接続を音声のみしたモデルで検証していたのですが、フレームの使用を一つだけにしてボタンを7つのみ配置させ外部プログラム通信にしたところ、55MB(複数のフレーム使用時)あったMZASが、MZAX:67KB
MZAS:27KBと一気にサイズが減りました。
それから一番肝心な情報を書き忘れてきていたのですが、ファイルサイズが大きくなるにつれてPCのレスポンスが悪くなるわけですが、最も処理時間がかかる部分は「保存」処理です。MZASが70MBの状況で保存処理をすると数分以上はPCが止ったようになって動かなくなってしまいます。
動作検証で一番もたつくのは、この保存処理でサンプリング自体が滞ってしまうことです。
まだ少し検証は続ける予定ですが、取り急ぎ連絡まで。
Q156-5:
こちらで確認した現象が、そちらで再現できないのが残念です。
特別何かやった認識や自覚もありません。
とりあえずテキストエリア付の検証データと画像イメージを圧縮添付します。
(mzaxで2.5MBですが、MZASにすると55MBになったファイル)
動作環境については
PC:WindowsXP
Windowsmediaplayer:10.00.00.4074
MZPFのバージョン:2.8
関連ファイル:動作検証JPGのみ&テキストエリア使用.zip、動作検証JPGのみテキストエリア使用.zip