AutoPlay Media Studio 9.2 – Microsoft Edge WebView2 Runtime Sürümünü Öğrenme
Kısa Açıklama: AutoPlay Media Studio 9.2 projelerinde, kullanıcının bilgisayarında Microsoft Edge WebView2 Runtime kurulu olup olmadığını kontrol etmek ve yüklü sürüm numarasını öğrenmek için PowerShell ve Lua kullanımı.WebView2 Runtime sürüm kontrolü
AutoPlay Media Studio ile hazırlanan projelerde, WebView2 kullanan uygulamaların çalışabilmesi için ilgili Runtime bileşeninin bilgisayarda bulunması gerekebilir. Microsoft'un önerdiği yöntemlerden biri, Windows Kayıt Defteri'ndeki pv değerini kontrol etmektir.1. Lua kodu
İlk sayfanın On Show olayına aşağıdaki kodu ekleyin:
Kod:
local outputFile = _TempFolder .. "\\webview2_version.txt"
local command = 'powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "'
.. '$id = ''{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}''; '
.. '$paths = @('
.. '''HKCU:\\Software\\Microsoft\\EdgeUpdate\\Clients\\'' + $id,'
.. '''HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate\\Clients\\'' + $id,'
.. '''HKLM:\\SOFTWARE\\Microsoft\\EdgeUpdate\\Clients\\'' + $id'
.. '); '
.. '$v = $null; '
.. 'foreach ($p in $paths) { '
.. 'try { $x = (Get-ItemProperty -Path $p -Name pv -ErrorAction Stop).pv; '
.. 'if ($x -and $x -ne ''0.0.0.0'') { $v = $x; break } } catch {} '
.. '}; '
.. 'if ($v) { $v } else { ''NOT_INSTALLED'' }'
.. '" > "' .. outputFile .. '"'
local result = os.execute(command)
local file = io.open(outputFile, "r")
if file then
local version = file:read("*a")
file:close()
version = string.gsub(version or "", "^%s*(.-)%s*$", "%1")
if version == "NOT_INSTALLED" or version == "" then
Dialog.Message("WebView2 Runtime",
"WebView2 Runtime bulunamadı.")
else
Dialog.Message("WebView2 Runtime",
"Yüklü sürüm: " .. version)
end
else
Dialog.Message("Hata",
"Sürüm bilgisi okunamadı. PowerShell çalıştırma iznini kontrol edin.")
end
2. Kodun çalışma mantığı
- Windows Kayıt Defteri'nde WebView2 Runtime'a ait pv değerini arar.
- Değer bulunursa sürüm numarasını gösterir.
- Geçerli sürüm bulunamazsa Runtime'ın kurulu olmadığını bildirir.
- Sonucu geçici bir metin dosyasına yazar ve Lua ile okur.
Resmî kaynak: Microsoft – WebView2 Runtime kurulumunu ve sürümünü tespit etme
Teknik not: Bu kodu doğrudan kesin olarak çalışan kod diyekullanmadan önce AMS 9.2'de test etmenizi öneririm. PowerShell komut satırı ve Lua çalışma ortamı farklılıkları nedeniyle test edilmeden uyumluluk garantisi verilemez. Microsoft'un kayıt defteri yöntemi için kaynak: Microsoft – WebView2 Runtime kurulumunu ve sürümünü tespit etme