vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

ASP.NET, WebServices u. Remoting
Re: Remoting mit shared Assemblies 
Autor: STSC
Datum: 08.02.05 21:29

Hallo,

danke schon mal für deine große Hilfe und sorry für manche dummen Fragen, ist leider komplettes Neuland für mich..

Habe aber trotzdem das ganze mal mit einem Console Project als Server gemacht.

Das ist der Server:

Imports System.Runtime.Remoting
Imports System.Runtime.Remoting.Channels
Imports System.Runtime.Remoting.Channels.Tcp
Imports Remote
 
Public Class Main
    Const DefaultPort As Integer = 12345
    ' name of the well known object
    Const ObjectName As String = "RemotingClass.Instance"
    Public Shared Sub Main(ByVal args() As String)
 
        ChannelServices.RegisterChannel(New TcpChannel(DefaultPort))
        RemotingConfiguration.RegisterWellKnownServiceType(GetType( _
          RemotingClass), ObjectName, WellKnownObjectMode.Singleton)
 
        Console.WriteLine("Server is running...")
        Console.ReadLine()
        Console.WriteLine("Server is shutting down...")
    End Sub
 
End Class
RemotingClass.vb in einer neue Klassenbibliothek Remote.vbproj
Imports System
Imports System.ComponentModel
Imports System.Runtime.Remoting
Imports System.Runtime.Remoting.Channels
Imports System.Runtime.Remoting.Channels.Tcp
 
<Serializable()> _
Public Class RemotingClass
    Inherits System.MarshalByRefObject
 
    Public Overrides Function InitializeLifetimeService() As Object
        Return Nothing
    End Function
 
    Const DefaultPort As Integer = 12345
    ' name of the well known object
    Const ObjectName As String = "RemotingClass.Instance"
 
    Private m_SharedText As String
 
    Private Shared s_dx As RemotingClass
    Public Shared Sub InitClient()
 
        ChannelServices.RegisterChannel(New TcpChannel)
        s_dx = CType(Activator.GetObject(GetType(RemotingClass), String.Format( _
          "tcp://localhost:{0}/{1}", DefaultPort, ObjectName)), RemotingClass)
 
    End Sub
 
    Public Property SharedText() As String
        Get
            SharedText = m_SharedText
        End Get
        Set(ByVal Value As String)
            m_SharedText = Value
        End Set
    End Property
 
    Public Shared ReadOnly Property Instance() As RemotingClass
        Get
            Return s_dx
        End Get
    End Property
 
    Private Sub New()
        s_dx = Me
    End Sub
End Class
Dann noch mein Client:

    Private Sub Form1_Load(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles MyBase.Load
 
        Remote.RemotingClass.InitClient()
 
    End Sub
 
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button2.Click
        Label1.Text = Remote.RemotingClass.Instance.SharedText
    End Sub
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button1.Click
        Remote.RemotingClass.Instance.SharedText = TextBox1.Text
    End Sub
Was würdest du da noch verbessern, gehen würde es so.
Was mich aber noch bisschen stört ist, dass beim Client.exe immer auch die ganzen Assemblies dabei sein müssen, wenn ich ihn aufrufe, da er ja sonst Remote.RemotingClass.InitClient() nicht findet. Kann man das auch irgendwie aus der RemotingClass herausziehen und direkt im Clienten einbauen.
Weiterhin würde mich noch interessieren, ob man so was auch ohne shared properties realisieren kann?

Danke!!
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Remoting mit shared Assemblies2.515STSC07.02.05 10:05
Re: Remoting mit shared Assemblies1.317ModeratorDaveS07.02.05 10:14
Re: Remoting mit shared Assemblies1.296ModeratorDaveS07.02.05 10:19
Re: Remoting mit shared Assemblies1.320STSC07.02.05 13:31
Re: Remoting mit shared Assemblies1.427ModeratorDaveS07.02.05 13:56
Re: Remoting mit shared Assemblies1.263STSC07.02.05 14:04
Re: Remoting mit shared Assemblies1.246ModeratorDaveS07.02.05 14:11
Re: Remoting mit shared Assemblies1.300STSC07.02.05 14:13
Re: Remoting mit shared Assemblies1.343ModeratorDaveS07.02.05 15:45
Re: Remoting mit shared Assemblies1.319STSC07.02.05 16:09
Re: Remoting mit shared Assemblies1.186ModeratorDaveS07.02.05 17:46
Re: Remoting mit shared Assemblies1.260STSC07.02.05 18:02
Re: Remoting mit shared Assemblies1.528STSC08.02.05 10:39
Re: Remoting mit shared Assemblies1.381ModeratorDaveS08.02.05 12:30
Re: Remoting mit shared Assemblies1.343STSC08.02.05 12:58
Re: Remoting mit shared Assemblies1.226ModeratorDaveS08.02.05 14:19
Re: Remoting mit shared Assemblies1.386STSC08.02.05 21:29
Re: Remoting mit shared Assemblies1.266STSC09.02.05 11:19
Re: Remoting mit shared Assemblies1.308STSC11.02.05 21:03
Re: Remoting mit shared Assemblies1.289ModeratorDaveS12.02.05 12:55
Re: Remoting mit shared Assemblies1.541STSC14.02.05 11:29
Re: Remoting mit shared Assemblies1.470ModeratorDaveS14.02.05 22:24
Re: Remoting mit shared Assemblies1.220STSC15.02.05 13:52
Re: Remoting mit shared Assemblies1.302ModeratorDaveS15.02.05 15:24
Re: Remoting mit shared Assemblies1.270STSC15.02.05 19:49
Re: Remoting mit shared Assemblies1.372ModeratorDaveS15.02.05 20:15
Re: Remoting mit shared Assemblies1.439STSC15.02.05 23:46
Re: Remoting mit shared Assemblies1.424ModeratorDaveS16.02.05 09:54

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel