begin process at 2010 02 10 16:52:55
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Système

 > 

Exécution

 > 

Service VB et Utilisateurs


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Service VB et Utilisateurs

mercredi 12 décembre 2007 à 08:35:57 | Service VB et Utilisateurs

FPatrick

Bonjour,

J'ai fait une application qui en tourne en tant que service avec l'ocx ntsvc.

Est-il possible de savoir à partir d'un service si :
* un utilisateur est connecté ou pas.
* un utilisateur ferme une session.
* un utilisateur ouvre une session.
* connaitre le compte qui a ouvert une session.

Sachant que l'application tourne sur le compte système, je ne vois pas comment récupérer cette information.

Merci d'avance pour tous les commentaires et toutes les réponses données.
mercredi 12 décembre 2007 à 09:18:49 | Re : Service VB et Utilisateurs

swan94

Membre Club
Salut,

essayes avec le WMI

Swan94
=================Si la réponse vous convient, merci de l'accepter=================
mercredi 12 décembre 2007 à 09:34:44 | Re : Service VB et Utilisateurs

FPatrick

Peux-tu m'aiguiller s'il te plait ? merci

jeudi 13 décembre 2007 à 02:13:14 | Re : Service VB et Utilisateurs

PCPT

Administrateur CodeS-SourceS
salut,
qu'est-ce que tu appelles le "compte système"?
compte sauvegarde de dell ?
administrateur local?
compte avec pouvoir(s)?


Prenez un instant pour répondre à ce sondage svp
jeudi 13 décembre 2007 à 08:06:40 | Re : Service VB et Utilisateurs

FPatrick

Le compte système est celui utilisé pour lancer la plupart des services dont le planificateur des taches.

Si tu utilises les taches planifiés, tu spécifies un compte spécifique pour l'exécution de ta commande, mais si tu utilises la commande AT, c'est le compte SYSTEM qui est prise en compte.

Tu peux le voire dans le gestionnaire des taches et dans les propriétés du service des taches planifiées.

En ce qui concerne l'interrogation par le WMI, j'ai commencé à chercher mais cela me donne que les informations de la session active, donc le compte système.

Merci d'avance pour les recherches effectuées.
jeudi 13 décembre 2007 à 11:53:06 | Re : Service VB et Utilisateurs

PCPT

Administrateur CodeS-SourceS
Réponse acceptée !
salut....

avec WMI je liste mes types de comptes :
'   [WMI Win32 Helper - Win32_SystemAccount]
    On Local Error Resume Next
    Dim sComputerName as String, WMI_Obj as Object, WMI_ObjProps as Object, ObjClsItem as Object
    sComputerName = Environ$("COMPUTERNAME")
    Set WMI_Obj = GetObject("winmgmts:\\" & sComputerName & "\root\cimv2")
    Set WMI_ObjProps = WMI_Obj.ExecQuery("SELECT * FROM Win32_SystemAccount", , 48)

    For Each ObjClsItem in WMI_ObjProps
        Debug.Print "Caption : " & ObjClsItem.Caption
        Debug.Print "Description : " & ObjClsItem.Description
        Debug.Print "Domain : " & ObjClsItem.Domain
        Debug.Print "InstallDate : " & ObjClsItem.InstallDate
        Debug.Print "LocalAccount : " & ObjClsItem.LocalAccount
        Debug.Print "Name : " & ObjClsItem.Name
        Debug.Print "SID : " & ObjClsItem.SID
        Debug.Print "SIDType : " & ObjClsItem.SIDType
        Debug.Print "Status : " & ObjClsItem.Status
    Next ObjClsItem

    Set ObjClsItem = Nothing
    Set WMI_ObjProps = Nothing
    Set WMI_Obj = Nothing



c'est bien le nom de mon PC (pas mon compte) qui apparaît dans les groupes TACHE, SERVICE et SYSTEM



ensuite je liste mes services avec leurs "auteurs" on va dire :
'   [WMI Win32 Helper - Win32_SystemServices]
    On Local Error Resume Next
    Dim sComputerName as String, WMI_Obj as Object, WMI_ObjProps as Object, ObjClsItem as Object
    sComputerName = Environ$("COMPUTERNAME")
    Set WMI_Obj = GetObject("winmgmts:\\" & sComputerName & "\root\cimv2")
    Set WMI_ObjProps = WMI_Obj.ExecQuery("SELECT * FROM Win32_SystemServices", , 48)

    For Each ObjClsItem in WMI_ObjProps
        Debug.Print "GroupComponent : " & ObjClsItem.GroupComponent
        Debug.Print "PartComponent : " & ObjClsItem.PartComponent
    Next ObjClsItem

    Set ObjClsItem = Nothing
    Set WMI_ObjProps = Nothing
    Set WMI_Obj = Nothing


le nom correspond (PC)


