Intune では exe 形式のインストーラー(Win32 アプリ)を intunewin ファイル形式にすることで、デバイスへ配信する機能が実装されています。

ただ、この機能の利用方法がわかりにくく、どうやって配布するのかが分からないという方も多いのではないでしょうか。また、この機能を活用することで、任意のフォルダにファイルを保存したり、実行することもできます!

普通に配布すると、一般ユーザーが触らないような配布用のディレクトリにファイルが保存される仕様です。フォルダを移動することでAppLocker や Windows Defender Application Control を利用して配布用ディレクトリでのファイル実行をブロックしている場合や、会社のマニュアルをあるフォルダに保存したいといったケースに活用ができますよ!

今回、Teams デスクトップ版を配布する検証機会があったので、記事としてまとめておきます!以下の流れ(シナリオ)でTeams デスクトップ版の配布を行います。

  1. Intunewin に変換するツールのダウンロード
  2. ファイルの格納先を変えてから実行するバッチファイルの作成
  3. Intunewin ファイルへの変換
  4. Intune での配布

Intunewin に変換するツールのダウンロード

Intuneでファイルを配信する上で、ファイルを「Intunewin」という拡張子に変換する必要があります。

Microsoft Intune Win32 アプリのアップロード準備ツール(IntuneWinAppUtil.exe)をサイトからダウンロードして、任意の場所に保存します。

② 配布する「Teams_windows_x64.exe」を専用サイトからダウンロードします。

③ intunewin 変換後の出力フォルダを作成します。今回は、 C ドライブ直下に  intunewin フォルダを作成しました。(こちらは必須ではありませんが、PowerShell 実行後の入力を省くことができます。)

ファイルの格納先を変えるバッチファイルの作成

続いて、配布するフォルダを変えるためのバッチファイルを作成します。今回は「C:¥moved」というフォルダに「Teams_windows_x64.exe」を格納するためのバッチファイルを記載します。

例)Teams_Update.bat


mkdir c:\moved
xcopy "Teams_windows_x64.exe" "C:\moved" /E /I /H /R /Y
cd c:\moved
Teams_windows_x64.exe

Intunewin ファイルへの変換

① 作成したバッチファイルと Teams_windows_x64.exe を任意のフォルダ内に格納します。今回は C ドライブ直下に作成した test フォルダに格納します。

※格納先の変更が不要な場合はバッチファイルを格納する必要ありません。

(おさらい)現在のディレクトリ構造
 C:¥winapp\IntuneWinAppUtil.exe ← Intunewin に変換するツール
 C:\test\Teams_Update.bat ← 配布した後に格納先を変更するバッチファイル
 C:\test\Teams_windows_x64.exe ← 配布したい実行ファイル
 C:¥intunewin ← Intunewin変換後の出力先フォルダ

② 「Teams_Update.bat」と「Teams_windows_x64.exe」をPowerShell を使って 1 つの Intunewin ファイルへ変換します。

cd c:\winapp
.\IntuneWinAppUtil.exe -c c:\test -s Teams_Update.bat -o c:\intunewin

(1行目)IntuneWinAppUtil.exe が格納されているディレクトリを指定
(2行目)-c:intunewin へ変換したいフォルダ。-o:intunewin ファイル変換後の出力先フォルダを指定。

実行後、こんな表示があれば成功です! C:¥intunewin 配下にIntunewinファイルが出来上がっていることを確認ください。

Intune での配布

Endpoint Manager へアクセスします。

② アプリ>すべてのアプリ>+追加 を選択します。

③ アプリの種類:Windows アプリ(Win32)を選択します。

④ アプリのパッケージ ファイルで、作成した intunewin ファイルを選択します。

⑤【発行元】が必須入力なので入力します。(名前と説明は自動入力、適宜変更)

⑥ インストールコマンドを入力する…。のですが!ここで、作成したバッチファイルを指定します。この指定により、配布後にバッチファイルが実行され、 Teams_windows_x64.exe の格納先を「C:¥moved」変更し、変更先でexeファイルが実行されるようになります。

※格納先の変更が必要ない場合は実行ファイルがサイレントインストールされるよう引数付きで記載します。(7zip.exeをインストールさせる場合は、7z1900-x64.exe /S といったように記載)
※アンインストールコマンドはアンインストールさせたいときに正確に入力する必要があります。今回はアンインストールはしないため適当に入力しています。

⑦ オペレーティングシステムのアーキテクチャ、最低限のオペレーティングシステムの必須項目を選択します。

⑧ 検出規則:検出規則を手動で構成するを選択、+追加をクリック。

⑨ 規則の種類を選んで各項目を入力します。

※今回は、レジストリのバージョン比較を設定しました。以下のレジストリにあるバージョンと比較し、そのバージョン未満のデバイスには、intunewin が配布されます。

※条件を付けずにインストールさせたい場合は、インストール後のディレクトリが存在していることなど、簡易的なルールを作るのがお勧めです。

⑩ 依存関係、置き換え、スコープタグは必要に応じて入力してください。

⑪ インストールさせたい対象のグループに割り当てて、保存します。

保存すると、概要ページが表示され、画面右に intunewin ファイルのアップロード状況が通知されます。

※アップロードにかなり時間がかかりますが気長に待ちましょう。

対象デバイスが配布対象の場合、画面右下に配布通知が表示されます。

Teams の再起動後、以下が通知されたので、正常にインストールされました!

バージョンも無事アップデートされていました。

デバイスによっては、バッチが実行されるまでに時間がかかることもあるので、これは失敗か…と思う時もありました。

成功するとホッとします。

今回は、exe ファイルを intunewin で配布してみましたが、必要条件や検出規則など、より細かな設定も可能なので、また他に機会があれば、検証したいと思います!