private static void Incoming(object Guest) { currentSession.Resume(); IRDPSRAPIAttendee MyGuest = (IRDPSRAPIAttendee)Guest; MyGuest.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_MAX; }
private void Incoming(object Guest) { IRDPSRAPIAttendee MyGuest = (IRDPSRAPIAttendee)Guest; MyGuest.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_INTERACTIVE; //MyGuest.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_VIEW; }
/** * This is called whenever a Guru connects to this RDP session (see StartRDPSession) */ private void OnGuruConnect(object attendee) { IRDPSRAPIAttendee guru = attendee as IRDPSRAPIAttendee; guru.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_INTERACTIVE; Console.WriteLine("The Guru now has control!"); }
private void Incoming(object Guest) { IRDPSRAPIAttendee MyGuest = (IRDPSRAPIAttendee)Guest; MyGuest.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_MAX; RDPSRAPITcpConnectionInfo info = (RDPSRAPITcpConnectionInfo)MyGuest.ConnectivityInfo; AxEventHandler <RemoteServerIncomingConnectionEventArgs> handler = this.IncomingConnection; if (handler != null) { handler(new RemoteServerIncomingConnectionEventArgs(new SharpViewCore.RemoteConnectionInfo(info.LocalIP, info.PeerIP, info.LocalPort, info.PeerPort, info.Protocol))); } this.Guests.Add(new RemoteDesktopGuest(MyGuest.ConnectivityInfo, MyGuest.RemoteName, MyGuest.Id, MyGuest.Flags, MyGuest.Invitation) { ControlLevel = MyGuest.ControlLevel }); if (this.StartApplicationsOnConnect) { for (int i = 0; i < Applications.Count; i++) { Process.Start(this.Applications[i]); } } }
private void OnAttendeeConnected(object pObjAttendee) { IRDPSRAPIAttendee pAttendee = pObjAttendee as IRDPSRAPIAttendee; pAttendee.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_VIEW; //LogTextBox.Text += ("Attendee Connected: " + pAttendee.RemoteName + Environment.NewLine); DBYE YAZ }
private void _rdpSession_OnAttendeeConnected(object pObjAttendee) { IRDPSRAPIAttendee pAttendee = pObjAttendee as IRDPSRAPIAttendee; pAttendee.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_VIEW; //_rdpSession.Resume(); Console.WriteLine(DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss") + ":" + pAttendee.Id + "," + pAttendee.RemoteName + ":有用户连接成功!"); }
public static UserData FromAttendee(IRDPSRAPIAttendee attendee) { if (attendee == null) { throw new ArgumentNullException("attendee"); } // get the attendee's invitation var invitation = attendee.Invitation; try { // find the user data that corresponds to the given connection string UserData data; lock (dataLock) if (!byConnectionString.TryGetValue(invitation.ConnectionString, out data)) { return(null); } // remove a pending connection or ensure the attendee is connected PendingConnection pendingConnection; lock (data.connectionLock) { if (!data.pendingConnections.TryGetValue(attendee.RemoteName, out pendingConnection)) { return(data.connectedAttendeeIds.Contains(attendee.Id) ? data : null); } data.pendingConnections.Remove(attendee.RemoteName); data.connectedAttendeeIds.Add(attendee.Id); } pendingConnection.TimeoutTimer.Dispose(); // set the initial control level if (pendingConnection.InitialControlLevel != CTRL_LEVEL.CTRL_LEVEL_INVALID) { attendee.ControlLevel = pendingConnection.InitialControlLevel; } // enable all virtual channels IRDPSRAPIVirtualChannel[] channels; lock (data.grantedVirtualChannels) { channels = new IRDPSRAPIVirtualChannel[data.grantedVirtualChannels.Values.Count]; data.grantedVirtualChannels.Values.CopyTo(channels, 0); } foreach (var channel in channels) { try { channel.SetAccess(attendee.Id, CHANNEL_ACCESS_ENUM.CHANNEL_ACCESS_ENUM_SENDRECEIVE); } catch { } } // return the data return(data); } finally { Marshal.ReleaseComObject(invitation); } }
private static void incomingView(object Guest) { countViewClient++; IRDPSRAPIAttendee MyGuest = (IRDPSRAPIAttendee)Guest; MyGuest.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_VIEW; Console.WriteLine("connected with view: " + countViewClient); }
private static void incomingControl(object Guest) { countControlClient++; IRDPSRAPIAttendee MyGuest = (IRDPSRAPIAttendee)Guest; MyGuest.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_INTERACTIVE; Console.WriteLine("connected with control: " + countControlClient); }
private void RdpSessionOnOnAttendeeConnected(object pObjAttendee) { IRDPSRAPIAttendee pAttendee = pObjAttendee as IRDPSRAPIAttendee; pAttendee.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_VIEW; Debug.WriteLine("Attendee Connected: " + pAttendee.RemoteName + Environment.NewLine); _attendees.Add(pAttendee.RemoteName); lblMessage.Invoke(new Action(UpdateList)); }
private void RdpSessionOnOnAttendeeConnected(object pObjAttendee) { //获取用户实例 IRDPSRAPIAttendee pAttendee = pObjAttendee as IRDPSRAPIAttendee; pAttendee.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_INTERACTIVE; this._hostCaster.KillSendTask(); this.lb_State.Visible = true; Debug.WriteLine("连接成功:" + pAttendee.RemoteName + Environment.NewLine); this._attendee = pAttendee; }
private void _rdpSession_OnAttendeeDisconnected(object pDisconnectInfo) { IRDPSRAPIAttendeeDisconnectInfo pinfo = pDisconnectInfo as IRDPSRAPIAttendeeDisconnectInfo; if (pinfo == null) { return; } IRDPSRAPIAttendee p = pinfo.Attendee; Console.WriteLine(DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss") + ":" + p.Id + "," + p.RemoteName + "," + p.ControlLevel + "," + pinfo.Code + "," + pinfo.Reason + ":断开连接!"); }
private void OnAttendeeConnected(object pObjAttendee) { _networkConnection = true; //textBox2.AppendText(Environment.NewLine + pObjAttendee.ToString()); IRDPSRAPIAttendee pAttendee = pObjAttendee as IRDPSRAPIAttendee; //MessagesClass propTest = new MessagesClass(); //OnControlLevelChangeRequest(pObjAttendee, CTRL_LEVEL.CTRL_LEVEL_VIEW); //if (_networkConnection == true) //{ NetworkComms.AppendGlobalIncomingPacketHandler <string>("CtrlLvl", HandleIncomingCtrlLvlPacket); //if (_checkSwitch == false) // { // OnControlLevelChangeRequest(pObjAttendee, CTRL_LEVEL.CTRL_LEVEL_VIEW); //propTest.sendMessages("CTRL_LEVEL_VIEWONLY"); //propTest.sendMessages("CTRL_LEVEL_NORMAL"); // } //else //{ //MessagesClass propTest = new MessagesClass(); // propTest.sendMessages("CTRL_LEVEL_VIEWONLY"); //} //} //pAttendee.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_VIEW; textBox1.AppendText(Environment.NewLine + pAttendee.ControlLevel.ToString()); textBox2.AppendText(pAttendee.RemoteName + Environment.NewLine); //textBox2.AppendText(Environment.NewLine + pAttendee.RemoteName..ConnectivityInfo.ToString()); //LogTextBox.Text += ("Attendee Connected: " + pAttendee.RemoteName + Environment.NewLine); LogTextBox.AppendText("Attendee Connected: " + pAttendee.RemoteName + Environment.NewLine); }
public bool DestroyAttendee(IRDPSRAPIAttendee attendee) { if (attendee == null) { throw new ArgumentNullException("attendee"); } // either remove a pending or established connction PendingConnection pendingConnection; lock (connectionLock) { if (!pendingConnections.TryGetValue(attendee.RemoteName, out pendingConnection)) { return(connectedAttendeeIds.Remove(attendee.Id)); } pendingConnections.Remove(attendee.RemoteName); } pendingConnection.TimeoutTimer.Dispose(); return(true); }
private static void incomingControl(object Guest) { countControlClient++; IRDPSRAPIAttendee MyGuest = ( IRDPSRAPIAttendee )Guest; MyGuest.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_INTERACTIVE; /* * CResolution res1 = new CResolution(); * DEVMODE1 dm1 = res1.getCurrentResolution(); * DEVMODE1 dm2 = res1.getSupportedResolutionList()[0]; * * //String a = Console.ReadLine(); * res1.setSupportedResolution(dm2); * res1.setSupportedResolution(dm1); * //String abn = Console.ReadLine(); * */ // Console.WriteLine("connected with control: " + countControlClient); }
void OnControlLevelChangeRequest(object pObjAttendee, CTRL_LEVEL RequestedLevel) { IRDPSRAPIAttendee pAttendee = pObjAttendee as IRDPSRAPIAttendee; //pAttendee.ControlLevel = RequestedLevel; //textBox1.AppendText(RequestedLevel.ToString() + Environment.NewLine); //textBox1.AppendText(Environment.NewLine + RequestedLevel.ToString()); //BinaryWriter //System.Net.Sockets.SendPacketsElement test = new S; //System.Net.Sockets.NetworkStream Test; //IRDPSRAPITransportStream.WriteBuffer.ToString(); //IRDPSRAPITransportStream.WriteBuffer(RDPCOMAPILib.RDPTransportStreamBuffer) //if (_checkSwitch == true) if (checkBox1.Checked == true) { pAttendee.ControlLevel = RequestedLevel; textBox1.AppendText(Environment.NewLine + RequestedLevel.ToString()); } else { pAttendee.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_VIEW; textBox1.AppendText(Environment.NewLine + RequestedLevel.ToString()); } }
public void ChangeControl(object Client, CTRL_LEVEL level) { IRDPSRAPIAttendee attendee = (IRDPSRAPIAttendee)Client; attendee.ControlLevel = level; }
void OnControlLevelChangeRequest(object pObjAttendee, CTRL_LEVEL RequestedLevel) { IRDPSRAPIAttendee pAttendee = pObjAttendee as IRDPSRAPIAttendee; pAttendee.ControlLevel = RequestedLevel; }
public static void Incoming(object guest) { IRDPSRAPIAttendee MyGuest = (IRDPSRAPIAttendee)guest; MyGuest.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_INTERACTIVE; }
private static void Incoming(object Guest) { IRDPSRAPIAttendee MyGuest = (IRDPSRAPIAttendee)Guest; MyGuest.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_MAX; }
/** * (see StartRDPSession) this whole method may not be needed */ private void OnGuruChangeControlLevel(object attendee, CTRL_LEVEL level) { IRDPSRAPIAttendee guru = attendee as IRDPSRAPIAttendee; guru.ControlLevel = level; }
private void Incoming(object partner) { IRDPSRAPIAttendee myGuest = (IRDPSRAPIAttendee)partner; myGuest.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_INTERACTIVE; }
private void RdpSessionOnOnControlLevelChangeRequest(object pObjAttendee, CTRL_LEVEL RequestedLevel) { IRDPSRAPIAttendee pAttendee = pObjAttendee as IRDPSRAPIAttendee; Console.WriteLine(DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss") + ":" + pAttendee.Id + "," + pAttendee.RemoteName + ":请求更好权限。"); }
private void ControlLevelChange(Object client, CTRL_LEVEL RequestedLevel) { IRDPSRAPIAttendee Client = (IRDPSRAPIAttendee)client; Client.ControlLevel = RequestedLevel; }
private void OpenSession(Object client) { IRDPSRAPIAttendee Client = (IRDPSRAPIAttendee)client; Client.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_MAX; }
public void Incoming(object Guest) { IRDPSRAPIAttendee viewer = (IRDPSRAPIAttendee)Guest; viewer.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_VIEW; }
private void OnAttendeeConnected(object pObjAttendee) { IRDPSRAPIAttendee pAttendee = pObjAttendee as IRDPSRAPIAttendee; pAttendee.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_INTERACTIVE; }
private static void Incoming(object Client) { IRDPSRAPIAttendee newClient = (IRDPSRAPIAttendee)Client; newClient.ControlLevel = CTRL_LEVEL.CTRL_LEVEL_VIEW; }