enfin je vérifie tous mes services :
'   [WMI Win32 Helper - Win32_Service]
    On Local Error Resume Next
    Dim sComputerName as String, WMI_Obj as Object, WMI_ObjProps as Object, ObjClsItem as Object
    sComputerName = Environ$("COMPUTERNAME")
    Set WMI_Obj = GetObject("winmgmts:\\" & sComputerName & "\root\cimv2")
    Set WMI_ObjProps = WMI_Obj.ExecQuery("SELECT * FROM Win32_Service", , 48)

    For Each ObjClsItem in WMI_ObjProps
        Debug.Print "AcceptPause : " & ObjClsItem.AcceptPause
        Debug.Print "AcceptStop : " & ObjClsItem.AcceptStop
        Debug.Print "Caption : " & ObjClsItem.Caption
        Debug.Print "CheckPoint : " & ObjClsItem.CheckPoint
        Debug.Print "CreationClassName : " & ObjClsItem.CreationClassName
        Debug.Print "Description : " & ObjClsItem.Description
        Debug.Print "DesktopInteract : " & ObjClsItem.DesktopInteract
        Debug.Print "DisplayName : " & ObjClsItem.DisplayName
        Debug.Print "ErrorControl : " & ObjClsItem.ErrorControl
        Debug.Print "ExitCode : " & ObjClsItem.ExitCode
        Debug.Print "InstallDate : " & ObjClsItem.InstallDate
        Debug.Print "Name : " & ObjClsItem.Name
        Debug.Print "PathName : " & ObjClsItem.PathName
        Debug.Print "ProcessId : " & ObjClsItem.ProcessId
        Debug.Print "ServiceSpecificExitCode : " & ObjClsItem.ServiceSpecificExitCode
        Debug.Print "ServiceType : " & ObjClsItem.ServiceType
        Debug.Print "Started : " & ObjClsItem.Started
        Debug.Print "StartMode : " & ObjClsItem.StartMode
        Debug.Print "StartName : " & ObjClsItem.StartName
        Debug.Print "State : " & ObjClsItem.State
        Debug.Print "Status : " & ObjClsItem.Status
        Debug.Print "SystemCreationClassName : " & ObjClsItem.SystemCreationClassName
        Debug.Print "SystemName : " & ObjClsItem.SystemName
        Debug.Print "TagId : " & ObjClsItem.TagId
        Debug.Print "WaitHint : " & ObjClsItem.WaitHint
    Next ObjClsItem

    Set ObjClsItem = Nothing
    Set WMI_ObjProps = Nothing
    Set WMI_Obj = Nothing


c'est toujours le nom du PC...

bref, çà devrait te servir de piste de départ ;)

pour d'infos sur le WMI ici

++
PCPT  [AFCK]

Prenez un instant pour répondre à ce sondage svp
jeudi 13 décembre 2007 à 12:01:49 | Re : Service VB et Utilisateurs

FPatrick

Un grand merci d'avance pour les détails donnés.

Je vais me débrouiller avec ca maintenant.

En te remerciant, bonne journée.



Cette discussion est classée dans : vb, utilisateurs, utilisateur, service, session


Répondre à ce message

Sujets en rapport avec ce message

fonction join() type incompatible?? [ par foxmaster ] Bonjour, voila j'ai fai une applis en vbsqui d'une session a l'autre plante sur la commande join...sur ma session utilisateur elle passe sur une autre Active directoy: verifier l'existace d'une OU ou d'un Utilisateur [ par bozorpg ] bonjour amis developpeurs,Je suis débutant en VB actuellement entrain de developper un script pour creer de OU et des utilisateurs dans active directo UserName [ par Sinsitrus ] Salut a tous !Comment est ce que je peux recuper le nom d'utilisateur et le nom de la compagnie (non de la session, mais de l'ordinateur même) en VB6. Vb.net + Web Service [ par liolio111 ] Dans mon projet vb.net, je cherche à ajouter une référence à mon service web au moment de l'exécution.L'application cliente ne connait pas à priori l' Gerer les préférences utilisateurs de son application [ par piotrr ] J'ai une application parametrable par l'utilisateur (comme presque toutes les applications).J'aimerai savoir quelle est la manière "générique" de gére Envois d’un message a l’utilisateur l’or de l’ouverture de ca session [ par sofianelaib ] Bonjour a tous Je recherche un script qui me perme d'envoyé un message (genre Net send) a chaque foi que l'utilisateur ouvre ca session Merci de votre Composant utilisateur [ par schummi ] Bonjour, je souhaiterai, depuis VB.NET, créer un composant avec par exemple une seule methode me renvoyant un message "bonjour". Comment dois-je écri comment controller la saisie du l'utilisateur [ par yosboss ] bonjour,j'ai une base de données lié avec VB, j'ai defini une masque de saisie pour l'access , je veux que l'utilisateur respecte cette masque dans VB comment ajouter le nom de l'utilisateur connecté dans une barre d'état (statusstrip)en vb.net 2005 [ par bejo21 ] bonjour ou bonsoir jé besoin d'aide svp  jaimerais avoir un code pour pouvoir afficher le nom de l'utilisateur connecté dans un statusstrip en vb.net


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,170 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales