Форум: "WinAPI";
Текущий архив: 2002.01.31;
Скачать: [xml.tar.bz2];
Внизnet send без имени компа? Найти похожие ветки
← →
Osmiy (2001-11-22 13:38) [0]Есть какой либо способ послать сообщение типа net send только чтобы не выдовало имя компа с которого посылается.
← →
Tosov (2001-11-23 00:56) [1]Вроде имеется возможность послать сообщение от другого компа (ты там должен быть админом)[WinNT/Win2k]
← →
handra (2001-11-23 10:54) [2]под NT4 - есть способ отправить сообщение по абсолютно любым именем
← →
Tosov (2001-11-23 21:50) [3]2handra
>под NT4 - есть способ отправить сообщение по абсолютно любым именем
КАК???
← →
Osmiy (2001-11-24 15:28) [4]Уточняю я не админ.
Т.е. Мне надо исходничек net"a, мона на Делфе, но лучше на С конечно.
← →
Tosov (2001-11-24 16:13) [5]Уточняющий вопрос:
тебе надо просто net send (на дельфи : http://delphi.xonix.ru/faq/lan/netsend01.shtml на С поищи NetMessageBufferSend ) или надо net send без имени пользователя или компа??
← →
Osmiy (2001-11-28 12:32) [6]Tosov:
Спасибо за адресок.
Работать то работает, но имя исходящего компа поменять нельзя, работает только если введео имя моего компа!
Мне хотелось бы чтобы вместо имени моего компа было написано что я захочу!
← →
marconi (2001-11-28 12:50) [7]Я в своем время использовал Languard Network Scaner, он позвалял отсылать net send с чужим именем (каким захочеш) поищи в сети, но если тебе нужно самому написать то сорри ....
← →
marconi (2001-11-29 10:31) [8]
unit Net_Send2;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, lmmsg;
type
TForm1 = class(TForm)
Button1: TButton;
Memo1: TMemo;
ComboBox1: TComboBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
Function UserName: string;
var
Size: DWORD;
Buffer : PChar;
begin
Size:=32;
GetMem(Buffer, Size);
try
if GetUserName(Buffer,Size) then
Result := StrPas("TEST"); //StrPas(Buffer); <--- Имя !!! от кого мессага
finally
FreeMem(Buffer);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
Code : Integer;
MsgBuff : pWideChar;
Size, NewSize : Integer;
User, UName : Array[0..127] Of WideChar;
begin
Size := Length(Memo1.Text);
StringToWideChar(ComboBox1.Text, User, SizeOf(User) div 2);
StringToWideChar(UserName, UName, SizeOf(UName) div 2);
NewSize := Size * 2;
MsgBuff := VirtualAlloc(nil, Size, Mem_Commit, Page_ReadWrite);
MultiByteToWideChar(CP_ACP, 0, PChar(Memo1.Text), Size, MsgBuff, NewSize);
Code := NetMessageBufferSend("", User, UName, MsgBuff, lStrLenW(MsgBuff)* SizeOf(pWideChar));
If Code = 0 Then
Label3.Caption := "Message was sent Successfully!"
Else
Label3.Caption := "Returned Error Code: " + IntToStr(Code);
{case a of
ERROR_ACCESS_DENIED : ShowMessage("The user does not have access to the requested information.");
ERROR_INVALID_PARAMETER : ShowMessage("The specified parameter is invalid.");
ERROR_NOT_SUPPORTED : ShowMessage("This network request is not supported");
NERR_NameNotFound : ShowMessage("The user name could not be found.");
NERR_NetworkError : ShowMessage("A general failure occurred in the network hardware");
Else
ShowMessage("Unknow Error");
end;
}
end;
end.
← →
Osmiy (2001-12-01 15:43) [9]marconi: Спасибо за код, но он к сожалению посылает сообщение только если вместо StrPas(" TEST "); я напишу имя своего компа, иначе он пишет :) в метке типа ошибка 2273, вроде как подходит к ошибке 2200-2299 - NNTP, но что это значит... мне мало что говорит.
Если знаешь как от этого избавится то можешь поиочь?
← →
Tosov (2001-12-01 16:25) [10]marconi
Пожалуйста прокоментируй эту строчку (есть подозрение, что она требует прав админа :(, к сожалению проверить пока не могу ):
NetMessageBufferSend("", User, UName, MsgBuff, lStrLenW(MsgBuff)* SizeOf(pWideChar));
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2002.01.31;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.004 c