请问VB.NET 怎么获取当前所有已登录到windows系统的用户名?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请问VB.NET 怎么获取当前所有已登录到windows系统的用户名?相关的知识,希望对你有一定的参考价值。

请问VB.NET 怎么获取当前所有已登录到windows系统的用户名?
就是跟系统任务管理器的“用户” 那一样。
能获取到 用户名、状态
请各位赐教。
研究了 两天 。实在不懂。 我是初学。。 最好能附上代码。

用Environment类中的GetEnvironmentVariable方法。

保存用户名的环境变量是USERNAME。

比如

string username=Environment.GetEnvironmentVariable("USERNAME")追问

这个值能 获取到 当前程序启动的用户。。。并不能获取到 其他的登录用户

追答

那就调用个批处理获取系统变量$USERNAME

参考技术A Environment.UserName追问

Environment.UserName 只能获取当前登录的用户,其他登录用户获取不了啊。

我是想获取所有已经登录的用户。。。

追答

用 System.Runtime.InteropServices;

[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]

[DllImport("Netapi32.dll")]


PHP获得当前登录用户ID,详细代码写法

如题,小弟正在做一个小微博项目,在当前用户登录后,跳转到个人首页,在当前页可以获取到该登录用户的所有信息,我用SESSION只能获取到用户名,其他信息都不能获取。
通过此页面可以跳转到修改头像页面,但一直是update user set face='1' where id= 0,始终不能获取当前登录用户ID,请前辈指点一下我该如何做,谢谢。

/*
获取用户信息,首先是根据条件来查找用户
$_SERVER["user_id"]  登陆保存user_id保存到session
$_SERVER["user"]    登陆保存用户到session
*/
"select * from user where id='".$_SERVER["user_id"]."' and user ='".$_SERVER["user"]."'"  ; 
/*
更新用户信息首先是要查找出这个用户信息
查找的时候必须传递id参数过去,否则无法找到对应的用户
*/
"select * from user where id='".$_GET["user_id"]."'" ;  // 可以不用根据id来做判断,但是判断的内容必须是唯一的
/*
最后修改完信息后通过表单提交的内容也要带能唯一识别用户的参数,(例如:id)
*/
"update user set face='".$_POST["user_icon"]."' where id='".$_POST["user_id"]."'"

都是手写的,用的好记得采纳哦,还有不懂的可以继续追问。

追问

亲。登录是怎么将id保存到session啊?我可以将用户名和密码存进session,但其他信息都不行。
在登录处理页面,我是这样存ID的:
¥_SESSION['id']=$_POST['id'];
但是错误的,但正确的将id存SESSION应该怎么写呢

追答

这样写当然错啊,这个id是数据库里面的,你把你登陆程序代码页贴上来吧

追问

这是登录页的代码:

这是登录处理页的代码:

 

麻烦亲指点一下哈,感激不尽。

追答

if($row=mysql_num_rows($res)>0)

$_SESSION["id"]=$row["id"]; //后面的id是从数据库那边获取的


你在你原来的基础上加上if里面的session 然后再试试

追问

这样是能够登录成功,但在跳转到个人中心后还是无法获取这个登录用户保存在数据库里面的id , 请问我可以用session将本次登录用户的性别,邮箱,生日,家乡等信息保存吗? 如果可行又该怎么做呢? 可行的话就可在需要显示的地方调用这个session值就行了

追答

你不用那么麻烦的,只要保持用户id和用户名就可以了,不用全部用session,后台那边查询的话根据这2个条件就能查出来

参考技术A

参考技术B 你的用户ID是怎么实现的,数据库里有没有存储用户的ID,如果存了,就在登录成功的地方把当前用户的ID保存到session里面,只能取到用户名那是因为其他信息你没存到session里吧。追问

在登录处理页面,我是这样写的:
$_SESSION['id']=$_POST['id'];
应该是错误的,但正确的将id存SESSION应该怎么写呢

追答

不是这样的,你的用户ID应该是和用户名一样存在数据库里面吧,在数据库里面取出来的时候放进SESSION里
if(mysql_num_rows($res)>0)


$result = mysql_fetch_assoc($res);
$_SESSION['id']=$_POST['id'];
//后面是用户名和密码

追问

这样可以登录。但也无法在个人信息页面获取到当前用户的各种信息啊,比如该用户登录后我会在成功后的页面显示他的头像,性别,邮箱等资料,该怎样做呢?

参考技术C 登录时保存SESSION时为什么不保存id?追问

就是不知道该怎么保存他在数据库的id . 我想在该用户登录成功后在页面上直接显示他的各种信息,如头像,性别,邮箱等,这该怎么做呢?

参考技术D 用session保存啊。。

以上是关于请问VB.NET 怎么获取当前所有已登录到windows系统的用户名?的主要内容,如果未能解决你的问题,请参考以下文章

VB.NET将一个已有的A.EXE文件添加到项目资源,如何在项目生成的EXE文件中运行它?

vb.net Datagridview添加行

vb.net中怎样求DataGridView的行数和列数?

vb.net中如何获得DataGridView单元格内容

请问VB.NET中datagridview表里的数据怎样写入到数据库中

如何在VB.NET ListView获取已选中单元格所在的列?