none
Countdown-Shellscript RRS feed

  • Frage

  • Hallo,

    Mir stellt sich folgendes Problem:

    Programmieren mit Powershell ist relativ neu für mich(habe in der Vergangenheit erst kleinere Scripte damit geschrieben)

    Auf meiner Informationen Suche ist mir dieser Beitrag untergekommen:

    https://social.technet.microsoft.com/Forums/de-DE/ee4307cd-c179-4376-a2f3-dd7e6de9faa0/mit-powershell-countdown-erstellen?forum=powershell_de

    Leider konnte ich die dort genannten Informationen nicht vernünftig verarbeiten.

    Ich möchte ein kleines Powershellscript schreiben welches :

    1.) Gestartet wird wenn ich ein bestimmtest Programm startet(bzw. damit verknüpft ist)

    2.)Beim Tastendruck "f" soll es starten

    3.)Ein Timer sollte vom Tastendruck an von 43 Sekunden an herunterlaufen und bei 0 eine Mp3 Datei abspielen

    Optional:

    Es wäre noch sehr schön wenn man den Countdown(nur die Sekunden) noch darstellen könnte

    Hierbei wäre mir sowohl wichtig, die Schriftart, als auch die Größe/Farbe verändern zu können.Des Weiteren wäre mir wichtig, dass dies in einem transparentem Fenster oder ähnlichem passiert.Ein weiterer Punkt, welcher mir wichtig wäre ist die Position des Timers auf dem Bildschirm.(Ich weiß nicht ob die Information wichtig ist aber der Timer soll als eine art Overlay über ein im Borderless-Modus laufendes Programm fungieren)

    Ich habe keine Idee wie viel Aufwand ein solches "Projekt" darstellt, hoffe jedoch trotzdem, dass ihr mir Hilfestellung geben könnt.

    Mit freundlichen Grüßen,

    Sebastian Lenz


    Dienstag, 22. September 2015 09:32

Antworten

  • Moin,

    hier ein sehr grober Ansatz:

    #1 programm starten
    calc.exe
    
    #2 auf tastendruck warten
    do{ Write-Output 'Drücke F um das Programm zu starten...' ;$x = [System.Console]::ReadKey()
    } while( $x.Key -ne 'f' )
    
    #3 timer starten
    $a = 45
    Do { $a-- 
        Clear-Host
        Write-Host $a
        Start-Sleep -Seconds 1
    } while($a -ne 0) 
    
    #4 sound abspielen
    function Play-Sound  {
         param
         (
             [Object]
             $Filename
         )
     
        $PLAYER=NEW-OBJECT -ComObject 'Mediaplayer.Mediaplayer' 
        $PLAYER.Filename=$Filename 
        $Player.Play() 
    } 
    
    Play-Sound C:\temp\sample.mp3

    Wenn du das ganze mit einer grafischen Oberfläche haben möchtest, dann schau die mal Windows Forms oder WPF Oberflächen an.

    Dienstag, 22. September 2015 12:24

Alle Antworten

  • Moin,

    hier ein sehr grober Ansatz:

    #1 programm starten
    calc.exe
    
    #2 auf tastendruck warten
    do{ Write-Output 'Drücke F um das Programm zu starten...' ;$x = [System.Console]::ReadKey()
    } while( $x.Key -ne 'f' )
    
    #3 timer starten
    $a = 45
    Do { $a-- 
        Clear-Host
        Write-Host $a
        Start-Sleep -Seconds 1
    } while($a -ne 0) 
    
    #4 sound abspielen
    function Play-Sound  {
         param
         (
             [Object]
             $Filename
         )
     
        $PLAYER=NEW-OBJECT -ComObject 'Mediaplayer.Mediaplayer' 
        $PLAYER.Filename=$Filename 
        $Player.Play() 
    } 
    
    Play-Sound C:\temp\sample.mp3

    Wenn du das ganze mit einer grafischen Oberfläche haben möchtest, dann schau die mal Windows Forms oder WPF Oberflächen an.

    Dienstag, 22. September 2015 12:24
  • Vielen Dank für deine Bemühungen.Werde mir morgen mal anschauen wie weit ich mit diesem Leitfaden komme.

    Lg

    Dienstag, 22. September 2015 17:35