社区
网络通信/分布式开发
帖子详情
如何获取远程计算机的用户列表?
littlebird82
2003-04-25 04:51:55
如题。
...全文
117
3
打赏
收藏
如何获取远程计算机的用户列表?
如题。
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hjb8000
2003-04-28
打赏
举报
回复
c++buider的:
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
AnsiString gethostip(AnsiString &host)
{
WSADATA wsaData;
AnsiString IP;
char temp[255];
strcpy(temp,host.c_str());
int pos=0;
while(temp[pos++]=='\\');
pos--;
// temp+=i-1;
WSAStartup(MAKEWORD(2,0),&wsaData);
if(host.IsEmpty())
{
char hostname[128];
if(gethostname(hostname,128)!=0)
return AnsiString("");
host=hostname;
}
try
{
struct hostent *hp=gethostbyname(temp+pos);//host.c_str());
if(hp == NULL)
{
IP="";
}
else
{
IP=inet_ntoa(*(struct in_addr*)hp-> h_addr_list[0]);
}
}
catch(...)
{
IP="";
}
WSACleanup();
return IP;
}
//---------------------------------------------------------------------------
bool EnumNetResource(LPNETRESOURCE lpNR,DWORD dwScope,DWORD dwType)
{
HANDLE hEnum = 0;
DWORD dwResult = WNetOpenEnum(
dwScope, // scope of enumeration
dwType, // resource types to list
0, // enumerate all resources
lpNR, // pointer to resource structure (NULL at first time)
&hEnum // handle to resource
);
if(dwResult != NO_ERROR) return false;
bool bRet=true;
DWORD dwEntries = 0xFFFFFFFF; // enumerate all possible entries
NETRESOURCE NR[1024];
DWORD dwBuffer=1024*sizeof(NETRESOURCE);
while(1)
{
dwResult = WNetEnumResource(hEnum, // resource-handle
&dwEntries,
(LPVOID)NR,
&dwBuffer
);
if(dwResult == ERROR_NO_MORE_ITEMS)
{
break;
}
else
{
if(dwResult != NO_ERROR)
{
bRet=false;
break;
}
}
for(DWORD i=0;i<dwEntries;i++)
{
//ShowMessage("OK");
if(NR[i].dwDisplayType==RESOURCEDISPLAYTYPE_SERVER)
{
char *p=NR[i].lpRemoteName;
while(*p=='\\') p++;
if(*p)
{
AnsiString IP = gethostip(p);
// TListItem *Item1;
// Item1 = Form1->ListView1->Items->Add();
// Item1->Caption = p;
// Item1->SubItems->Add(IP);
Form1->ListBox1->Items->Add(IP+"==="+p);
}
}
else
{
if((NR[i].dwUsage& RESOURCEUSAGE_CONTAINER)==RESOURCEUSAGE_CONTAINER)
{
bRet=EnumNetResource(&NR[i],dwScope,dwType);
if(bRet==false) break;
}
}
}
if(bRet==false) break;
}
WNetCloseEnum(hEnum) ;
return bRet;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
ListView1->Clear();
Screen->Cursor=crHourGlass;
EnumNetResource(NULL,RESOURCE_GLOBALNET,RESOURCETYPE_ANY);
Screen->Cursor=crDefault;
}
//---------------------------------------------------------------------------
littlebird82
2003-04-28
打赏
举报
回复
每人回答吗?
littlebird82
2003-04-27
打赏
举报
回复
没有人回答吗?
如何查询
远程
计算机
用户
,如何
获取
远程
计算机
的
用户
列表
?
TForm1 *Form1;//---------------------------------------------------------------------------__fastcall TForm1::TForm1(TComponent* Owner): TForm(Owner){}//---------------------------------------...
DELPHI
获取
域
用户
名
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ComCtrls;typeUSER_INFO_1 = record usri1_name: LPWSTR; usri
黑客们是如何查看
远程
电脑win7系统进程?
想知道黑客们是如何查看
远程
电脑win7系统进程的吗?方法很简单,黑客可以通过很多命令获得
远程
电脑的进程
列表
,进而能够判断出自己植入的木马等程序是否在运行…… 在“命令提示符”窗口中输人如下类似(格式相同,IP地址、账户Administrator和密码780316要換)命令: Tasklist /s 192.100.100.10 /u Administrator /p 78031
WMICodeCreator:C#产生WMI代码的工具
程序不是我写的,是微软发布的一个工具,不知道什么是WMI? 【网通】点击这里下载WMICodeCreator工具 【电信、网通】点击这里下载WMICodeCreator 【下载说明】 1、单击上面这个地址,打开下载页面。 2、点普通下载--等待30秒--点“下载”按钮--保存 Windows 管理规范(Windows Management Instrumentation)是一项
网络通信/分布式开发
1,594
社区成员
32,944
社区内容
发帖
与我相关
我的任务
网络通信/分布式开发
Delphi 网络通信/分布式开发
复制链接
扫一扫
分享
社区描述
Delphi 网络通信/分布式开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章