Solved

How to detect when a user logs on from a vb service

Posted on 2008-10-10
4
219 Views
Last Modified: 2013-11-07
I have a vb program that runs as a service. I currently have code that can get the user that is currently logged in, but I have no idea when to run it, so it is currently in a timer. All I need is an event that is triggered when a user logs on. I attatched the code I use to get the current user in case anyone is interested.
Dim User As String = ""
            Dim q1 As New ManagementObjectSearcher("select * from Win32_ComputerSystem")
            Dim qc As ManagementObjectCollection = q1.Get
            For Each Mo As ManagementObject In qc
                User = Mo("username")
                Exit For
            Next

Open in new window

0
Comment
Question by:andy148
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
4 Comments
 
LVL 13

Expert Comment

by:SameerJagdale
ID: 22693607
0
 

Author Comment

by:andy148
ID: 22717560
I tried the link, but it didn't help much, I'm looking for an event that is fired when a user logs in, preferably without changing any settings on their computer.
0
 
LVL 13

Accepted Solution

by:
SameerJagdale earned 500 total points
ID: 22740874
check the following code:
 

Private Shared Sub Main(ByVal args() As String)
        Dim w As ManagementEventWatcher = Nothing
        Dim q As WqlEventQuery = New WqlEventQuery
        q.EventClassName = "__InstanceOperationEvent"
        q.WithinInterval = New TimeSpan(0, 0, 3)
        ' query interval
        q.Condition = "TargetInstance ISA 'Win32_LogonSession'"
        w = New ManagementEventWatcher(q)
        AddHandler w.EventArrived, AddressOf Me.LogonEventArrived
        w.Start
        Console.ReadLine
    End Sub
    
    Public Shared Sub LogonEventArrived(ByVal sender As Object, ByVal e As EventArrivedEventArgs)
        'Get the Event object and display it
        For Each pd As PropertyData In e.NewEvent.Properties
            
        Next
    End Sub

Open in new window

0
 

Author Closing Comment

by:andy148
ID: 31505239
thanks!!
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

This article describes relatively difficult and non-obvious issues that are likely to arise when creating COM class in Visual Studio and deploying it by professional MSI-authoring tools. It is assumed that the reader is already familiar with the cla…
Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…
This video shows how to use Hyena, from SystemTools Software, to update 100 user accounts from an external text file. View in 1080p for best video quality.

737 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question