begin process at 2012 05 29 19:22:50
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

System

 > 

Nom de session


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

Nom de session

samedi 8 novembre 2008 à 19:48:44 | Nom de session

pagd

Bonjour,

j'aimerai savoir comment récupérer le nom de la session que l'utilisateur utilise ?
Est ce qu'une fonction, API, fait ca ?

Je suis en Visual C++ 6 (pas .NET) sous XP.
Je suis aussi en train de développer un Service ce qui fait que la fonction GetUserName me renvoie SYSTEM quelque-soit la session Windows.

Merci d'avance
dimanche 9 novembre 2008 à 16:53:53 | Re : Nom de session

jeffy131

C'est une FAQ Win32 (depuis 1993...)
Donc demander sur le newsgroup pro des apis win32 :
news://194.177.96.26/fr.comp.os.ms-windows.programmation
où cela a souvent été discuté
dimanche 9 novembre 2008 à 21:37:53 | Re : Nom de session

BruNews

Administrateur CodeS-SourceS

Devrait aller depuis un service system.

int bnUserImpersonate()
{
  HANDLE htok, hdup;
  DWORD dwession;
  int bret = 0;
  dwession = WTSGetActiveConsoleSessionId();
  if(dwession == 0xFFFFFFFF) goto usrnameEXIT;
  if(!WTSQueryUserToken(dwession, &htok)) goto usrnameEXIT;
  if(!htok) goto usrnameEXIT; // DES FOIS QUE...
  if(!DuplicateToken(htok, SecurityImpersonation, &hdup)) goto closeTOK;
  bret = ImpersonateLoggedOnUser(hdup);
  CloseHandle(hdup);
closeTOK: CloseHandle(htok);
usrnameEXIT: return bret;
}


void TestImpersonate()
{
  char buf[260];
  DWORD len;
  if(!bnUserImpersonate()) return;
  len = 260;
  if(!GetUserName(buf, &len)) return;
  // buf contient UserName
}

ciao...
BruNews, MVP VC++

lundi 10 novembre 2008 à 10:45:02 | Re : Nom de session

pagd


Merci pour l'info,

je n'ai pas WTSGetActiveConsoleSessionId

y a pas plus simple ?


lundi 10 novembre 2008 à 10:50:40 | Re : Nom de session

BruNews

Administrateur CodeS-SourceS
VC++ 2008 Express est gratuit et librement téléchargeable.
Que soit avec l'honorable ancêtrre qu'est VC6 ou avec le 2008, il faut installer le platform SDK actuel (c'est gratos aussi).

ciao...
BruNews, MVP VC++
lundi 10 novembre 2008 à 11:29:46 | Re : Nom de session

pagd

Merci pour l'info,

si j'installe VC++ 2008 Express, est ce que mon vieux VC++ 6 et tous mes anciens développements tourneront encore ?

lundi 10 novembre 2008 à 13:22:47 | Re : Nom de session

BruNews

Administrateur CodeS-SourceS
Bien entendu SI c'est codé correctement.

TUTO DE POSE: http://www.cppfrance.com/code.aspx?ID=38359
DOWNLOAD: http://www.microsoft.com/express/download/

ciao...
BruNews, MVP VC++
mercredi 12 novembre 2008 à 00:15:28 | Re : Nom de session

pagd

Bon j'ai installé C++ 2008 Express

Y a plein de *SDK en téléchargement, c'est lequel le "platform SDK" dont tu parles ?

Merci
JM
mercredi 12 novembre 2008 à 16:43:47 | Re : Nom de session

rt15

Membre Club Administrateur CodeS-SourceS
Je crois que c'est ça :
http://www.microsoft.com/downloads/details.aspx?FamilyID=e6e1c3df-a74f-4207-8586-711ebe331cdc&DisplayLang=en

Le "windows platform sdk" a été remplacé par le "windows sdk" semble-t-il.

On télécharge un .exe qui permet de sélectionner quelles parties du SDK on souhaite. Donc dans ton cas, il faut virer tout ce qui est .NET. Le principal en ce qui te concerne, ça doit être "Developer tools->Windows headers and libraries->Header Files + x86 Libraries".

Mais la doc Win32, les exemples et les tools sont peut être bien aussi.

mercredi 12 novembre 2008 à 17:59:07 | Re : Nom de session

BruNews

Administrateur CodeS-SourceS
rt15, merci pour le lien, c'est bien celui ci.
Les tools, si pas de MFC ni DotNetteries, totalement iinutile.

La seule doc utile c'est MSDN qui n'est pas compris dans le sdk, il faut le télécharger à part pour installation en local (très nettement plus confortable à consulter que sur le net).

ciao...
BruNews, MVP VC++


Cette discussion est classée dans : fonction, session


Répondre à ce message

Sujets en rapport avec ce message

Suprimmer un fichier [ par naney ] tout d'abort un grand merci au webmaster de ce site :D car j'en avais mare de cherche un site comme vbfranc.com mais qui parler du c et du c++Je cherc attendre que le shell soit fini C++ [ par McK_N ] Salut,je veux appeler la fonction Shell et je veux que mon programe arrête jusqu'à ce que le shell soit terminé.Comment puis-je le faire avec la fonct prob avec une dll [ par BlackWizzard ] Salut!je voudrais faire une dll avec un niveau tres bas...j'ai deja créé une dll de cryptage en me basant sur un code simple...la chose que je compren Existe t il une fonction équivalente à mid right ou left ( du VB) en cpp ? [ par Stoomm ] Existe t il une fonction équivalente à mid right ou left ( du VB) en cpp ? Merci d'avance et A+. Stoomm. [?] Saisie d'une fonction [ par Cidrik ] Salut,Je débute en C et j'aimerais créer un programme qui réalise une étude de fonction (niveau 1°S) mais j'aimerais savoir comment faire pour que qua la fonction c++ StrToNum : [ par sounlight ] A quoi sert la fonction StrToNum ()?Est-elle déjà définie dans les bibliothèques c++par défaut?Qu'elle est sa syntaxe ?Je suis débutant développeur c+ randomize sous VC++ 6.0 non defini?? comment faire?? [ par petitivnnie ] En effet je n'ai troué aucune occurence des les headers fournis dans la version 6.0 de visual C++J'aimerai que l'on m'indique comment implenter cette Fonction $gettok (mIRC) sous cpp [ par mast ] Salut j'aui une variable qui retourne par exemple: allo sa va oui toi? /echo -a allo /echo -a bye et je voudrais enregistrer les 2 commen (/..) dans c net use * /delete EN C++ [ par LeBobo ] Salut. J'ai un petit programme qui utilise la fonction : system(''net use * /delete'') ; Le problème est que mon programme à une interface graphique w Exemple de EnumPrinters (qui fonctionne) en C++ [ par nico ] Je voudrais que mon programme puisse détecter l'imprimante par défaut utilisée par mon PC. Pour ce faire j'ai trouvé la fonction "EnumPrinters". Le pr


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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,607 sec (3)

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