<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.itcollege.ee/index.php?action=history&amp;feed=atom&amp;title=PowerShell%3A_M%C3%A4rten_Rodes%2C_vlc.ps1</id>
	<title>PowerShell: Märten Rodes, vlc.ps1 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.itcollege.ee/index.php?action=history&amp;feed=atom&amp;title=PowerShell%3A_M%C3%A4rten_Rodes%2C_vlc.ps1"/>
	<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=PowerShell:_M%C3%A4rten_Rodes,_vlc.ps1&amp;action=history"/>
	<updated>2026-06-15T22:32:09Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=PowerShell:_M%C3%A4rten_Rodes,_vlc.ps1&amp;diff=45758&amp;oldid=prev</id>
		<title>Mrodes: Created page with &#039;&lt;source lang=&quot;powershell&quot;&gt;  &lt;#  .SYNOPSIS     Skript käivitab VLC Media Playeris internetiraadio ja sulgeb selle, kui arvuti lukustatakse.  .DESCRIPTION     Skript jookseb taust…&#039;</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=PowerShell:_M%C3%A4rten_Rodes,_vlc.ps1&amp;diff=45758&amp;oldid=prev"/>
		<updated>2012-01-26T21:46:01Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;#039;&amp;lt;source lang=&amp;quot;powershell&amp;quot;&amp;gt;  &amp;lt;#  .SYNOPSIS     Skript käivitab VLC Media Playeris internetiraadio ja sulgeb selle, kui arvuti lukustatakse.  .DESCRIPTION     Skript jookseb taust…&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;powershell&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;#&lt;br /&gt;
&lt;br /&gt;
.SYNOPSIS&lt;br /&gt;
    Skript käivitab VLC Media Playeris internetiraadio ja sulgeb selle, kui arvuti lukustatakse.&lt;br /&gt;
&lt;br /&gt;
.DESCRIPTION&lt;br /&gt;
    Skript jookseb taustal ja avab automaatselt VLC Media Playeriga internetiraadio, kui arvuti&lt;br /&gt;
    ei ole lukus või kui arvuti tehakse lukust lahti.&lt;br /&gt;
    VLC suletakse, kui arvuti pannakse lukku.&lt;br /&gt;
&lt;br /&gt;
.VERSION&lt;br /&gt;
    2.0&lt;br /&gt;
&lt;br /&gt;
.NOTES&lt;br /&gt;
    Autor: Märten Rodes, AK31&lt;br /&gt;
#&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# Importida DLL-failist protseduur akna minimeerimiseks&lt;br /&gt;
$import = &amp;#039;[DllImport(&amp;quot;user32.dll&amp;quot;)] public static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);&amp;#039;&lt;br /&gt;
Add-Type -MemberDefinition $import -name NativeMethods -namespace Win32&lt;br /&gt;
&lt;br /&gt;
function Stop-VLC {&lt;br /&gt;
# Sulgeda VLC Media Player&lt;br /&gt;
    foreach($proc in Get-Process vlc*){$proc.CloseMainWindow()}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function Start-VLC {&lt;br /&gt;
    # Käivitada VLC Media Player&lt;br /&gt;
    Start-Process &amp;quot;C:\Program Files\VideoLAN\VLC\vlc.exe&amp;quot; http://icecast.linxtelecom.com:8000/mania.mp3.m3u&lt;br /&gt;
&lt;br /&gt;
    # Leida VLC Media Player&amp;#039;i protsessi akna handle. Kui aken pole veel avanenud, siis oodata.&lt;br /&gt;
    do {&lt;br /&gt;
        # Oodata, kui aken pole veel avanenud&lt;br /&gt;
        Start-Sleep -Milliseconds 100&lt;br /&gt;
&lt;br /&gt;
        # Leida VLC Media Player&amp;#039;i protsessi akna handle&lt;br /&gt;
        foreach($proc in Get-Process vlc*){&lt;br /&gt;
            $handle = $proc.MainWindowHandle&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    # Korrata, kuni handle on leitud&lt;br /&gt;
    until ($handle -as [int] -gt 0)&lt;br /&gt;
&lt;br /&gt;
    # Minimeerida aken&lt;br /&gt;
    [Win32.NativeMethods]::ShowWindowAsync($handle, 2)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
# Käivitamisel suletakse VLC&lt;br /&gt;
Stop-VLC&lt;br /&gt;
$state = &amp;#039;WAITING&amp;#039;&lt;br /&gt;
&lt;br /&gt;
# Põhitsükkel kontrollib iga 0,5 sekundi tagant, kas arvuti on lukku pandud või lahti tehtud.&lt;br /&gt;
# Vajadusel käivitab või seiskab raadio&lt;br /&gt;
while ($true) {&lt;br /&gt;
    Start-Sleep -Milliseconds 500&lt;br /&gt;
&lt;br /&gt;
    $locked = $false&lt;br /&gt;
    foreach($proc in Get-Process LogonUI*){&lt;br /&gt;
        $locked = $true&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    # Kui arvuti on lukus ja VLC töötab, siis lülitada see välja&lt;br /&gt;
    if (($locked -eq $true) -and ($state -eq &amp;#039;RUNNING&amp;#039;)) {&lt;br /&gt;
        Stop-VLC&lt;br /&gt;
        $state = &amp;#039;WAITING&amp;#039;&lt;br /&gt;
    }&lt;br /&gt;
    # Kui arvuti ei ole lukus, aga VLC ei tööta, siis käivitada VLC&lt;br /&gt;
    elseif (($locked -eq $false) -and ($state -eq &amp;#039;WAITING&amp;#039;)) {&lt;br /&gt;
        Start-VLC&lt;br /&gt;
        $state = &amp;#039;RUNNING&amp;#039;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Mrodes</name></author>
	</entry>
</feed>