it-swarm.com.de

Wie kann ich feststellen, wann Windows und alle Startprogramme den Startvorgang abgeschlossen haben?

Mein Computer (Windows 7 64-Bit) benötigt ca. 3-4 Minuten, um vollständig zu starten. Gibt es eine Möglichkeit, die anzeigt, dass der Startvorgang abgeschlossen ist, eine Art Sound/Popup, entweder mithilfe der integrierten Windows-Funktion oder einer Anwendung eines Drittanbieters?

Ich benötige, wenn beide Fenster und alle Startprogramme fertig gebootet sind

Ich sitze normalerweise irgendwann und warte vor der Maschine, diese Zeit könnte besser für einen Quickie genutzt werden.

So sieht es aus, wenn die Festplattenanzeige aufhört zu blinken:

enter image description here

36
Firee

Hier gibt es mehrere potenziell hilfreiche Antworten, aber ich denke, es gibt zwei wichtige Punkte, die nicht angesprochen wurden:

  1. Nein, es ist nicht möglich programmgesteuert festzustellen, dass Windows und alle Startprogramme den Startvorgang beendet haben. Dies ist im Wesentlichen das Halteproblem , und kein Programm da draußen wird in der Lage sein, die Frage zu beantworten "Für dieses beliebige Programm, an welchem ​​Punkt sollten wir sagen, dass es hat wurde geladen? ".

  2. Was ist das eigentliche Problem, das Sie zu lösen versuchen? Alle Antworten hier versuchen, eine Lösung für Ihre Frage zu finden, aber die Frage selbst scheint einige wichtige Informationen zu vermissen . Wir wollen Ihr Problem lösen, nicht nur die Frage beantworten .

Wenn ich Ihre Frage noch einmal lese und mich nur an Ihre Aussagen halte, würde ich eine der folgenden Antworten erhalten:

  • Machen Sie sich keine Sorgen und starten Sie Ihren Computer. Vordergrundaufgaben werden priorisiert und es sollte keine Rolle spielen, ob Hintergrundaufgaben ausgeführt werden, es sei denn, Sie haben etwas wirklich Ungewöhnliches vor sich.

Oder:

  • Beobachten Sie das System einige Male manuell und ermitteln Sie die maximale Zeit, die erforderlich ist, um das System gemäß den verfügbaren Messwerten "betriebsbereit" zu machen. Holen Sie sich ein kleines Timer-Programm oder Skript und fügen Sie es dem Start Ihres Systems hinzu. Es kann eine Nachricht anzeigen oder einen Ton abspielen, wenn die von Ihnen gewählte Zeit abgelaufen ist.

Dies beantwortet Ihre aktuelle Frage möglicherweise nicht direkt, ist aber hoffentlich hilfreich.

24
Nick

Warum nicht Windows Task Scheduler und Event ID 100 verwenden, um einen benutzerdefinierten Sound abzuspielen, wenn Windows wirklich fertig ist?

Wählen Sie unter Auslöser "Bei einem Ereignis" und

  • Protokoll: LogMicrosoft-Windows-Diagnostics-Performance/Operational
  • Quelle: Diagnoseleistung
  • Ereignis-ID: 100

Wählen Sie unter Aktionen "Programm starten" mit

  • Programm/Skript: "%ProgramFiles(x86)%\Windows Media Player\wmplayer.exe"
  • Argumente hinzufügen: "%windir%\Media\Windows Logon Sound.wav"

    Event ID: 100   
    Decription: Windows has started up
    

    Quelle Ereignis-ID 100: Windows-Diagnose-Leistung

11
nixda

Ich habe ein kostenloses Programm installiert, das ich seit langer Zeit benutze, Soluto: https://www.soluto.com/

Ich bin nur ein Benutzer, nicht verbunden.

Für mich geht das.

Es wird heruntergezählt und Sie können auswählen, was Sie beim Booten laden möchten.

Sie können den Start auch verzögern.

8
Xavierjazz

Windows behandelt das Beenden des Startvorgangs , wenn es nach Erreichen der Desktop-Benutzeroberfläche 10 Sekunden lang zu 80% im Leerlauf war (ohne CPU- und Festplattenaktivität mit niedriger Priorität).

Um die genaue Startzeit zu ermitteln, verwenden Sie xbootmgr, um festzustellen, warum Windows langsam startet .

8
magicandre1981

Führen Sie dieses Python-Skript beim Start aus. Der Startsound wird abgespielt, sobald die CPU-Auslastung 5 Sekunden lang unter 20 Prozent gesunken ist:

import subprocess
import time

# set these to whatever works for you
# sound will play when cpu load has been < IDLE_PERCENT for IDLE_TIME consecutive seconds
IDLE_TIME = 5
IDLE_PERCENT = 20

# you can execute any program you want by changing the alert function below


def get_load():
    output = subprocess.check_output('wmic cpu get loadpercentage', Shell=True)
    load = output.split()[1]
    return int(load)

def alert():
    subprocess.call([
        r"c:\Program Files (x86)\Windows Media Player\wmplayer.exe",
        r"c:\Windows\Media\Windows Logon Sound.wav"])


idleSeconds = 0

while idleSeconds < IDLE_TIME:
    load = get_load()
    if load < IDLE_PERCENT:
        idleSeconds += 1
    else:
        idleSeconds = 0

    time.sleep(1)

alert()
5
Benjamin Schug

Sie können dem Start einen Ton hinzufügen.

Sie können den Startvorgang verzögern und zuerst einen Soundeffekt ausführen. Das Tool Startup Delayer erledigt dies.

enter image description here

2
stderr

Dies mag nicht sehr effektiv sein, ist aber billig.

Normalerweise schaue ich mir die LED für die Festplattenaktivität an (Sie können sie am Gehäuse an einem Datenbanksymbol erkennen), bis sich die LED stabilisiert und selten blinkt. Dann weiß ich, dass ich den PC jetzt ohne große Verzögerung verwenden kann. Die Festplatte ist normalerweise der Engpass des PCs, und wenn sie nicht intensiv genutzt wird, haben Sie Platz für Ihre Arbeit.

Hoffentlich hilft das.

2
MadeOfAir

Ich hatte nach so etwas gesucht und fand die Antwort

ich werde den eigentlichen Code wahrscheinlich später veröffentlichen, aber hier ist er

http://msdn.Microsoft.com/en-us/library/aa394226%28v=vs.85%29.aspx

speichern Sie einfach den Inhalt des letzten Teils als VBS-Datei und führen Sie ihn aus. Sie können jedes Systemereignis abfragen und die angezeigte Meldung auf einfache Weise extrahieren.

um die Beendigung der Startsequenz zu ermitteln, muss dieses Skript nur so lange ausgeführt werden, bis die Ereignis-ID '100' lautet, was dem Startabschlussprozess in den Systemereignissen entspricht

siehe: http://www.howtogeek.com/72420/how-to-use-event-viewer-to-find-your-pcs-boot-time/

Wenn Sie dieses Skript beim Start haben, werden alle Ereignisse abgefragt und es wird darauf gewartet, dass die Ereignis-ID 100 ist, und Sie werden gewarnt. Das gleiche kann in jedem Skript-Tool wie autoit verwendet werden

Ich wollte nur, dass alle es wissen. denn als ich danach gesucht habe. Alles, was ich fand, war die Windows Task Scheduler Idee oder Soluto am besten. Eigentlich hat Soluto vor einiger Zeit aus irgendeinem Grund aufgehört, an meinem x64-PC zu arbeiten. Also wollte ich selbst ein Drehbuch schreiben, das mich zu dieser endgültigen Lösung führte ...

0
rajeshontheweb

Ich habe es selbst noch nie verwendet, aber mit Windows Task Scheduler können Sie eine Aufgabe erstellen, die ausgelöst wird, um "Beim Start" oder "Bei der Anmeldung" auszuführen. Möglicherweise können Sie eine Aufgabe zum Ausführen eines Powershell-Skripts planen, um auf die Console.Beep () -Methode von .NET Framework zuzugreifen. Sie können es sogar in eine anständige Melodie verwandeln.

