社区
消息协作
帖子详情
c/s结构下,怎样获得当前用户(客户端)的IP地址?谢谢!
gostesee
2003-08-26 10:41:27
c/s结构下,怎样获得当前用户(客户端)的IP地址?请给出源代码或数据库,谢谢!我的邮箱 chxjmail@btamail.net.cn
...全文
79
10
打赏
收藏
c/s结构下,怎样获得当前用户(客户端)的IP地址?谢谢!
c/s结构下,怎样获得当前用户(客户端)的IP地址?请给出源代码或数据库,谢谢!我的邮箱 chxjmail@btamail.net.cn
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
briliang
2003-08-29
打赏
举报
回复
我单位很需要lotus安全监控的产品,可以联系吗?
briliang@sina.com
gostesee
2003-08-27
打赏
举报
回复
呵呵,解决了,向ntko(磁化水)学习,也谢谢楼上各位。
ntko
2003-08-26
打赏
举报
回复
有关dsapi你可以看一下相关文档,去ibm搜索lotus c API reference和userguide,
讲的比较详细。
但是,如果要完成你的功能,我建议你没必要写API,
可以在as400上通过ip协议来配置,不知可否?
因为我们有一个产品是关于lotus 安全的,可惜是在win2k上运行的,能够实现你说的功能,
还可以限制某人只能在某台机器上使用客户端,这样就必须写API了。
只是我不太方便公开源代码。
gostesee
2003-08-26
打赏
举报
回复
请ntko(磁化水)讲述大概api使用,我只知道得到客户端机器名称,可怎样把机器名称转化成ip呢?
gostesee
2003-08-26
打赏
举报
回复
domino运行在as400上,想获得客户端ip运用是防止不是局域网内部机器就不允许访问数据库,即使拥有合法的id也不行。
ntko
2003-08-26
打赏
举报
回复
这个问题用一个Notes数据库是解决不了的。必须使用DSAPI来解决。
请具体描述一下你的应用。
ntko
2003-08-26
打赏
举报
回复
或者:
以下代理可以获得客户端IP地址,并将其放到选中文档的IPadddress域:
mport lotus.domino.*;
import java.net.*;
public class JavaAgent extends AgentBase {
public void NotesMain() {
try {
Session session = getSession();
AgentContext agentContext = session.getAgentContext();
// (Your code goes here)
Document doc = agentContext.getDocumentContext();
if (doc != null)
{
InetAddress local = InetAddress.getLocalHost();
doc.replaceItemValue("IPAddress", local.getHostAddress());
doc.save();
}
} catch(Exception e) {
e.printStackTrace();
}
}
}
ntko
2003-08-26
打赏
举报
回复
daluoboequalto(大萝卜) :你有其它方法吗?
chenyg2000(icerain) :C/S方式用Java代理不能实现。
gostesee () :下面代码仅供参考(win2k下的)
首先注册一个事件:
STATUS LNPUBLIC MainEntryPoint(void)
{
STATUS err;
err = EMRegister( EM_SECAUTHENTICATION,
EM_REG_AFTER,
ExtCallback,
0, ®EMId1);
return err;
}
下面是事件回调函数:(当Notes客户端链接时发生)
STATUS LNPUBLIC ExtCallback( EMRECORD FAR * theData )
{
VARARG_PTR argPtr;
STATUS sError = ERR_EM_CONTINUE;
argPtr = theData->Ap;
/* do nothing if there is an error. */
if ( theData->Status )
{
return theData->Status;
}
switch (theData->EId)
{
case EM_SECAUTHENTICATION:
/* declare the arguments */
WORD wEvent = 0;
SESSIONID SessionId;
char *pRemoteName = NULL;
DWORD dwFlags = 0;
WORD wNetProtocol = 0;
char *pNetAddress;
/* get the arguments */
wEvent = VARARG_GET( argPtr, WORD );
SessionId = VARARG_GET( argPtr, SESSIONID );
pRemoteName = VARARG_GET( argPtr, char far * );
dwFlags = VARARG_GET( argPtr, DWORD );
wNetProtocol = VARARG_GET( argPtr, WORD );
//若上面的协议为TCPIP,此处pNetAddress 就是客户的IP地址
pNetAddress = VARARG_GET( argPtr, char far * );
/* for this example, only process post Domino Authentication */
if (theData->NotificationType != EM_AFTER)
break; /* break out of here */
/* switch on types of wEvent */
switch (wEvent)
{
/* additional authentication code goes here */
case AUTHEM_StartAuthentication:
if (dwFlags & fAuthRoleServer)
{
/* protocol processing... */
switch (wNetProtocol)
{
case PROTOCOL_TCP:
//你要实现的功能在这儿,pRemoteName是用户名,pNetAddress是用户IP地址
处理函数(pRemoteName,pNetAddress);
break;
default:
break;
}
}
sError = ERR_EM_CONTINUE;
break;
default:
sError = ERR_EM_CONTINUE;
break;
}
} /* END SWITCH */
return( sError );
}
要将这些函数(还有其它一些必须的函数,具体参阅API资料)
编译为DLL,并且在服务器的notee.ini文件中加入
EXTMGR_ADDINS=你的DLL
这样,每次用户从Notes Client登录都会调用你的函数了。
chenyg2000
2003-08-26
打赏
举报
回复
可以通过java代理实现
daluoboequalto
2003-08-26
打赏
举报
回复
7
软件体系
结构
课程设计基于 C/S 的网络聊天室系统源码+课程设计报告,用Linux网络编程作为服务器,使用QT编程作为
客户端
客户端
通过输入 IP 地址、端口号、Email、聊天名称、聊天组号连接到服务器,
用户
通过
客户端
发送消息,同时接收来自相同组其他
客户端
发送的消息,获取
当前
在 线
用户
信息,通知新
用户
的上线和
用户
的下线,实现群聊...
JAVA网络通信系统的研究与开发的设计
系统采用客户机/服务器(C/S)的模式设计,是一个三层C/S
结构
,数据库服务器、应用程序服务器端、应用程序
客户端
,按照此设计思想,系统采用C/S
结构
,可以将任务合理分配到客户机端和服务器端 ,从而降低了系统的...
网络棋牌游戏服务器架构.docx
客户端
登录后首先和主服务器建立连接(并且一直到
客户端
退出才断开)连接成功后生成界面
结构
树(前述),当
用户
点击某个游戏房间的时候系统从内存中读出这个房间的所有信息(前述),根据房间所属从服务器的
IP地址
及...
DNS实验报告.pdf
系统功能设计 设计 DNS 服务器程序,读入 域名-IP 地址 对照表,当
客户端
查询域名对应的 IP 地址时,用域名检索该对照表,有三种检索结果: (1)检索结果为 ip 地址 0.0.0.0,则向
客户端
返回 域名不存在 的报错...
软件
结构
(C/S、B/S),网络编程三要素(协议、
IP地址
、端口号)
C/S
结构
:全称Client/Server
结构
,
客户端
/服务器
结构
。常见
客户端
有QQ、迅雷等软件。 B/S
结构
:全称Browser/Server
结构
,浏览器/服务器
结构
。常见浏览器有谷歌、火狐等。 两种
结构
各有优势,但是无论哪种
结构
...
消息协作
535
社区成员
39,101
社区内容
发帖
与我相关
我的任务
消息协作
企业开发 Exchange Server
复制链接
扫一扫
分享
社区描述
企业开发 Exchange Server
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章