rt,兄弟正在做一个isapi的小程序,需要获取到调用isapi的各个可户的ip地址,对我来说这个功能很重要,请哪位大侠出来指点2句,不胜感激.
解决方案 »
- 程序执行期间如何替换类名?
- vc如何实现在屏幕上显示文字(类似于酷狗),请高手指点
- 谁有日文版的 visual chm 啊?
- 关于滚动条的问题
- 我这样将RICHEDITCTRL中的数据复制到剪切板,为何粘切出来的是“%”?我用的是UNICODE编译环境
- 请问怎么删除注册表里一个键下的所有键值?
- 不知 候捷 得"STL 源码剖析 "出来了没有?
- com服务器的内部定义了一个对象mObj;我可以把这个指针毫无问题的传给客户端吗?无论是进程内、跨进程、服务都没问题吗?
- 又来了,这次是关于OnDraw的
- MFC中的CObject类的构造函数与析构函数的实现源码在哪里?
- 100分求一份公认比较好的MFC关于ADO对SQL操作的完整项目源代码,先谢谢了
- 怎么将程序打包啊?Install shield是VC自带的吗?它在哪里啊?
{
char szAddress[80];
DWORD dwSize = sizeof(szAddress);
if (pCtxt->GetServerVariable("REMOTE_ADDR", szAddress, &dwSize))
{
// Make sure this address is a valid address
BOOL fAllowed;
if ( !ValidateIPAddress(szAddress, &fAllowed ))
{
ISAPITRACE2("[OnUrlMap] Error %d validating address %s\n", GetLastError(), szAddress );
return SF_STATUS_REQ_ERROR;
} if ( !fAllowed )
{
// This ip address isn't allowed access. Map to information URL
strncpy(pMapInfo->pszPhysicalPath, NO_ACCESS, pMapInfo->cbPathBuff-1);
}
}
return SF_STATUS_REQ_NEXT_NOTIFICATION;
}
你都可以用如下简单的代码获得请求方的IP:
DWORD dwLen=64;
char b_ip[64];
memset(b_ip,'\0',64);
pCtxt->GetServerVariable("REMOTE_ADDR",b_ip,&dwLen);
设置64是考虑IPv6,在v4下,16字节就可以了