不知道为什么朋友会有这样奇怪的要求。需要使用ASP得到浏览者的Windows登录名。没有找到合适的办法。只想到了这一种办法。就是使用服务器端组件与客户端组件使用Socket进行通迅。由ASP调用服务器组件使用Socket向浏览者的计算机上运行着的客户端组件发送请求,客户端组件取得浏览者的Windows登录名,再使用Socket返回给服务器组件。服务器组件再将结果返回给ASP程序。

服务器组件和客户端程序都是使用VB6编写:

Source:http://files.cnblogs.com/zxsoft/使用ASP得到客户端Windows登录名.rar

              解决方案:使用ASP取得客户端Windows用户登录名

没有查到ASP如何取得客户端Windows登录名。所以只好使用组件完成。

已经确认ASP服务器脚本无法创建客户端组件。故只好使用服务端Com组件与客户端组件通过Socket通迅完成。所以需要服务器和客户端都安装组件。

原理:

客户端浏览器访问ASP文件,ASP文件取得客户端的IP地址,创建服务器组件“ZXSOFT.GetUserName”,并将客户端IP地址做为参数传给服务器组件。服务器组件通过Socket使用TCP协议与客户端通迅。客户端取得本地计算机Windows登录名。并使用Socket回传给服务器组件。ASP文件通过服务器组件的方法取得这个客户端的Windows登录名。

目录结构说明:

Release

|

------Client EXE          ----每台客户端机器都必须安装的程序。应设为开机自动运行

|

------Sample ASP          ----使用此解决方案的ASP例子

|

------Server Com DLL      ----服务器的Com组件。使用Regsvr32在ASP服务器上注册

SRC

|

------服务端Com组件        ----服务器Com组件的VB6源代码

|

------客户端               ----客户端的VB6源代码

 

服务器组件说明:

组件名称:zxsoft.GetUserName

ASP创建方法:set getUserName=Server.CreateObject("zxsoft.GetUserName")

方法列表: GetUserName(IP as String,Optional TimeOutSecond as String = 3 ) as String

参数说明:IP,要得到Windows登录名的客户端的IP地址

TimeOutSecond,可选项,超时时间。超过超时时间客户端没有Socket返回。则取得Windows登录名失败。默认值为3(秒)。

功能:取得安装了客户端程序的,IP地址为参数IP的客户端的Windows登录名。

返回值:字符串。取得的Windows登录名。如失败返回空字符串""。

客户端程序说明:

 

运行不会有任何显示。会在进程中看到GetUserName.exe。要退出需要把GetUserName.exe进程结束任务。如果客户端程序没在运行。则无法取得Windows登录名。所以建议在客户端计算机上将此程序设为开机自动运行。

Author:张旋

2007.8.2  02:10

转载于:https://www.cnblogs.com/zxsoft/archive/2007/08/03/840834.html

ASP读取客户端Windows登录名的解决方案相关推荐

  1. 询问HTG:添加PDF打印机,隐藏Windows登录名和共享USB HDD

    Each week we dip into the Ask How-To Geek mailbox and answer your pressing questions. This week we'r ...

  2. 数据库迁移登录名_如何将数据库的登录名迁移到其他服务器

    数据库迁移登录名 Sometimes, it is necessary to move the database from one server to another. The problem is ...

  3. SQL Server登录名,用户和安全标识符(SID)

    抽象 (Abstract) Logins and Users are basic security concepts in SQL Server. They are often, and incorr ...

  4. sql登录名和用户名_通过分配角色和权限来移动或复制SQL登录名

    sql登录名和用户名 This article speaks to, how to copy SQL Logins on the new server with Server Level roles ...

  5. SQL service 安全管理(1)登录名(创建与删除)

    确保安全性 这里只讨论与数据库有关的用户身份验证和用户权限管理等技术. SQLServer的自主存取控制模式中,用户访问数据库数据都要经过三个安全认证过程 第一个过程确认用户是否是数据库服务器的合法账 ...

  6. WINDOWS 2000下如何获得用户登录名和密码

    --  WINDOWS 2000下如何获得用户登录名和密码 WINDOWS 2000下如何获得用户登录名和密码 作者:moonstone 下载本文示例源代码一.原理 在NT/2000中交互式的登陆支持 ...

  7. 用户 'XXX\SERVERNAME$' 登录失败。 原因: 找不到与提供的名称匹配的登录名。 [客户端: ]...

    用户 'XXX\SERVERNAME$' 登录失败. 原因: 找不到与提供的名称匹配的登录名. [客户端: ] 原文:用户 'XXX\SERVERNAME$' 登录失败. 原因: 找不到与提供的名称匹 ...

  8. Delphi 中取本机的计算机名、IP地址、Windows登录的用户名

    //作者:陆岛工作室 XOtec Studio //组件库:XOtecExpress. 几个在Delphi 中取本机的计算机名.IP地址.Windows登录的用户名的函数. uses Windows, ...

  9. 无法读取本地或者服务器版本信息,Windows2003服务器的本地安全策略显示“windows无法读取模板信息”的终极处理解决方案。...

    Windows2003服务器的本地安全策略显示"windows无法读取模板信息"的终极处理解决方案. 近逛论坛时发现许多站长提出这样的问题,由于种种原因的服务器安全设置,结果导致w ...

最新文章

  1. linux 中如何将文件粘贴到usr下的lib内,学会在Linux下GCC生成和使用静态库和动态库...
  2. 14门教程带你全面入门Linux
  3. UVA 11825 状态压缩DP+子集思想
  4. left join 和join区别_sleep、yield、join方法简介与用法 sleep与wait区别 多线程中篇
  5. 宽量程电压电流 stm32_电压、电阻知识点汇总
  6. Android后台服务---无交互时的Service
  7. leetcode - 21. 合并两个有序链表
  8. matlab矩阵代数计算,MATLAB学习笔记(五):符号计算(符号矩阵+代数方程组求解)...
  9. oracle 数据库dg搭建规范1
  10. 运筹学状态转移方程例子_逆转的薛定谔方程,美俄科学家实现量子时间“倒流”,令人兴奋...
  11. java获取时间日期代码
  12. java产生随机数(可个性化定制)
  13. 平安夜,Python 送你一顶圣诞帽 @微信官方
  14. 我的口琴之路(附c调简谱)--------一个命中注定音乐巅峰是小星星的男人
  15. SourceTree这是一个无效源路径(更改git账号和密码导致无效源路径看这里)
  16. 移动端web app自适应布局探索与总结
  17. 牛客网数字化招聘解决方案,支持10万人同时在线笔试
  18. 获取对话框当前cfont_MFC设置对话框、字体对话框、颜色对话框(转)
  19. Android硬件控制之USB连接
  20. Codeforces Round #702 (Div. 3)A-G题解

热门文章

  1. HDU 2389 Rain on your Parade (二分图匹配)
  2. 注册kaggle以及手机验证解决人机问题,出现401未认证问题
  3. 【论文分享】Fuzzing: A Survey for Roadmap
  4. C++ raw string literal
  5. 区块链政策法律研究组成立会在京召开
  6. Ubuntu系统OpenCV安装及摄像头获取实例
  7. 调用阿里API实现全国快递物流查询
  8. UE4 初始化全局着色器库所需的游戏文件缺失
  9. 基于JAVA人脸识别公司签到系统(Springboot框架+AI人工智能) 开题报告
  10. Baby Q PK小冰 谁才是QQ6.7新增的QQ群聊机器人之王 ...