关于Win7下(连接到命名管道,写C盘文件)需要管理员权限
来源:互联网 发布:js日期选择器插件 编辑:程序博客网 时间:2024/05/16 04:34
============= 问题:
多系统登录管理:
项目中涉及到多个系统,所有系统共用一套用户信息表。
期望用户登录了系统A之后,再点击其他系统,就无需再次登录了。
引用计数法控制登录有问题,比如系统A登录,计数值+1,系统B登录,计数值变为2,此时系统B崩溃,计数值仍然为2,但是只有一个系统登录,所以之后就算将所有系统退出,登录计数值却永远也不可能减为0.
所以采用HashSet来存储每个系统的登录与否的状态,系统A登录向HashSet中存入字符串“A”,系统B登录存入“B”,退出则删除对应的HasSet中的字符串。
我的这个HasSet作为用户登录状态的一部分,存储在文件中,并且为了防止用户的电脑没有D,E等盘符,所以存储在C盘。
但是问题来了,在C盘上读写文件是需要管理员权限的,不可能让用户每次运行系统都右击-》以管理员权限运行。
============== 尝试解决1:
恰好每个客户机上都有一个后台运行的WIndows服务,所以我想到每个系统登录都调用封装好的登录管理类,将登录状态通过命名管道传递给这个后台服务,让这个服务奖登录状态存储在它的进程空间中(内存中)。
代码写好之后,才发现“应用程序通过指定名称作为客户端连接到本机上的某个命名管道同样是需要管理员权限运行才可以的”。
否则会报出一个命名管道链接的异常:“Access to the path is denied”。
为了减少我的后台服务开启的线程的数量,我又决定改回原来的将登录状态写到C盘文件,反正都需要以管理员权限运行。
============ 尝试解决2:
退一步看,我们不可能让用户右击系统以管理员权限运行,也不可能让用户右击系统-》属性-》兼容性,勾选上“以管理员权限运行”。
但是可以容忍用户点击我的系统程序时,弹出是否允许以管理员权限运行的提示。
这就是Manifest配置文件所能做到的。
- 关于Win7下(连接到命名管道,写C盘文件)需要管理员权限
- Win7下执行需要管理员权限的程序
- win7下的删除需要管理员权限?
- Delphi在win7/vista下写注册表等需要管理员权限的解决方案
- 解决win7和win8系统文件无法删除提示需要管理员权限、怎样获取管理员权限方法
- 文件删除需要管理员权限
- win7/vista 下命名管道创建失败的解决
- 命名管道在WIN7下运行出错的解决方法
- win7下实现利用命名管道实现网络通信
- linux 下 用命名管道将几个文件的内容写到另一个文件中
- win7取得文件的管理员权限
- Win7 系统权限不足需要管理员权限 解决方法
- WIN7 下删除需要管理员权限才能删除的文件夹的方法
- Vista/win7 UAC下应用程序标注为“需要管理员权限”的四种方法
- Win7,Vista UAC下应用程序标注为“需要管理员权限”的四种方法
- VC编写vista或win7下需要管理员权限运行的程序
- VC编写vista或win7下需要管理员权限运行的程序
- VISTA WIN7 下删除需要管理员权限才能删除的文件夹的
- WF4.0 基础篇 (八) 控制流Activity
- char* CString string区别
- java的内存问题!
- 免费的wifi的背后
- UITableViewCell 重用 cell错乱问题
- 关于Win7下(连接到命名管道,写C盘文件)需要管理员权限
- java图片上传
- java的技巧要点!
- App Store上的开源应用汇总
- 【中差评也就那点事儿】
- TCL命令学习
- CString/string/char *
- 条款20:协助完成"返回值优化(RVO)"
- OpenGL绘制直线和圆(中点法)