1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Harald654

Beiträge von Harald654

  • "ProcessExists" -Abfrage mit unvollständigem Namen

    • Harald654
    • 24. März 2016 um 22:54

    funktioniert :)
    Danke.

  • "ProcessExists" -Abfrage mit unvollständigem Namen

    • Harald654
    • 24. März 2016 um 13:23

    Hallo,


    Kennt jemand eine Möglichkeit die Überprüfung ob ein Prozess läuft/existiert auch nur mit einem teil des vollständigen Prozesssamens zu ermöglichen?

    z.B wenn der Prozesse "Firefox.exe" vorhanden ist, würde ich diesen gerne auch finden wenn ich nur nach "Firefox" suche.
    Ich hätte gerne eine Überprüfung ob ein Prozess vorhanden ist in welchem mein Suchwort vorkommt.
    Ich hab es mal mit ProcessExists("Firefox*") versucht, das funktioniert aber nicht.

    Gruß,

  • Monitor schaltet sich nicht mehr ab bei "@SW_hide"

    • Harald654
    • 21. Juni 2015 um 23:57

    Super,

    dein Script zum verstecken der Anwendung in der Taskleiste funktioniert :)

    Ich hab nur fast die Krise bekommen weil das Programm auf einmal auch minimiert das ausschalten des Bildschirms verhinderte :cursing: , bis ich festgestellt habe dass nur wenn ich vor dem Minimieren das Programm(Fenster) nicht mehr im Fokus habe (nennt man das so?), die Monitorabschaltung funktioniert^^. Ist wirklich komisch, wenn ich das Programm offen/maximiert habe funktioniert das Abschalten, nur versteckt oder minimiert nicht bzw. nicht richtig, wenn dann hätte ich mit dem gegenteiligen Verhalten gerechnet.

    Ich hab mir nun mit WinActivate("[CLASS:Shell_TrayWnd]") vor  WinSetState($WKodi, "", @SW_MINIMIZE) beholfen, ist nicht gerade schön und etwas umständlich aber es funktioniert jetzt wenigstens :)

    Mein ganzes Programm:

    AutoIt
    #include <TrayConstants.au3>
    ;Create Traymenü-----------------------------------------
    Opt("TrayMenuMode", 3) 	; Default tray menu items (Script Paused/Exit) will not be shown.
    TraySetClick(16)
    $TShow = TrayCreateItem("Show Kodi")
    $THide = TrayCreateItem("Hide Kodi")
    TrayCreateItem("")
    $TKExit = TrayCreateItem("+K Exit")
    TrayCreateItem("")
    $TExit = TrayCreateItem("Exit")
    TraySetState()
    TraySetToolTip("Kodi.aHide - klick to show/hide it :)")
    Global $sRead, $iSpec
    Global $ix, $Itz, $iSmon = 0
    Global $iAktiv = 1
    ;sampling time--------------------------------------------
    Global $itw = IniRead(@ScriptDir & "\Kodi-CS.ini", "Timings", "itw", "")
    ;polling time (-Kodi is still active? / Kodi want visible /Kodi want hide)--------------------
    Global $its = IniRead(@ScriptDir & "\Kodi-CS.ini", "Timings", "its", "")
    $its = ($its/$itw)
    Global $it = $its
    ;Movimode------------------------------------------------
    ;~ Global $KMMode = IniRead(@ScriptDir & "\Kodi-CS.ini", "Moviemode", "Kodi_Moviemode_aktiv", "")
    IniWrite(@ScriptDir & "\Kodi-CS.ini", "Moviemode", "Kodi_Moviemode_aktiv", 0)
    ;AutoHide-------------------------------------------------
    Global $KHideStart = IniRead(@ScriptDir & "\Kodi-CS.ini", "AutoHide", "Hide_Kodi_at_Start", "")
    ;Pfad von Kodi--------------------------------------------
    Global $KodiPfad = IniRead(@ScriptDir & "\Kodi-CS.ini", "Verzeichnis", "Kodi_Pfad", "")
    Global $KGUISetPfad = IniRead(@ScriptDir & "\Kodi-CS.ini", "Verzeichnis", "Kodi_GUISet_Pfad", "")
    Global $sSearch = IniRead(@ScriptDir & "\Kodi-CS.ini", "Verzeichnis", 'sSearch', "")
    Global $sReplace = IniRead(@ScriptDir & "\Kodi-CS.ini", "Verzeichnis", 'sReplace', "")
    ;Shortcuts------------------------------------------------
    Global $SCShow = IniRead(@ScriptDir & "\Kodi-CS.ini", "Shortcuts", "SCShow", "")
    Global $SCHide = IniRead(@ScriptDir & "\Kodi-CS.ini", "Shortcuts", "SCHide", "")
    ;Setzte Shortcuts----------------------------------------
    If $SCHide = $SCShow Then
    HotKeySet($SCShow, "_SCSh")
    Else
    HotKeySet($SCShow, "_SCShow")
    HotKeySet($SCHide, "_SCHide")
    Endif
    ;Aufruf-------------------------------------------------
    If DllCall("user32.dll", "int", "GetSystemMetrics", "int", 80)[0] = 2 then
    	$iSmon = 1
    	Local $sRead = FileRead($KGUISetPfad)
    	If StringInStr($sRead, $sSearch) Then
    		Local $fH = FileOpen($KGUISetPfad, 2)
    		FileWrite($fH, StringReplace($sRead, $sSearch, $sReplace))
    		FileClose($fH)
    	EndIf
    endif
    If $KHideStart = 0 then
    	Global $Kodi = run ($KodiPfad)
    	Global $WKodi = WinWait("[CLASS:Kodi]","", 20)		; Wait for start of Kodi (max 20s)
    	_SCShow()
    else
    	Global $Kodi = run ($KodiPfad)
    	Global $WKodi = WinWait("[CLASS:Kodi]","", 20)		; Wait for start of Kodi (max 20s)
    	_SCHide()
    endif
    ;Abfrageschleife---------------------------------------
    While Sleep ($itw)
    ;TrayMenü----------------------------------------------
    	$msg = TrayGetMsg()
    	Select
    		Case $msg = $TKExit
    				Winclose($WKodi, "")
    				If $iSpec = 0 and $iAktiv = 0 then
    					run ("C:\Windows\System32\DisplaySwitch.exe /external")
    				endif
    				For $it = 0 to 200
    					If not ProcessExists($Kodi) then
    						ExitLoop
    					endif
    					Sleep (200)
    				Next
    					ProcessClose($Kodi)
    				Exit
    		Case $msg = $TExit
    			Exit
    		Case $msg = $THide
    			_SCHide()
    		Case $msg = $TShow
    			_SCShow()
    		Case $msg = $TRAY_EVENT_PRIMARYDOWN
    			If $ix = 1 then
    				_SCHide()
    			Else
    				_SCShow()
    			endif
    	EndSelect
    If $it >= $its Then
    	$it = 0
    	;Wenn Kodi beendet, auch TrayProg beenden------------------
    	If $Itz >= 8 then
    		$Itz=0
    		If not ProcessExists($Kodi) then
    			If not ProcessExists("Kodi.exe") then
    				If $iSpec = 0 then
    					run ("C:\Windows\System32\DisplaySwitch.exe /external")
    				endif
    				Exit
    			endif
    		endif
    	Else
    		$Itz = ($Itz+1)
    	EndIf
    	;erweitern und Kodi auf diesem anzeigen-------------------
    	If $iAktiv = 1 Then
    		If IniRead(@ScriptDir & "\Kodi-CS.ini", "Moviemode", "Kodi_Moviemode_aktiv", "") = 1 then
    			$iAktiv = 0
    			IniWrite(@ScriptDir & "\Kodi-CS.ini", "Moviemode", "Kodi_Moviemode_aktiv", 0)
    			If $iSmon = 0 then
    				If DllCall("user32.dll", "int", "GetSystemMetrics", "int", 80)[0] = 1 then
    					$iSpec = 0
    					run ("C:\Windows\System32\DisplaySwitch.exe /extend")
    					Sleep(1500)
    				Else
    					$iSpec = 1
    				endif
    			endif
    			_SCShow()
    			If $iSmon = 0 then								
    				WinMove($WKodi, "", -1920, 0,1920, 1080)	
    			endif											
    		EndIf
    	;Minimieren und nach rechts verschieben------------------
    	elseif $iAktiv = 0 then
    		If WinGetState ( $WKodi,"")	= "23" Then
    			$iAktiv = 1									
    			If $iSmon = 0 Then
    				WinMove($WKodi, "", 0, 0,1920, 1080)
    				If $iSpec = 0 then
    					run ("C:\Windows\System32\DisplaySwitch.exe /external")
    				endif
    			endif
    		endif
    	endif
    Else
    	$it = ($it+1)
    EndIf
    WEnd
    ;___________________________________________________
    Func _SCSh()
    	If $ix = 1 then
    		_SCHide()
    	Else
    		_SCShow()
    	endif
    EndFunc
    Func _SCShow()
    			$ix = 1
    			TraySetIcon("iShow.ico", 0)
    			TraySetToolTip("Kodi is visible -click to hide it ;)")
    	WinSetState($WKodi, "", @SW_MAXIMIZE)
    	Local Const $sCLSID_TaskbarList = "{56FDF344-FD6D-11d0-958A-006097C9A090}"
    	Local Const $sIID_ITaskbarList = "{56FDF342-FD6D-11d0-958A-006097C9A090}"
    	Local Const $sTagITaskbarList = "HrInit hresult(); AddTab hresult(hwnd); DeleteTab hresult(hwnd); ActivateTab hresult(hwnd); SetActiveAlt hresult(hwnd);"
    	; Create the object.
    	Local $oTaskbarList = ObjCreateInterface($sCLSID_TaskbarList, $sIID_ITaskbarList, $sTagITaskbarList)
    	; Initialize the iTaskbarList object.
    	$oTaskbarList.HrInit()
    	$oTaskbarList.AddTab($WKodi)
    	$oTaskbarList = 0
    	;WinMove($wnd, "", -1920, 0,1920, 1080)
    EndFunc
    Func _SCHide()
    			$ix = 0
    			TraySetIcon("iHide.ico", 0)
    			TraySetToolTip("Kodi is hidden :) -click to show it!")
    	WinActivate("[CLASS:Shell_TrayWnd]")
    	WinSetState($WKodi, "", @SW_MINIMIZE)
    	Local Const $sCLSID_TaskbarList = "{56FDF344-FD6D-11d0-958A-006097C9A090}"
    	Local Const $sIID_ITaskbarList = "{56FDF342-FD6D-11d0-958A-006097C9A090}"
    	Local Const $sTagITaskbarList = "HrInit hresult(); AddTab hresult(hwnd); DeleteTab hresult(hwnd); ActivateTab hresult(hwnd); SetActiveAlt hresult(hwnd);"
    	; Create the object.
    	Local $oTaskbarList = ObjCreateInterface($sCLSID_TaskbarList, $sIID_ITaskbarList, $sTagITaskbarList)
    	; Initialize the iTaskbarList object.
    	$oTaskbarList.HrInit()
    	$oTaskbarList.DeleteTab($WKodi)
    	$oTaskbarList = 0
    EndFunc
    Alles anzeigen


    Falls jemand noch etwas einfällt um das Ganze eleganter zu lösen,
    oder allgein Verbesserungsvorschläge zu meinem Programm/Programmierstil hat (vorallem um die CPU belastung zu veringern),
    immer her damit ;)


    Danke für eure Hilfe,

  • Monitor schaltet sich nicht mehr ab bei "@SW_hide"

    • Harald654
    • 20. Juni 2015 um 17:52

    Für $wnd setzt ich mein Programm ein oder? Brauch ich für dein Code sonst noch irgendwelche Konstanten?
    Bei mir minimiert/wiederherstellt der Code das Programm, aber in der Taskbar wird es noch angezeigt (also wie bei @SW_MINIMIZE alleine, _DelTab($wnd) scheint keine Auswirkungen zu haben, ist das vielleicht Betriebssystem abhängig? ich nutze Win 8.1).

    Code
    Global $wnd = "Kodi"
    WinSetState($wnd, "", @SW_MINIMIZE)
    _DelTab($wnd) ;Entfernt den Taskbar Eintrag
    ;~ WinSetState($wnd, "", @SW_RESTORE)
    ;~ _AddTab($wnd) ;Fügt einen neuen Taskbar Eintrag hinzu
    Func _AddTab($wnd)
    	Local Const $sCLSID_TaskbarList = "{56FDF344-FD6D-11d0-958A-006097C9A090}"
    	Local Const $sIID_ITaskbarList = "{56FDF342-FD6D-11d0-958A-006097C9A090}"
    	Local Const $sTagITaskbarList = "HrInit hresult(); AddTab hresult(hwnd); DeleteTab hresult(hwnd); ActivateTab hresult(hwnd); SetActiveAlt hresult(hwnd);"
    	; Create the object.
    	Local $oTaskbarList = ObjCreateInterface($sCLSID_TaskbarList, $sIID_ITaskbarList, $sTagITaskbarList)
    	; Initialize the iTaskbarList object.
    	$oTaskbarList.HrInit()
    	$oTaskbarList.AddTab($wnd)
    	$oTaskbarList = 0
    EndFunc
    Func _DelTab($wnd)
    	Local Const $sCLSID_TaskbarList = "{56FDF344-FD6D-11d0-958A-006097C9A090}"
    	Local Const $sIID_ITaskbarList = "{56FDF342-FD6D-11d0-958A-006097C9A090}"
    	Local Const $sTagITaskbarList = "HrInit hresult(); AddTab hresult(hwnd); DeleteTab hresult(hwnd); ActivateTab hresult(hwnd); SetActiveAlt hresult(hwnd);"
    	; Create the object.
    	Local $oTaskbarList = ObjCreateInterface($sCLSID_TaskbarList, $sIID_ITaskbarList, $sTagITaskbarList)
    	; Initialize the iTaskbarList object.
    	$oTaskbarList.HrInit()
    	$oTaskbarList.DeleteTab($wnd)
    	$oTaskbarList = 0
    EndFunc
    Alles anzeigen
  • Monitor schaltet sich nicht mehr ab bei "@SW_hide"

    • Harald654
    • 20. Juni 2015 um 13:18

    Hallo bernd670,

    hab ich auch schon versucht, aber auch wenn ich das Programm zuerst mit @SW_MINIMIZE minimiere und dann erst mit @SW_HIDE  verstecke, habe ich das Problem das sich mein Bildschirm nicht mehr abschaltet. :(

  • Monitor schaltet sich nicht mehr ab bei "@SW_hide"

    • Harald654
    • 20. Juni 2015 um 09:35

    Hallo misterspeed,

    ich habe so etwas ähnliches schon im Forum von Kodi angefragt, das Programm ist nicht für Multitasking oder als Hintergrunddienst entwickelt oder gedacht. Ich könnte natürlich eine Feature Request Anfrage aufmachen, aber ich denke nicht das mein spezielles Problem für viele Andere von nutzen sein wird.
    Zudem unterstützt das Programm ja das Abschalten des Monitor wenn es geöffnet oder minimiert ist, nur mit "@SW_HIDE" wird das Abschalten des Monitors verhindert.

    Ich habe auch mal das Programm RTray ausprobiere, was eigentlich das gleiche macht wie der "@SW_HIDE" Befehl (ist glaube ich sogar mit Autoit geschrieben). Damit tritt das Problem nicht auf, der Monitor schaltet wie gewohnt ab, obwohl ich das Programm mit RTray in den Hintergrund verschoben habe (wenn ich danach zusätzlich noch @SW_HIDE" ausführe schaltet der Monitor wieder nicht ab).

    Ich hab mal versucht die angegeben Codes auf der sourceforge Seite von RTray zu durchsuchen, um zu verstehen was das Programm anders macht. Leider finde ich weder die Codezeilen dafür, noch sieht es für mich nach Autoit aus^^

    Versteht vielleicht jemand den Code und kann mir sagen wie RTray das macht, oder weiß jemand noch eine andere Möglichkeit um Programme zu "verstecken"?


    Gruß,

  • Monitor schaltet sich nicht mehr ab bei "@SW_hide"

    • Harald654
    • 19. Juni 2015 um 23:01

    Hallo,

    Da ich gewisse Funktionen eines Programms (Kodi) gerne immer verfügbar haben möchte, hab ich mir ein kleines Skript geschrieben, um das Programm versteckt zu starten run ($KodiPfad, "", @SW_HIDE) und per Tastenkombination zwischen sichtbar und unsichtbar umzuschalten WinSetState($WKodi,"",@SW_SHOW) bzw. WinSetState($WKodi,"",@SW_HIDE).

    Funktioniert im Prinzip alles super (sogar das GUI-Rendering des Programmes schaltet sich ab, wodurch die CPU Auslastung kaum wahrnehmbar ist :) ),
    nur schaltet sich der Monitor nicht mehr nach der eingestellten Zeit ab, wenn ich das Programm mit "@SW_HIDE" in den Hintergund verschiebe.
    Wenn das Programm Angezeigt wird bzw. im Vollbild läuft (ist keine echte Vollbildanwendung, wird als Fenster ohne Rand dargestellt), oder ich das Programm mit "@SW_MINIMIZE" minimiert habe, funktioniert das Abschalten des Monitors ohne Probleme. Nur mit "@SW_HIDE" nicht! ?(
    Ich kann in dem Programm auch eine Zeit einstellen, nachdem der Bildschirm bei Inaktivität abgeschaltet wird, aber auch das funktioniert nicht bei @SW_HIDE.
    (Ich könnte das Programm natürlich auch nur mit "@SW_MINIMIZE" minimieren, aber da es immer ausgeführt werden soll stört mich es mich doch sehr, wenn immer die Anzeige von dem Programm in der Taskleiste ist.)


    Kennt jemand dieses Problem bzw. hat jemand eine Lösung dafür?

    Es kann gut sein dass an dem Programm selbst liegt (es unterdrückt ja auch das Abschalten des Bildschirms wenn z.B. ein Video läuft),
    kann man dem Programm vielleicht die Berechtigung entziehen wodurch es den Bildschirm aktiv hält, oder das aktiv Halten irgendwie verhindern?


    Gruß,

  • in .xml Datei Werte ändern

    • Harald654
    • 18. Juni 2015 um 23:17

    Vielen Dank,
    funktioniert super :)

  • in .xml Datei Werte ändern

    • Harald654
    • 17. Juni 2015 um 08:54

    Hallo,

    ich würde gerne einen Wert in einer .xlm Datei abändern.
    Ich glaube ich habe auch schon gefunden womit das geht, und zwar mit "StringRegExpReplace", nur leider werde ich aus dem Beispiel überhaupt nicht schlau wie das funktioniert. ?(

    Konkret will ich in einer .xlm Datei (wo sehr viele Werte enthält) überprüfen ob als "screenmode" folgendes angegeben ist:
    <screenmode>10192001080060.00000pstd</screenmode>
    Fals bei "screenmode" etwas anderes steht, im normalfall:
    <screenmode default="true">DESKTOP</screenmode>
    soll das durch:
    <screenmode>10192001080060.00000pstd</screenmode>
    ersetzt werden


    Hat jemand eine Idee wie ich das am besten mache?


    Gruß,

    Dateien

    Datei.JPG 272,61 kB – 0 Downloads
  • eingestellte Zeit für "Bildschirm ausschalten" abfragen (Windows 8)

    • Harald654
    • 14. Mai 2015 um 10:27

    Hast recht, ist doch dabei.
    Das ist genau was ich suche, vielen dank :)

    Jezt muss ich es nur noch die GUID mit Autoit auslesen.
    Ich habs mal mit:

    [autoit]

    ShellExecuteWait('powercfg.exe',' -query [3c0bc021-c8a8-4e07-a973-6b14cbcb2b7e]')

    [/autoit]

    versucht, aber bekomme immer nur eine 1 zurück.
    Weißt du vielleicht auch wie ich den Index:
    Index der aktuellen Wechselstromeinstellung: 0x00001c20
    mit Autoit auslesen kann?

  • eingestellte Zeit für "Bildschirm ausschalten" abfragen (Windows 8)

    • Harald654
    • 14. Mai 2015 um 09:01

    Hallo Bernd,

    ich habe

    [autoit]

    powercfg -query

    [/autoit]

    mit CMD mal durchgeschaut, kann da aber leider keine Monitor-Ausschaltzeit finden. :/


    Gruß,

  • eingestellte Zeit für "Bildschirm ausschalten" abfragen (Windows 8)

    • Harald654
    • 13. Mai 2015 um 22:54

    Hallo,

    ich würde gerne auslesen welche Zeit in den Energieoptionen bei "Bildschirm ausschalten" eingestellt ist.

    zum verändern benutze ich diesen Befehl:

    Code
    ShellExecuteWait('powercfg.exe',' -change -monitor-timeout-ac '&Time_n)

    Funktioniert auch, ich würde nur gerne bevor ich eine neue Zeit einstelle zuerst die bisher eingestellt Zeit auslesen.
    Mit "powercfg" und "-query" müsste man doch auch Einträge abfragen können (klick), aber ich kenne nicht die GUID von dem Registryeintrag wo der Wert gespeichert ist.


    Kennt jemand die passende GUID oder hat eine Idee wie ich die Zeit sonst noch auslesen könnte?


    Gruß,

  • Programme durch ausschalten des Monitors beenden

    • Harald654
    • 23. Januar 2015 um 06:47

    Hmmm,
    hast du mir ein Beispiel wie ich den Dienst mit RunWait eingeben muss um ihn zu beenden?


    Gruß,

  • Programme durch ausschalten des Monitors beenden

    • Harald654
    • 22. Januar 2015 um 00:25

    Konkret ist das bei dem Denktopclient für Pushbullet so (ist ein Programm um Android-Benachrichtigungen auf dem PC anzuzeigen), dort kann ich mit WinClose nur die geöffnete Anwendung/Fenster schließen, aber nicht den Dienst im Infobereich (was aber eine Super lösung für mein anderes Problem ist das Pushbullet immer als Fenster Startet :) )

    Und ein Dienstprogramm für meine 3D Maus (3D Connection) lasst sich auch nicht mittels WinClose beenden (das mir aber auch nicht so wichtig)

    Die Programmname dürften ja die gleichen sein wie für ProcessClose? (die hab ich mir die einfach aus dem Tankmanager geholt)


    Gruß,

  • Programme durch ausschalten des Monitors beenden

    • Harald654
    • 21. Januar 2015 um 17:18

    Danke für das Skript Oscar, das ist um einiges schöner wie meins :)

    Mit WinClose (bzw. Winkill) lassen Sich leider einige Programme im Infobereich nicht ändern :/
    Gibt es den noch ne alternative um die Proramme zu beenden wobei auch das Logo im Infobereich verschindet?


    Gruß,

  • Programme durch ausschalten des Monitors beenden

    • Harald654
    • 16. Januar 2015 um 14:59

    Niemand ne Idee?? :/

  • Programme durch ausschalten des Monitors beenden

    • Harald654
    • 7. Januar 2015 um 16:22

    Hallo,
    ich konnte mich leider erst jezt wieder mit meinem Programm befassen.
    Vielen dank für eure Hilfe.
    ( @funkey und Einexage mit den Beispielen muss ich mich mal an einem freien Abend beschäftigen, hab erst vor kurzem mit dem Programmieren angefangen ;) )

    Ich hab es jetzt mal relativ einfach mit "GetIdleTime" umgesetzt.

    Code
    #include <Timers.au3>
    
    
    ;Variablen Bestimmung:
    $Display_off_time = 30*60*1000 ;Minuten
    $Abfrageintervall= 2*1000 ; Sekunden
    
    
    $Prog_Pfad1 = "C:\Program Files\3Dconnexion\3DxWare\3DxWinCore64\3DxService"
    $Prog_Pfad2 = "C:\Program Files\Logitech\GamePanel Software\LCD Manager\LCDMon"
    $Prog_Pfad3 = "C:\Program Files (x86)\Pushbullet\pushbullet"
    $Prog_Pfad4 = "C:\Program Files\Rainmeter\Rainmeter"
    
    
    ;Programm Start
    If ProcessExists("3DxService.exe") Then
       $Prog1 = "3DxService.exe"
    else
       $Prog1 = Run($Prog_Pfad1)
    EndIf
       If ProcessExists("LCDMone.exe") Then
       $Prog2 = "LCDMon.exe"
    else
       $Prog2 = Run($Prog_Pfad2)
    EndIf
    If ProcessExists("pushbullet.exe") Then
       $Prog3 = "pushbullet_app"
    else
       $Prog3 = Run($Prog_Pfad3)
    EndIf
    If ProcessExists("Rainmeter.exe") Then
       $Prog4 = "Rainmeter.exe"
    else
       $Prog4 = Run($Prog_Pfad4)
    EndIf
    
    
    ;Schleife
    While 1
     Call ("Display_on")
     call ("Display_off")
     WEnd
    
    
    ;Unterprogramme
    Func Display_on()
    While 2
       If _Timer_GetIdleTime() > $Display_off_time Then
       ProcessClose ($Prog1)
       ProcessClose ($Prog2)
       ProcessClose ($Prog3)
       ProcessClose ($Prog4)
       ExitLoop
       endif
    Sleep($Abfrageintervall*100)
    WEnd
    EndFunc
    
    
    Func Display_off()
    While 2
       if _Timer_GetIdleTime() < $Display_off_time Then
       $Prog1 = Run($Prog_Pfad1)
       $Prog2 = Run($Prog_Pfad2)
       $Prog3 = Run($Prog_Pfad3)
       $Prog4 = Run($Prog_Pfad4)
       ExitLoop
       endif
    Sleep ($Abfrageintervall)
    WEnd
    EndFunc
    Alles anzeigen

    funktioniert soweit ganz gut ( für Verbesserungsvorschläge bin ich natürlich immer offen :) ).
    Nur startet das Programm "Pushbullet" nicht versteckt im Infobrechich (bzw. Systemtray oder wie man das auch immer nennt) sondern öffnet jedemal das Anwendungsfenster. Gibt es eine Möglichkeit das Programm gleich versteckt im Infobereich zu starten ober nach dem Start zu minimieren?


    Was auch noch relativ unschön ist, dass sich der Infobereich nach dem Beenden der Programme nicht automatisch aktualisiert und die Widgets noch angezeigt werden bis ich mit der Maus darüber fahre.[Blockierte Grafik: http://www.bilderbob.de/galerie/142064369020117/2e3eeaecf41e3597542fd186d439e1d4.jpg][Blockierte Grafik: http://www.bilderbob.de/galerie/142064369020117/2e3eeaecf41e3597542fd186d439e1d4.jpg]
    Ist des möglich den Infobereich mit Autoit zu aktualisieren?


    Gruß,

  • Programme durch ausschalten des Monitors beenden

    • Harald654
    • 17. November 2014 um 01:48

    Hallo,

    Ich würde gerne ein Programm schreiben welches überprüft ob der Monitor (durch Windows) abgeschaltet wurde.
    Wenn ja sollen ein paar Programme beendet werden.
    Wenn der Moitor wieder aktiviert wird (z.B. druch drücken einer Maustaste) sollen die Programme wieder gestartet werden.
    I
    Das Programm an sich bekomme ich hin, ich weiß nur nicht wie ich überprüfen kann ob der Monitir an/ oder aus ist, hat jemand von euch ne Idee?

    Mein Betriebssystem: Win 8.1 pro


    Hintergrund ist dass mein Rechner auch als Homeserver genutzt wird (24h), und ich die Programme (in der Taskbar) welche ich nur wärend ich vor dem Pc sitze benötigeauch nur dann laufen, um Ressourcen zu sparen.

    Gruß,

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™