public void Connect(ITerminalServicesSession target, string password, bool synchronous) { if (!Local) { throw new InvalidOperationException("Cannot connect sessions that are running on remote servers"); } if (IsVistaSp1OrHigher) { NativeMethodsHelper.Connect(_sessionId, target.SessionId, password, synchronous); } else { NativeMethodsHelper.LegacyConnect(_server.Handle, _sessionId, target.SessionId, password, synchronous); } }