Von Hey Scripting Guy! Blog

[console]::beep(500,300)

Ändern Sie den Wert der ersten Zahl, um die Tonhöhe zu ändern (alles, was niedriger als 190 oder höher als 8500 ist, kann nicht gehört werden), und ändern Sie den Wert der zweiten Zahl, um die Dauer zu ändern

Bearbeiten:  Wie sich herausstellt, funktioniert die Console.Beep () -Methode möglicherweise nicht auf 64-Bit-Systemen gemäß der MSDN .NET-Dokumentation. Testete das Piepen in einem PowerShell-Skript und es funktioniert einwandfrei.

Möglicherweise möchten Sie auch in Ihre Startvorgänge einchecken. Sie können dies tun, indem Sie msconfig ausführen und auf services klicken. Sie können auch das Sysinternals-Tool Autoruns verwenden.

0

Bei der Windows-Dokumentation ist die letzte in der Ladereihenfolge die Registrierung currentuser/runOnce (nach dem Startordner). Unabhängig von der Ladereihenfolge können einige Programme eine lange Startzeit benötigen.

Vielleicht kann es eine gute Lösung sein, die CPU-Aktivität in einer Batch-Datei zu beobachten:

@echo off
setlocal ENABLEDELAYEDEXPANSION
set cpuLimit=15
set /a lowCount=0

for /l %%i in (1,1,30) do (
   for /F %%c in ('wmic cpu get loadpercentage ^| findstr "[0-9]"') do (
       echo %%i cpu-Load: %%c  ...lowCnt: !lowCount!
      if %%c gtr %cpuLimit% ( set lowCount=0
      ) else ( set /a lowCount+=1
         if !lowCount! gtr 10 (
            ECHO BEEEEEEP ... mplay32 beep.wav... or something
            exit
         )
      )
   )
   ping -n1 127.0.0.1 >NUL
)

... und BEEEPing nachdem festgestellt wurde, dass in den letzten 10 CPU-Lastprüfungen die CPU-Last unter 15% lag. Diese Batchdatei kann durch Verknüpfung im Startordner oder besser in der Registrierung HKLM\Software\Microsoft\Windows\CurrentVersion\Run gestartet werden

0
Asain Kujovic

Sie schrieben:

"Mein Computer (Windows 7 64-Bit) benötigt ca. 3-4 Minuten, um vollständig hochzufahren ..."

Ein "normaler" Start dauert ungefähr 30 Sekunden , einschließlich des Zugriffs auf das Benutzerkonto. Irgendetwas stimmt nicht und das muss behoben sein. Um dies zu beheben, müssen Sie die Daten abrufen. Ich schlage Ihnen zwei Dienstprogramme vor, um dieses Problem zu beheben:

1) Autoruns

Mit diesem können Sie jeden Prozess, jedes Programm und jeden Treiber überprüfen, die während des Startvorgangs geladen wurden. Tka care: Dies ist ein sehr leistungsfähiges Tool. Löschen Sie KEINE Elemente, es sei denn, Sie wissen, was Sie tun. Sie können jedoch einige Anmelde-Programme deaktivieren ...

2) System Explorer

Mit diesem Tool können Sie alle gestarteten Prozesse und deren Verlauf anzeigen, bis der System Explorer gestartet wird. Es ist auch möglich, alle diese Prozesse zu Sicherheitszwecken zu scannen (im Vergleich zu einer Prozessdatenbank).

Überprüfen Sie dies zuerst, sie geben uns ein Feedback.

Sie können die Dienste auch beim Start mit services.msc und den Status von Geräten mit devmgmt.msc (gelbes Dreieck für defekte Geräte, Festplatte im PIO-Modus anstelle von DMA usw.) in den Windows-Verwaltungstools überprüfen.

Ich hoffe das hilft. Lass uns wissen.

0
climenole