Autor Beitrag
Sorryman
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 52



BeitragVerfasst: Mi 23.04.03 09:10 
Ich hab gelesen, dass die Datenpakete ja nicht immer ankommen... Das heisst doch theoretisch, dass ich in einem bestimmten Zeitabstand mehrmals senden sollte um sicher zu gehen, dass die Daten auch ankommen!

Ich hab nämlich ebenfalls vor auf einem Computer die Liste der angeschalteten PCs anzeigen zu lassen! Gleichzeitig möchte aber auch anzeigen lassen, welcher Benutzer gerade angemeldet ist und deswegen müsste ich sichergehen, dass die Daten auch ankommen!
Mir ist natürlich klar, dass das Programm dann auf jedem Rechner laufen müsste...

Kann man das noch anders realisieren oder ist es so in der Art schon gut genug?
focus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 187

XP, 2k, 98, Me
D6 Prof
BeitragVerfasst: Mi 23.04.03 09:21 
in meinem derzeitigen prog sende ich 3x hintereinander ein whosallive und muss sagen das reicht bei weitem allerdings verwende ich das nur um eine liste aller aktiven teilnehmer zu erhalten... wenn du wichtige daten wie benutzerlisten o.ä sendest würde ich dir raten zunächst eine liste der verfügbaren rechner zu erstellen und zu jedem einzeln die connection aufzubauen(tcp)...um sicherzustellen das auch alles angekommen ist...und vor allem bei wem
gruss
michael
Sorryman Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 52



BeitragVerfasst: Mi 23.04.03 10:02 
Ich wollte das eigentlich so machen:

- 4 Computer
- jeder sendet seinen Computernamen + Benutzernamen an jeden der anderen 3
- jeder der das Paket empfängt teilt das Paket auf in Computer und User
- und trägt diese in eine liste ein
focus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 187

XP, 2k, 98, Me
D6 Prof
BeitragVerfasst: Mi 23.04.03 10:44 
dann würde ich beim broadcasten bleiben.
gruss
michael
Sorryman Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 52



BeitragVerfasst: Mi 23.04.03 13:13 
Jetzt hab ich aber ein kleines Problem:

Delphi sagt mir:
[Error] Main.pas(21): Undeclared identifier: 'TIdSocketHandle'

Warum???
focus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 187

XP, 2k, 98, Me
D6 Prof
BeitragVerfasst: Mi 23.04.03 13:16 
so blank kann man darüber keine aussage treffen...
für welche methode hast du dich entschieden?
focus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 187

XP, 2k, 98, Me
D6 Prof
BeitragVerfasst: Mi 23.04.03 13:26 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
uses IdUDPclient;

procedure sendBroadcast;                    
var
  Broadcaster: TIdUDPClient;
begin 
  Broadcaster := TIdUDPClient.create(nil);      // connection festlegen
  Broadcaster.Active := true;
  
  Broadcaster.Broadcast('whos allive?'9090);  // senden
  Broadcaster.free;
end;

das läuft auf jeden fall...

gruss
michael
(ps: habe im nachhinein dochnoch den ganzen ballast rausgeschmissen)


Zuletzt bearbeitet von focus am Mi 23.04.03 14:21, insgesamt 5-mal bearbeitet
O'rallY
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 563



BeitragVerfasst: Mi 23.04.03 14:00 
Du musst die Unit IdSocketHandle einbinden. Das steht übrigens auch in meinem FAQ-Beitrag .

_________________
.oO'rallY
Linux is like a tipi: No gates, no windows and a gnu-eating apache inside...
Sorryman Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 52



BeitragVerfasst: Mi 23.04.03 14:58 
Danke! Hab das eingebunden und jetzt funktioniert es auch...

Jetzt hab ich wieder ein anderes Problem!

ausblenden Quelltext
1:
Windows.GetComputerName(Buffer, Size);					


Diseser Code soll ja bekanntlich den Computernamen ausgeben... Funktioniert auch unter XP, aber unter 98 bekomm ich nur irgendwelche Zeichen...
Hab in der Hilfe gelesen, dass es unter Win32s nicht läuft... kann ich bei 98 den Namen irgendwie anders auslesen?
focus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 187

XP, 2k, 98, Me
D6 Prof
BeitragVerfasst: Mi 23.04.03 15:08 
damit schonmal probiert?(k.a. ob das unter win98 tut...aber ich denke schon)
GetHostName(Buffer, Sizeof(Buffer));
gruss
michael
Sorryman Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 52



BeitragVerfasst: Mi 23.04.03 15:15 
Schönen Dank auch :-)
Jetzt hab ich glaub ich alles was ich brauche!!!

Nur komisch, dass dieser Befehl nicht immer benutzt wird, wenn er bei jedem System den Namen ausliest...