none
Interaktive Sitzung ermittlen RRS feed

  • Allgemeine Diskussion

  • Hallo!

    ein Programm soll sowohl per GUI als auch der Kommandozeile gesteuert werden können (z.B. Taskplaner).
    Nun kann das Programm mit einem Benutzer gestartet werden, ohne dass dieser wirklich am System angemeldet ist, was GUI Ausgaben sinnlos macht.

    Wie kann man das erkennen?

    Gruß und Danke für die Hilfe vorab!

    Herbert

    Dienstag, 28. Juni 2011 08:07

Alle Antworten

  • Hallo Herbert,

    da sowohl GUI als auch Kommandozeilensteuerung bei einem nicht existenten User, der die Steuerung vornehmen könnte, überflüssig ist, wäre es wohl das einfachste, wenn Du einfach einen Parameter entgegennimmst, der dir sagt, dass die Abarbeitung im Batch erfolgen soll.

      http://msdn.microsoft.com/de-de/library/microsoft.visualbasic.applicationservices.consoleapplicationbase.commandlineargs.aspx

      http://msdn.microsoft.com/de-de/library/stws2269.aspx

      ...

     


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community
    Dienstag, 28. Juni 2011 08:41
    Moderator
  • Hallo Stefan,

    im Falle eines angemeldeten Benutzers soll aber der aktuelle Status angezeigt werden.
    Sonst wäre das ja zu einfach.

     

    Gruß

    Herbert

    Dienstag, 28. Juni 2011 10:52
  • Hallo Herbert,

    es ist ja ein User angemeldet. Nur sitzt der eben nicht am Rechner und sieht daher auch nichts. Daher wäre die Steuerung über Kommandozeilenparameter wohl das einfachste.

    Bei einem normalen Start ohne Parameter kannst Du die GUI oder Kommandozeilenausgabe anzeigen, mit dem entsprechenden Parameter eben nicht.

    Oder meinst Du den Fall, dass User 1 am Rechner sitzt und deine Anwendung mit User 2 gestartet wird? Falls ja, soll User 1 dann die Anwendung normal sehen?

     

     


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community
    Dienstag, 28. Juni 2011 11:08
    Moderator
  • Hallo Stefan,

    also noch mal. Das Programm wird per Taskplaner mit einer Menge N an Kommandozeileparametern gestartet. Das ist nicht das Thema!

    Wenn nun der Fall sein sollte, dass der Benutzer mit dem das Programm gestartet wurde auch tatsächlich eine aktive Windows Sitzung hat würde ich gerne wissen wie man das heutzutage ermittlet. Ich kann mich noch daran erinnern als ich mit VB6 programmiert habe bis ich mal auf eine entsprechende Funktion (interactive user o.s.ä.) gestossen.

    Wäre schön wenn mir jemand diese  Frage beantworten kann.
    Danke!

    Gruß

    Herbert

    Dienstag, 28. Juni 2011 11:21
  • Hallo Herbert,

    ggf. hilft Dir hier die Environment.UserInteractive Eigenschaft weiter.


    Thorsten Dörfler
    Microsoft MVP Visual Basic
    vb-faq.de
    Donnerstag, 14. Juli 2011 19:21
    Moderator