これを調べてくださった方に、事前に感謝します。
現在、展開用の MSI ファイルのみをサポートする Intune 経由で TeamViewer を展開しようとしています。ただし、TeamViewer にはアカウント割り当てと呼ばれる機能があり、実行可能ファイルの形式で提供されます。Intune では exe ファイルの展開が許可されていないため、間違っている場合は修正してください。必要なファイルをダウンロードしてインストールする PowerShell スクリプトを使用することになりました。
私の目標は、onedrive や Dropbox のようなクラウドにファイルを保存することです。問題は、公開リンクがリダイレクトとしてファイルを直接指していないことです。
例https://www.dropbox.com/x/xyzd/TeamViewer_Assignment.exe?dl=0 --> https://www.dropbox.com/x/xyzd/TeamViewer_Assignment.exe
また
https://1drv.ms/u/s!Avjfi0upMYg9haNVTMpdoPGdstex --> https://1drv.ms/u/s/teamviewer.exe
両方のリンクがファイル拡張子 (.exe) で終わっていれば問題ありません。しかし、Teamviewer のリンク (get.teamviewer.com/myhost リダイレクトhttps://download.teamviewer.com/u/id12345/TeamViewer.exe ) を使用したいと思います。これがより多くの人に役立つことを願っています。クラウド ストレージを使用するのではなく、アカウント。
https://download.teamviewer.com/u/id12345/TeamViewer.exeも永続的なリンクではなく、有効期限があります。
私が試したこと:
$url = "https://get.teamviewer.com/mycustomhost"
$output = "$PSScriptRoot\myhost.exe"
$start_time = Get-Date
Invoke-WebRequest -Uri $url -OutFile $output
Write-Output "Time taken: $((Get-Date).Subtract($start_time).Seconds)
second(s)"
$url = "http://get.teamviewer.com/myhost"
$output = "$PSScriptRoot\myhost.exe"
$start_time = Get-Date
$wc = New-Object System.Net.WebClient
$wc.DownloadFile($url, $output)
#OR
(New-Object System.Net.WebClient).DownloadFile($url, $output)
Write-Output "Time taken: $((Get-Date).Subtract($start_time).Seconds)
second(s)"
$rep=Invoke-WebRequest
http://www.get.teamviewer.com/myhost -MaximumRedirection
0
$rep.Links | where {$_.innerText -eq "click here"} |select -expand href
これらの例はどれも機能しませんでした。ネット上で他の組み合わせを試してみましたが、うまくいきませんでした。