2015-08-10 10 views

cevap

7

Eylem merkezinde görünen bildirimler, kullanıcının ekrandayken tıklanmadığı Tost Bildirimleri olma eğilimindedir.

örn. Boş bir dvd takın, ne yapmak istediğimi soran bir tost alıp tıklamayın, ardından Eylem Merkezi'ndeki bildirimler listesinde görünür.

Tost adımını atlamanın bir yolu olduğundan emin değilim.

Yani muhtemelen sahip olmak istediğiniz şey, eylem merkezinde yer alacak Tost'lar (belki sessiz?).

Bunları tost, BurntToast görüntülenmesi için bir Powershell modül yazdım (veya talimatlar ve örnekler, vs. GitHub repo kontrol)

olduğu gibi modülü kullanmak için çekinmeyin, ya da anlamaya ayrı rip çalışır ve kendi uygulamanızı yapar. C# ve/veya modern uygulamalarda da bunun nasıl yapılacağı konusunda pek çok örnek var ve documentation, şimdi de aranacak anahtar kelimeyi biliyorsunuz.

+0

Daha fazla upvotes! Soru şu anki tost bildirimlerinin bir listesini almak mümkün mü? Henüz mevcut olmadığında bir bildirim göndermek istediğim bir senaryo var (çok fazla gönderi yapmaktan kaçınmak istiyorum) – sonjz

+1

BurntToast @Windos üzerindeki çalışmalarınız için teşekkürler. Kendi Toast bildirim fonksiyonumda çalışan benzer kodları almayı başardım. Bunun anahtarı iki kat oldu; 1) Windows 10'daki 'Bildirimler ve Eylem Ayarları'nın altında,' Bu gönderenlerden bildirim al 'seçeneğine gidin ve' PowerShell'i tıklayın. 'Eylem merkezinde bildirimleri göster' seçeneğini etkinleştirin. 2) $ toast 'ın [Windows.UI.Notifications.ToastNotification] :: new ($ xml)' '$ toast.SuppressPopup = $ true' olarak tanımlandığı yer - bu, bildirimi Eylem Merkezi'ne zorlar. Yeni-BurntToastNotification fonksiyonunuza bir anahtar parametresi eklenebilir mi? – Robin

+0

@Robin önerileri için teşekkürler. Bu modülü takılıyorum ve bu modülü güncelliyorum, böylece listeye ekleyeceğim – Windos

0

İşinizle birlikte kızarmış ekmeklere ne dersiniz?

Get-EventSubscriber -SourceIdentifier JobEnd -EA 0| Unregister-Event 
$action = { 
if ($sender.State -eq 'Completed') { 
    Write-Host $sender.Name -fore green 
    Import-Module d:\scripts\BurntToast 
    $global:jobInfo = Receive-Job $job 
    New-BurntToastNotification -Text 'Job Completed'. "Job: $($sender.Name) was successful" 
} 
} 
$job = Start-Job { Start-Sleep -Seconds 5; 1 .. 5 } 
Register-ObjectEvent $job -EventName StateChanged -SourceIdentifier JobEnd -Action $action 
$job.State