在DELPHI怎样发送消息给局域网其他用户,象在CMD 下的 NET SEND XXX XXXX那样????
解决方案 »
- 一个左联结查询,在sql中正确。但移到sql中出来的出值就不对了。请帮忙看一下。
- xmlhttp无法设置cookie
- 邮件中如何保证在中文及日文系统都正常显示?
- (请大家畅谈软件人员的致富之道)搞软件技术的人如何在5年时间内赚到200万?
- 小妹继续求助 UP有分 拼命三郎请进`:)
- delphi有没有这样的时间函数?
- ------请教高高手,可否得知StringGrid被滚动或拖动后所显示的第一行的行号?------
- 一个关于KEYPRESS事件的程序??请大家帮忙
- 这个问题没人会吗?
- 用ArcGIS打开dwg格式的CAD文件显示不是有效的地图,各位大神帮我看看代码错哪了呗?怎么改
- 字符串问题
- 几个问题
或者用shellexecute,shellexecuteEX,没有比只羊更像的了:)
如果自己编程,用socket就行了。
http://expert.csdn.net/Expert/topic/1419/1419961.xml?temp=.6190607
或者用shellexecute,shellexecuteEX,没有比只羊更像的了:)
我看未必喔
function NetSend(dest, Source, Msg: string): Longint; overload;typeTNetMessageBufferSendFunction = function(servername, msgname, fromname: PWideChar;buf: PWideChar; buflen: Cardinal): Longint;stdcall;varNetMessageBufferSend: TNetMessageBufferSendFunction;SourceWideChar: PWideChar;DestWideChar: PWideChar;MessagetextWideChar: PWideChar;Handle: THandle;beginHandle := LoadLibrary('NETAPI32.DLL');if Handle = 0 thenbeginResult := GetLastError;Exit;end;@NetMessageBufferSend := GetProcAddress(Handle, 'NetMessageBufferSend');if @NetMessageBufferSend = nil thenbeginResult := GetLastError;Exit;end;MessagetextWideChar := nil;SourceWideChar := nil;DestWideChar := nil;tryGetMem(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 = '' thenResult := NetMessageBufferSend(nil, DestWideChar, nil,MessagetextWideChar, Length(Msg) * SizeOf(WideChar) + 1)elsebeginGetMem(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;finallyFreeMem(MessagetextWideChar);FreeLibrary(Handle);end;end;function NetSend(Dest, Msg: string): Longint; overload;beginResult := NetSend(Dest, '', Msg);end;function NetSend(Msg: string): Longint; overload;beginResult := NetSend('', '', Msg);end;// Example:procedure TForm1.Button1Click(Sender: TObject);constNERR_BASE = 2100;NERR_NameNotFound = NERR_BASE + 173;NERR_NetworkError = NERR_BASE + 36;NERR_Success = 0;varRes: Longint;sMsg: string;beginRes := NetSend('LoginName', 'Your Message...');case Res ofERROR_ACCESS_DENIED: sMsg := 'user does not have access to the requested information.';ERROR_INVALID_PARAMETER: sMsg := 'The specified parameter is invalid.';ERROR_NOT_SUPPORTED: sMsg := 'This network request is not supported.';NERR_NameNotFound: sMsg := 'The user name could not be found.';NERR_NetworkError: sMsg := 'A general failure occurred in the network hardware.';NERR_Success: sMsg := 'Message sent!';end;ShowMessage(sMsg);end;