Power Automate for desktop

Power Automate Desktopを更新するPowerShellスクリプト

公式ブログを見れば分かる通り、Power Automate Desktop(PAD)は頻繁に更新されます。

自分のPCにインストールしてあるPADのバージョンと最新版のPADのバージョンとを見比べて、新しいバージョンがリリースされていたら更新する、という作業が面倒だったので、手間を軽減するためのスクリプトをPowerShellで書いてみました。

取得したバージョン情報は後で使うこともあるので、クリップボードにコピーする処理も入れています。

上記スクリプトを実行すると、下図のようにインストールされているPADのバージョンと最新版のPADのバージョンがメッセージボックスで表示され、「はい」ボタンをクリックすることで、最新版のPADのインストールが行われます。

最新版のPADのバージョンの取得

PAD上でバージョン確認を行った際、バージョン情報はMicrosoftのサーバー上にあるJSONデータ(PADUpdate.json)から取得しています。

同様に、スクリプトからもInvoke-RestMethodを使って情報を取得するようにしました。

$LatestVersion = (Invoke-RestMethod -Method Get -Uri "https://download.microsoft.com/download/b/d/8/bd8409df-7b80-4ef7-89c5-5a7a941a5093/PADUpdate.json" -ContentType "application/json").latestVersion.version

ただ、下記の通りアプリのアップデート通知は最新版のリリース日から7日後に来るとの情報もあったため、先にインストーラーをダウンロードしておいて、インストーラーからバージョンを取得する方法も用意しています(UpdatePAD2.ps1)。

インストールされているPADのバージョンの取得

インストールされているPADのバージョンは、下記の通りレジストリから取得しています。
その際、「DisplayName」の値が「Power Automate Desktop」の項目が複数あったため「BundleVersion」の有無で判断するようにしました。

$InstalledVersion = (Get-ChildItem -Path ("HKLM:SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall", "HKLM:SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall") | ForEach-Object {Get-ItemProperty $_.PsPath} | Where-Object {($_.DisplayName -eq "Power Automate Desktop") -and ($_.BundleVersion -ne $NULL)}).BundleVersion

インストーラーのダウンロードに時間が掛かるのが難点ですが、これでバージョンチェックの手間が省けるようになりました。

参考Webサイト

Power Automate DesktopでPPAPしてみた。前のページ

Power Automate DesktopでPowerPointマクロを実行する方法次のページ

関連記事

  1. Office関連

    Excelを使わずにCSVからExcelファイルに変換するPowerShellコード

    CSVファイルからExcelファイルに変換する処理を自動化したい、Ex…

  2. Windows 11

    Power Automate for desktop(Power Automate Desktop)…

    前回の記事でも触れていますが、Windows 11ではPower Au…

  3. Power Automate for desktop

    Power Automate for desktopのアクション一覧

    Power Automate for desktopのアクションペイン…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP