请问怎样才能在互联网上发送信使信息???(100分)

  • 主题发起人 主题发起人 9903
  • 开始时间 开始时间
9

9903

Unregistered / Unconfirmed
GUEST, unregistred user!
在局域网中可以用net send命令发送,但是如果目标机器不在局域网内,它就会说:"网络上找不到此消息别名",请问应该怎样作可以在互联网上发送的信使服务??
 
联系:MSN:chenfreax@hotmail.com
 
不要用别名,用IP地址
 
用IP地址是不行的,继续请教,等待高手出现
 
function NetSend(dest, Source, Msg: string): Longint; overload;

type
TNetMessageBufferSendFunction = function(servername, msgname, fromname: PWideChar;
buf: PWideChar; buflen: Cardinal): Longint; stdcall;

var
NetMessageBufferSend: TNetMessageBufferSendFunction;
SourceWideChar: PWideChar;
DestWideChar: PWideChar;
MessagetextWideChar: PWideChar;
Handle: THandle;
begin
Handle := LoadLibrary('NETAPI32.DLL');
if Handle = 0 then
begin
Result := GetLastError;
Exit;
end;
@NetMessageBufferSend := GetProcAddress(Handle, 'NetMessageBufferSend');
if @NetMessageBufferSend = nil then
begin
Result := GetLastError;
Exit;
end;
MessagetextWideChar := nil;
SourceWideChar := nil;
DestWideChar := nil;

try
GetMem(MessagetextWideChar, Length(Msg) * SizeOf(WideChar) + 1);
GetMem(DestWideChar, 20 * SizeOf(WideChar) + 1);
StringToWideChar(Msg, MessagetextWideChar, Length(Msg) * SizeOf(WideChar) + 1);
StringToWideChar(Dest, DestWideChar, 20 * SizeOf(WideChar) + 1);
if Source = '' then
Result := NetMessageBufferSend(nil, DestWideChar, nil,
MessagetextWideChar, Length(Msg) * SizeOf(WideChar) + 1)
else
begin
GetMem(SourceWideChar, 20 * SizeOf(WideChar) + 1);
StringToWideChar(Source, SourceWideChar, 20 * SizeOf(WideChar) + 1);
Result := NetMessageBufferSend(nil, DestWideChar, SourceWideChar,
MessagetextWideChar, Length(Msg) * SizeOf(WideChar) + 1);
FreeMem(SourceWideChar);
end;
finally
FreeMem(MessagetextWideChar);
FreeLibrary(Handle);
end;
end;
 
ip地址可以的,我成功过。
 
net send [IP地址]
可以的,我用过
如果不行,可能是对方主机不支持Messenger服务或者服务没有开启
 
楼上的就是答案,再不行,也是你的系统问题了
 
我的系统是2000,应该没有问题,就是不能在互联网上发信息,以上各位的方法我都试过,都不行,我是通过adsl拨号上网的,难道是这个原因,不过我能收到互联网上发来的消息,比如大富翁消息或其他的广告
 
可以发给自己来试一下吧。
 
可以发给自己,但是不能发给别人
 
后退
顶部