also ich habe wieder mal ein problem mit dem remoting und zus�tzlich noch
mit dem screenshot.

was ich mache:

server hat hashtable mit clients und eine PictureBox

der client hat die funktion _captureScreen:
Public Function _captureScreen() As Image Implements IClient._captureScreen
    Dim getScreenShot As ScreenShot
    myParent.status.Text = "Screenshot called"
    myParent.Screen.Image = CType(getScreenShot.CaptureScreen(),
System.Drawing.Bitmap)
    Return Me.myParent.Screen.Image
End Function

Die Klasse ScreenShot macht einfach ein Bildschirmfoto vom aktuellen
Screenshot. habe den code aus dem netz:
Public Class ScreenShot

Private Declare Function CreateDC Lib "gdi32" Alias "CreateDCA" (ByVal
lpDriverName As String, ByVal lpDeviceName As String, ByVal lpOutput As
String, ByVal lpInitData As String) As Integer

Private Declare Function CreateCompatibleDC Lib "GDI32" (ByVal hDC As
Integer) As Integer

Private Declare Function CreateCompatibleBitmap Lib "GDI32" (ByVal hDC As
Integer, ByVal nWidth As Integer, ByVal nHeight As Integer) As Integer

Private Declare Function GetDeviceCaps Lib "gdi32" Alias "GetDeviceCaps"
(ByVal hdc As Integer, ByVal nIndex As Integer) As Integer

Private Declare Function SelectObject Lib "GDI32" (ByVal hDC As Integer,
ByVal hObject As Integer) As Integer

Private Declare Function BitBlt Lib "GDI32" (ByVal srchDC As Integer, ByVal
srcX As Integer, ByVal srcY As Integer, ByVal srcW As Integer, ByVal srcH As
Integer, ByVal desthDC As Integer, ByVal destX As Integer, ByVal destY As
Integer, ByVal op As Integer) As Integer

Private Declare Function DeleteDC Lib "GDI32" (ByVal hDC As Integer) As
Integer

Private Declare Function DeleteObject Lib "GDI32" (ByVal hObj As Integer) As
Integer

Const SRCCOPY As Integer = &HCC0020

Private oBackground As Bitmap

Private FW, FH As Integer

Public Function CaptureScreen() As Image

Dim hSDC, hMDC As Integer

Dim hBMP, hBMPOld As Integer

Dim r As Integer

hSDC = CreateDC("DISPLAY", "", "", "")

hMDC = CreateCompatibleDC(hSDC)

FW = GetDeviceCaps(hSDC, 8)

FH = GetDeviceCaps(hSDC, 10)

hBMP = CreateCompatibleBitmap(hSDC, FW, FH)

hBMPOld = SelectObject(hMDC, hBMP)

r = BitBlt(hMDC, 0, 0, FW, FH, hSDC, 0, 0, 13369376)

hBMP = SelectObject(hMDC, hBMPOld)

r = DeleteDC(hSDC)

r = DeleteDC(hMDC)

oBackground = Image.FromHbitmap(New IntPtr(hBMP))

Return CType(oBackground, Image)

End Function

End Class





wenn ich nun von meinem server aus die funktion am client aufrufe:

Public Function _getClientScreenShort() As Image Implements
IServer._getClientScreenShot

Dim user As IClient

Dim capturedScreen As Image

For Each user In _clients.Values

Try

capturedScreen = user._captureScreen

Catch e As Exception

Me._schoolMain.Info.Text = "Exception in Screenshot: " & e.ToString

End Try

Next

Return capturedScreen

End Function



dann passiert folgendes:

am client wird der statustext "screenshot called" ausgegeben.

danach passiert aber nichts, die picture-box bleibt leer.



der server h�ngt sich sogar auf.





kann mir jemand auf die spr�nge helfen?


_______________________________________________
Vb.net Mailingliste, Postings senden an:
[EMAIL PROTECTED]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/vb.net

Odpovedet emailem