トップ回答者
.NET Framework オフラインインストーラのUIの特定の表示項目を非表示にする方法

質問
回答
-
いちおう見えなくはなりそう
- .NET Framework 4.6.1オフラインインストーラー(NDP461-KB3102436-x86-x64-AllOS-ENU.exe)を用意する。
- 上記オフラインインストーラーを7zファイルとして解凍する。
- 解凍したファイル群からUiInfo.xml , ParameterInfo.xml , String.xmlを適当なフォルダにコピーする。
例: C:\CustomParameterFolder - UiInfo.xmlをメモ帳などで開く
- <EulaPage>と<EulaPage_HighDPI>というタグを探す。
- 上記タグ内の<Static>タグをすべて探す。
(どのラベルに対応するかは<Text>タグから推測する) - <Static>タグ内の<X>,<Y>をウィンドウ外になるように適当に変更。
例: <Y>をマイナスに書き換え - UiInfo.xmlを保存。
- parameterfolderオプションで上記フォルダを指定してオフラインインストーラーを実行してみる
(parameterfolderオプションはオフラインインストーラーに/?でヘルプ表示させると記述がある)
NDP461-KB3102436-x86-x64-AllOS-ENU.exe /parameterfolder "C:\CustomParameterFolder"
CustomParameterFolderを配置するのが厄介な場合は、7zで解凍したファイルのUiInfo.xmlを直接書き換えて、そのままsetup.exeを実行でも可能みたい。(/X64 /X86 /redist を引数に追加が必要?)
#すごく容量が大きくなりますが
個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)
- 編集済み gekkaMVP 2017年6月13日 11:42
- 回答の候補に設定 立花楓Microsoft employee, Moderator 2017年6月14日 0:12
- 回答としてマーク DevQes 2017年6月15日 0:27
すべての返信
-
オフラインインストーラーにこだわっても仕方がないのでは?
それよりもWindows 8以降及び.NET 4~4.6.2をインストールしているWindows 7は明日のWindows Updateで4.7へアップデートされます。
- 編集済み 佐祐理 2017年6月13日 6:16
- 回答の候補に設定 立花楓Microsoft employee, Moderator 2017年6月14日 0:12
-
ダウンロードのインジケータも含めての画面構造になっているので、.NET Framework のインストーラUIを非表示にするか、WiX など、.NET Framework のインストーラのUIを表示せずにインストールするインストーラを使う必要があると思います。
UIを別途設ける方法については、方法: .NET Framework 4.5 インストーラーの進行状況を表示する に記載があります。サンプルコードもリンクがあるので参考になると思います。
InstallShield が.NET Framework のインストーラを動かす部分については InstallShield 自体を持っていないのでわかりません。
とっちゃん@わんくま同盟, Visual Studio and Development Technologies http://blogs.wankuma.com/tocchann/default.aspx
- 回答の候補に設定 立花楓Microsoft employee, Moderator 2017年6月14日 0:12
-
ご回答ありがとうございます。>ダウンロードのインジケータも含めての画面構造になっているので、
>.NET Framework のインストーラUIを非表示にするか、WiX など、
>.NET Framework のインストーラのUIを表示せずにインストールする
> インストーラを使う必要があると思います。
> UIを別途設ける方法については、方法: .NET Framework 4.5
>インストーラーの進行状況を表示する に記載があります。
>サンプルコードもリンクがあるので参考になると思います。オフライン(web版)の.NETインストーラのUIは、都合よく変更できないようですね。
推定ダウンロードサイズを表示させないためには、サイレントでインストールし、UIを実装するしかなそうですが、
Windows8.1で.NET Framework 4.6.1 をインストールできない場合があるのでサイレントで実行するのは避けたいです。
推定ダウンロードサイズの表示を許容するしかなそうです。
-
いちおう見えなくはなりそう
- .NET Framework 4.6.1オフラインインストーラー(NDP461-KB3102436-x86-x64-AllOS-ENU.exe)を用意する。
- 上記オフラインインストーラーを7zファイルとして解凍する。
- 解凍したファイル群からUiInfo.xml , ParameterInfo.xml , String.xmlを適当なフォルダにコピーする。
例: C:\CustomParameterFolder - UiInfo.xmlをメモ帳などで開く
- <EulaPage>と<EulaPage_HighDPI>というタグを探す。
- 上記タグ内の<Static>タグをすべて探す。
(どのラベルに対応するかは<Text>タグから推測する) - <Static>タグ内の<X>,<Y>をウィンドウ外になるように適当に変更。
例: <Y>をマイナスに書き換え - UiInfo.xmlを保存。
- parameterfolderオプションで上記フォルダを指定してオフラインインストーラーを実行してみる
(parameterfolderオプションはオフラインインストーラーに/?でヘルプ表示させると記述がある)
NDP461-KB3102436-x86-x64-AllOS-ENU.exe /parameterfolder "C:\CustomParameterFolder"
CustomParameterFolderを配置するのが厄介な場合は、7zで解凍したファイルのUiInfo.xmlを直接書き換えて、そのままsetup.exeを実行でも可能みたい。(/X64 /X86 /redist を引数に追加が必要?)
#すごく容量が大きくなりますが
個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)
- 編集済み gekkaMVP 2017年6月13日 11:42
- 回答の候補に設定 立花楓Microsoft employee, Moderator 2017年6月14日 0:12
- 回答としてマーク DevQes 2017年6月15日 0:27
-
技術的には可能でしょうが、再頒布条件にバイナリに一切の変更を加えないこと、のような条件がありませんでしたっけ?
Visual Studio 2017に付属する.NET Framework 4.6.2の再頒布権については次のように説明されていました。
お客様は、ソフトウェアのライセンス条項に従って、以下に示すファイルを複製し、改変が加えられていない状態で、お客様のプログラムと共に頒布することができます。
オフライン インストーラー
- dotNetFx-x86-x64-AllOS-ENU.exe (Visual Studio 内の .NET Framework 4.6.2)
- NDP462-KB3151800-x86-x64-AllOS-ENU.exe (Microsoft ダウンロード センターなどの他のチャネルにある .NET Framework 4.6.2)
ということで、gekkaさんの提案されている方法はほぼ確実にライセンス違反です。
- 編集済み 佐祐理 2017年6月14日 1:15