Prozess stoppt wenn Windows gesperrt wird

  • VB.NET

Es gibt 16 Antworten in diesem Thema. Der letzte Beitrag () ist von Hotdogxxxx.

    Prozess stoppt wenn Windows gesperrt wird

    Hallo Ihr wissenden,

    Ich habe mir eine kleine Anwendung geschrieben, dass Informationen zu definierten Zeiten aus dem Internet abruft und in einer SQL Datenbank abspeichert.

    Soweit funktioniert alles auch ohne Probleme. Aber wenn ich den Computer bei Abwesenheit mit Windows Taste + L Taste sperre, dann wird das Programm im Hintergrund nicht weiter ausgeführt. Es stoppt und erst wenn ich den Computer wieder entsperre wird der Code erneut gestartet.

    Muss ich irgendwo im Code definieren, dass das Programm im Hintergrund weiterlaufen soll, wenn der Zugriff für den Anwender gesperrt wurde?

    Über Hilfe würde ich mich freuen, den im Web habe ich nichts gefunden.

    DANKE.

    Lieben Gruß,
    Chris :D
    Ja ich bin mir ganz sicher, dass es nicht in den Standby geht.

    Das Programm wird hauptsächlich im Hintergrund ausgeführt und liegt in der Taskleiste. Nach dem Ausführen werden Balloon-tips zum Status angezeigt. Kann es daran liegen?

    Hotdogxxxx schrieb:

    Ich habe mir eine kleine Anwendung geschrieben
    Dann solltest Du einen Dienst draus machen.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    Hotdogxxxx schrieb:

    Was wäre der Vorteil?
    Ein Dienst wird beim Sperren nicht beendet.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Und eine Anwendung wird generell gesperrt? Ist es nicht möglich sonst zu verhindern, dass die Anwendung pausiert während der Rechner gesperrt ist?

    Ich frage, da meine "kleine" Anwendung nicht klein genug ist, um alles nochmal umzuprogrammieren.
    Außerdem benötige ich eine Eingabeform, um die Anwendung zu steuern und LOG Protokolle auszulesen.
    Ein reiner Dienst fällt also aus.
    Bei welcher Gelegenheit wird Dein Windows gesperrt?
    Dies solltest Du deaktivieren.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    RodFromGermany schrieb:

    Bei welcher Gelegenheit wird Dein Windows gesperrt?
    Dies solltest Du deaktivieren.


    Wie ich bereits geschrieben habe, sperre ich den Computer selbst mit Windows Taste + L Taste wenn ich nicht am Arbeitsplatz bin. Der Rechner fährt also nicht in den Standby sondern er loggt sich nur aus. Ich möchte dies also nicht unterbinden.

    Die frage ist also wie kann ich verhindern, dass die Anwendung "auf Eis gelegt wird" wenn ich mich kurz auslogge.
    Wenn Du erkennst, dass Windows gesperrt wird, solltest Du einen entsprechenden Dienst aktivieren und diesen pausieren, wenn Windows reaktiviert wird.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Ich habe noch nie einen Dienst programmiert aber wenn ich mich nicht irre, muss dieser in der Registrierung eingetragen werden.
    Das möchte ich nicht!!
    Außerdem basiert die Anwendung auf Webbrowser Controls und ich weiß nicht ob dies in einem Dienst möglich ist.
    Und wie bereits geschrieben ist es sehr aufwendig alles nochmal umzuprogrammieren und daher möchte ich das vermeiden.

    Hotdogxxxx schrieb:

    ob dies in einem Dienst möglich ist
    Nein.
    Offensichtlich hast Du ein Problem, dass sich so einfach nicht lösen lässt. :/
    Vermeide also das Sperren Deines Betriebssystems.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Zu meinem Verständnis: Heißt das, dass eine Anwendung ohne Dienst immer gesperrt wird wenn ich mich auslogge.

    Erklärung zum Ablauf der Anwendung:
    Es wird ein webcontrol erstellt, dass eine URL aufruft und den HTML Code ausliest. Der HTML Code wird um definierte Parameter angepasst und es werden codeseitig Buttons im HTML Code ausgeführt. Das Resultat führt zu einer XML Datei, die heruntergeladen und weiter ausgelesen wird. Das Ergebnis wird dann in eine SQL Datenbank gespeichert.
    Das passiert zu festen Zeiten und mit mehreren URL Links.

    Im Prinzip werden also Anwender eingaben auf einer Internetseite simuliert und das Ergebnis wird in einer Datenbank gespeichert.
    Ich könnte mir also Vorstellen, dass dies nicht möglich ist, wenn der Rechner gesperrt ist und somit theoretisch kein Anwender an PC sitzt.

    Alternativ:
    Ich weiß, das man auslesen kann, ob der Rechner gesperrt ist. Wäre es möglich, Programmseitig den Benutzer wieder anzumelden, die Anwendung durchlaufen zu lassen und wieder abzumelden? PS: ich habe keine Adminrechte.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Hotdogxxxx“ ()

    Hotdogxxxx schrieb:

    Es wird ein webcontrol erstellt
    Das solltest Du nicht brauchen, ein WebRequest-Objekt tut es auch. Und damit wärst Du wieder Dienst-kompatibel.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    Hotdogxxxx schrieb:

    Benutzerrechte
    Dann hole Dir die Rechte, zu mindest zur Installation des Dienstes oder such Dir eine andere Aufgabe.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!