用户登陆|用户注册|建站服务|广告合作
您现在的位置: 首页 >> 建站实务 >> 网络编程 >> 数据库篇 >> 正文
站内搜索:
根据进程号获取该进程所在客户端的ip地址
[作者:佚名|来源:不详|时间:2006-09-20| 收藏 投稿 ]【
create PROCEDURE dbo.SP_SPIDtoIP @SPID int
AS
-- SPID to MAC
-- lj
DECLARE @MAC as varchar(12)
SELECT @MAC = NET_ADDRESS FROM master..sysprocesses WHERE SPID = @SPID
-- MAC to IP
DECLARE @MACDisplay as varchar(18)
DECLARE @IP as varchar(15)
CREATE TABLE #temp (OUTPUT varchar(255) null)
SET NOCOUNT ON
INSERT INTO #temp EXEC master..xp_cmdshell "arp -a"
if @@error<>0
begin
RAISERROR ("The level for job_id:%d should be between %d and %d.", 16, 1)
--ROLLBACK TRANSACTION
end
SELECT @MACDisplay = LEFT(@MAC, 2) + "-" + SUBSTRING(@MAC, 3, 2) + "-" + SUBSTRING(@MAC, 5, 2) + "-" + SUBSTRING(@MAC, 7, 2) + "-" + SUBSTRING(@MAC, 9, 2) + "-" + SUBSTRING(@MAC, 11, 2) SELECT @IP = SUBSTRING(output, 3, 15) FROM #temp WHERE output LIKE "%" + @MACDisplay + "%"
-- Resolve the IP
--DECLARE @CMD as varchar(100)
--select @CMD = "master..xp_cmdshell "ping -a " + @IP + """
--exec (@CMD)
DROP TABLE #temp
SET NOCOUNT OFF
GO

Tags:
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
快速注册通道
赛酷网·中国西部第一建站门户
关于我们 | 投稿指南 | 广告服务 | 建站服务 | 联系我们 | 网站地图 | 友情连接 | 诚征英才
地址:中国·昆明盘龙区丽水天锦A栋15楼A06 服务热线:0871-5610002 5732371联系我55693344 联系我80796509
建站交流群:17577271 下载交流群:11885804 22003060 35468519 交流论坛
© CopyRight 2005-2007, Syku.Net, Inc. All Rights Reserved
赛酷网络版权所有 滇ICP备05000398号