2011-01-11 29 views
0

NSISを使用してインストーラを作成します。私のスクリプトでは!define MUI_FINISHPAGE_NOAUTOCLOSE ですので、ユーザーはインストールファイルのログを見ることができます。 しかし、ここで私の問題は進行状況のテキスト表示さえ完了です。下のプログレスバーに100%は反映されません。 これを見つけてくださいscreenshotNSIS、完了時にプログレスバーが100%表示されない

問題は、Windows XPでのみ、Windows XPで発生します。

AFAIK pidginはNSISインストーラスクリプトを使用しています。そのため、ProgressBarが完了したら100%を表示することができました。

+0

これは本当の質問ではなく、むしろ[NSISバグトラッカーのバグレポート](http://sourceforge.net/tracker/?atid=373085&group_id=22049&func=browse)でなければならないので投票を終了してください。 – Bobby

答えて

2

XPではプログレスバーが100%になっていますか?

:ビジュアルスタイルに応じて、それが100%になるように

本の一般的な原因は、セクションのリターンです(あなたが「XPStyleオフ」とのスムーズなプログレスバーを(InstProgressFlagsスムーズ)試みることができる)になります。

Section 
;some code here 
${If} $x = $y 
    return 
${EndIf} 
;some code here 
SectionEnd 

リターンの問題を回避するには、if/elseブロックを使用するコードを変更するか、すべてのロジックを関数に置き、そのセクションから関数を呼び出します。

1

セクション内で 'return'を使用しないでください。セクション内で 'return'を使用すると、プログレスバーはSectionEndから進捗状況を 'ジャンプ'することがあります。

スクリプトで負の位置に相対ジャンプ(別名GoTo)すると同じ問題が発生する可能性があります。

関連する問題