WinFuture-Forum.de: C# Remoting Events Problem - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

C# Remoting Events Problem


#1 Mitglied ist offline   LukasW 

  • Gruppe: Mitglieder
  • Beiträge: 2
  • Beigetreten: 27. März 06
  • Reputation: 0

geschrieben 27. März 2006 - 20:49

Hallo,

Ich muss zugeben ich mag einige Programmiersprachen. C# gehört allerdings (bisher) nicht dazu.

Bei einem ein Schulprojekt habe ich folgendes Problem:
Ein "Server" hat eine Liste mit Clients.
Er wirft ein remoting event zu jedem der Clients (port 80).

Das Remotingevent ruft irgendeine Funktion am Client auf (das ist der Punkt, bei dem ich nicht weiß wie er funktionieren soll) und schreibt einen Eintrag (den das RemotingEvent mitschickt) in das GUI (ine eine ListBox).


Wichtige Probleme:
Es ist "verboten" mit einem Thread (außer dem Mainthread) auf das GUI zu schreiben
Visual Studio 2005 final muss verwendet werden (die Sicherheitsrichtlinien scheinen von Version zu Version anders zu sein).

Ich wäre froh, könnte mir hier jemand helfen. Knabbere schon ganz schön lang an dem Problem.
0

Anzeige



#2 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.533
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 27. März 2006 - 22:08

Zitat

Es ist "verboten" mit einem Thread (außer dem Mainthread) auf das GUI zu schreiben

Dann lass dem Mainthread eine Nachricht zukommen.

Zitat

(die Sicherheitsrichtlinien scheinen von Version zu Version anders zu sein)

Welche Sicherheitsrichtlinien? Den Quatsch, den sich Microsoft da einbildet, oder was?
Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

#3 Mitglied ist offline   LukasW 

  • Gruppe: Mitglieder
  • Beiträge: 2
  • Beigetreten: 27. März 06
  • Reputation: 0

geschrieben 27. März 2006 - 22:20

Beitrag anzeigenZitat (Rika: 27.03.2006, 23:08)

Dann lass dem Mainthread eine Nachricht zukommen.

Ich würde gerne wissen wie genau das funktioniert und wie das praktisch (vll ein ganz kurzes Codebsp) aussieht.

@Sicherheitsrichtlinien: Genau das was MS sich vorstellt ist in diesem Fall ziemlich störend.
Wie man das Problem vermeiden kann weiß ich aber nicht.
0

#4 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.533
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 28. März 2006 - 00:24

Zitat

Ich würde gerne wissen wie genau das funktioniert und wie das praktisch (vll ein ganz kurzes Codebsp) aussieht.

Wie wär's mit einer synchronisierten Liste, in die alle Event-Threads schreiben und die vom Mainthread abgearbeitet wird?

Zitat

Wie man das Problem vermeiden kann weiß ich aber nicht.

Dem Projektleiter diesen Schwachsinn ausreden. Alles deaktivieren und freuen, daß es genauso unsicher ist wie vorher, aber suppi läuft.
Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

#5 Mitglied ist offline   Talla 

  • Gruppe: aktive Mitglieder
  • Beiträge: 225
  • Beigetreten: 24. Februar 04
  • Reputation: 0
  • Wohnort:Esslingen

geschrieben 28. März 2006 - 08:26

Wieso ist es verboten dass ein Thread die GUI ändert?

Schau dir mal Control.Invoke. bzw. Control.BeginInvoke an.

Und weiß nicht was ihr mit der Sicherheitspolitik von .Net habt. Dort wurde CAS endlich mal ordentlich umgesetzt und der Code darf prinzipiell erstmal nicht alles wie in vielen anderen unmanaged Sprachen.
Heimat ist nicht immer dort, wo wir zur Welt kamen - Heimat ist wo wir lieben. *Ehm Welk
0

#6 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.533
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 28. März 2006 - 16:23

Zitat

Wieso ist es verboten dass ein Thread die GUI ändert?

Designvorgabe, IMHO auch vernünftig. Stichwort: Model-View-Controller

Zitat

Und weiß nicht was ihr mit der Sicherheitspolitik von .Net habt. Dort wurde CAS endlich mal ordentlich umgesetzt und der Code darf prinzipiell erstmal nicht alles wie in vielen anderen unmanaged Sprachen.

1. Es gibt nicht mal eine Policy, die Unsafe Code verbietet. Und damit kann man nun wirklich alles anstellen.
2. Selbst mit Safe Code kann man schon allein in den vorgegebenen Bibliotheken eigentlich undenkbar viel anstellen, weil die kein bisschen Sicherheit bietet. Sicher programmierter eigener Code ist meist auch nicht vorhanden, und wie's scheint sollte es gar bei absolut sicherem Code möglich sein, aus der Sandbox auszubrechen.
3. Meist nützt das sowieso nichts, weil man das Deployment mit Setup.exe, MSI-Bootstrapper oder dergleichen anstrengt, wo erst der potentiell unsichere Code dafür sorgen muss, daß die angeblich sichere Umgebung aufgesetzt wird.

Mittlerweile ist man schon bei .NET 2.0, aber offenbar hat immernoch nicht jeder gemerkt, da das Sicherheitsmodell eine reine Farce ist.
Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0