如题
解决方案 »
- delphi udpserver 给本机发送数据 报错,但是给其他IP发送没有问题,急!!!
- 有谁在delphi用过FORMULAONE控件做过报表!!!
- 有谁知道怎么屏蔽摄像头驱动来源选择筐??我被他烦死了。。。 。。。
- 记录复制问题
- 文本保存是文件名处理的问题?
- 求delphi修改windows xp 账号的函数
- 一个有点难度的问题哦:怎样做一个。。。
- 送分~~DBCheckBox控件的小问题
- 请问如何实现:将一个自定义控件在设计期放在窗体上,它能使其他的控件不能移动?
- 如何重新编译dbconsts.pas?
- 各位Socket高手进来看看,为何显示连接服务器失败???????????????
- FrReport 报表关于字符的问题
var
CNameBuffer : PChar;
fl_loaded : Boolean;
CLen : ^DWord;begin GetMem(CNameBuffer,255);
New(CLen);
CLen^:= 255; fl_loaded := GetComputerName(CNameBuffer,CLen^); if fl_loaded then
ComputerName := StrPas(CNameBuffer)
else
ComputerName := 'Unkown'; FreeMem(CNameBuffer,255);
Dispose(CLen);end;
//**IpAddress********
function GetIPFromName(Name: string): string;
var
WSAData: TWSAData;
HostEnt: PHostEnt;
begin
WSAStartup(2, WSAData);
HostEnt := gethostbyname(PChar(Name));
with HostEnt^ do
Result := Format('%d.%d.%d.%d', [Byte(h_addr^[0]),
Byte(h_addr^[1]), Byte(h_addr^[2]), Byte(h_addr^[3])]);
WSACleanup;
end;
//****WorkGroup*****************
function GetNetWorkgroup : string;
var
Reg : TRegistry;
begin
Reg := TRegistry.create;
Result := '(n/a)';
with Reg do
try
RootKey := HKEY_LOCAL_MACHINE;
if OpenKey('System\CurrentControlSet\Services\VxD\VNETSUP',
false) then
Result := ReadString('Workgroup');
finally
CloseKey;
free;
end;
end;
得到IP和工作组都可以通过访问注册表。
GetHostName :Ip
SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards1\ServiceName的值 (NetworkCards1可能应该是NetworkCards2,3,等,不同的机器有不同的表示)赋值给ServiceBuf 然后再找
'SYSTEM\CurrentControlSet\Services\Tcpip\parameters\Interfaces\' + ServiceBuf
在这个键值下有SubnetMask,IPAddress 等所有的值,你所要的东东在这里你都看得懂的!