![]() |
Re: NetSend mit Delphi
Zitat:
Ist
Delphi-Quellcode:
besser oder ist das egal?
Form1.Handle
|
Re: NetSend mit Delphi
So viel ich weiß, soll es nur standardmäßig deaktiviert werden. Die SysAdmins werden Microsoft aber was hustenn, wenn MS das rausschmeißt.
|
Re: NetSend mit Delphi
Also der Code von Matze funktioniert bei mir ohne Weiteres, und der von Luckie funktioniert, wenn ich ein paar Leerzeichen einfüge (Thx @MathiasSimmack, und ja mein Nickname ist Viech :mrgreen: ):
Delphi-Quellcode:
...Hm jetzt wäre noch eine Funktion zum Absender faken schön :roll: ist sowas eigentlich schwer? Also gehören da viele Zeilen Code ins Programm, oder kann man sowas schon mit wenigen Zeilen realisieren?
var
sReceiver, sMessage, s : String; begin sReceiver := Edit1.Text; sMessage := Edit2.Text; s := 'send ' + sReceiver + ' ' + sMessage; Shellexecute(Form1.Handle, 'open', 'net', pointer(s), nil, SW_HIDE); end; |
Re: NetSend mit Delphi
Da gehören genauso viele Zeilen ins Programm, wie es benötigt, um NetMessageBufferSend zu implementieren, wie du es in meinem NetSend findest.
|
Re: NetSend mit Delphi
Zitat:
![]() nimm den Thread, den ich verfasst habe und die Sache ist in Ordnung ;) [Edit]Man muss aber die entsprechenden rechte haben, als "Normal-User" geht das nicht[/Edit] |
Re: NetSend mit Delphi
Rechte, @Matze? Welche Rechte? :?
|
Re: NetSend mit Delphi
Ich meine, wenn man z.B. unter WinXP (wie ich) als Admin angemeldet bin, dann klappt es, den Dienst zu programmieren/erstellen.
Ist man jedoch ein normaler User, der keine Admin Rechte hat, dann geht der Code aus dem Thread, auf den ich verwiesen habe, nicht. |
Re: NetSend mit Delphi
Also ich habs mit dem Code hier aus der DP gemacht:
(Bindet die netapi32.dll ein, also kein Umweg übers cmd) Funktioniert super :mrgreen:
Delphi-Quellcode:
// NETAPI32.DLL direkt einbinden
function NetMsgSend(const ServerName, MsgName, FromName, Msg: WideString): Integer; function WC(const Name: WideString): PWideChar; begin if Name = '' then Result := nil else Result := PWideChar(Name); end; var NetLib: THandle; NetMessageBufferSend: function(ServerName, MsgName, FromName: PWideChar; Buffer: PWideChar; BufferLen: DWord): Integer; stdcall; begin Result := -1; NetLib := LoadLibrary('NETAPI32.DLL'); if NetLib <> 0 then try @NetMessageBufferSend := GetProcAddress(NetLib, 'NetMessageBufferSend'); if Assigned(NetMessageBufferSend) then Result := NetMessageBufferSend(WC(ServerName), WC(MsgName), WC(FromName), Pointer(Msg), Length(Msg) * 2); finally FreeLibrary(NetLib); end; end; // Senden-Knopf procedure Thaupt.senditClick(Sender: TObject); var status: shortint; begin status := NetMsgSend('', empf.Text, abs.Text, nachricht.Text); if status = 0 then ShowMessage('Nachricht versendet!'); end; |
Re: NetSend mit Delphi
Ist das nicht der, aus den ich verwiesen habe? :gruebel:
Probiere den mal ohne Admin-Rechte auszuführen ;) |
Re: NetSend mit Delphi
Zitat:
Mal abwarten bis das SP2 rauskommt :lol: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz