이번 글에서는 Windows 원격 데스크톱 연결 프로그램 코드를 구현하기 위한 c#을 주로 소개합니다. 편집자께서도 꽤 괜찮다고 생각하셔서 지금부터 공유해드리도록 하겠습니다. 편집기를 따라가서 살펴보겠습니다
winform을 사용하여 Windows 원격 데스크톱 연결 프로그램을 만듭니다. Windows에는 원격 데스크톱 연결을 통합해야 합니다
우리 자신의 winform 프로그램에 넣고 원격 호스트의 구성 관리를 실현합니다.
원격 데스크톱 핵심 클래스 라이브러리
Windows 시스템에는 원격 데스크톱 activex dll이 함께 제공됩니다. 디렉터리:
c:WindowsSystem32mstscax.dll
이런 종류의 라이브러리는 C#을 사용하여 직접 호출할 수 없습니다. AxImp.exe
AxImp.exe
msdn.microsoft.com/zh-cn/library/ 도구를 소개합니다. 8ccdh774( VS.80).<a href="http://www.php.cn/wiki/1519.html" target="_blank">asp<code>msdn.microsoft.com/zh-cn/library/8ccdh774(VS.80).<a href="http://www.php.cn/wiki/1519.html" target="_blank">asp</a>x
x
ActiveX Control 가져오기 도구는 ActiveX 컨트롤의 COM 유형 라이브러리에 있는 유형 정의를 Windows Forms 컨트롤로 변환합니다.
컨트롤 변환
cmd에 다음 명령어를 입력
"c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\AxImp.exe" "c:\Windows\System32\mstscax.dll"
하여 AxMSTSCLib.dll, MSTSCLib.dll
원격 데스크톱 연결 핵심 코드
//远程连接核心方法 private AxMSTSCLib.AxMsRdpClient7 rdpc = null; protected void OnCreateControl() { rdpc = new AxMSTSCLib.AxMsRdpClient7(); rdpc.OnDisconnected += new AxMSTSCLib.IMsTscAxEvents_OnDisconnectedEventHandler(rdpc_OnDisconnected); this.Controls.Add(rdpc); rdpc.Dock = DockStyle.Fill; rdpc.BringToFront(); } void rdpc_OnDisconnected(object sender, AxMSTSCLib.IMsTscAxEvents_OnDisconnectedEvent e) { //处理断开连接 } public void Disconnect() { try { if (rdpc.Connected == 1) { rdpc.Disconnect(); } } catch (Exception) { } } private void SetRdpClientProperties(Machine parMachine) { rdpc.Server = parMachine.MachineName; rdpc.AdvancedSettings2.RDPPort = parMachine.Port; rdpc.UserName = parMachine.UserName; rdpc.Domain = parMachine.DomainName; if (parMachine.Password != "") { rdpc.AdvancedSettings5.ClearTextPassword = parMachine.Password; } rdpc.AdvancedSettings5.RedirectDrives = parMachine.ShareDiskDrives; rdpc.AdvancedSettings5.RedirectPrinters = parMachine.SharePrinters; rdpc.ColorDepth = (int)parMachine.ColorDepth; } public void Connect(Machine parMachine) { SetRdpClientProperties(parMachine); rdpc.Connect(); } //远程主机配置 [Serializable()] public class Machine { private string _RemoteDesktopConnectionName; public string RemoteDesktopConnectionName { get { return _RemoteDesktopConnectionName; } set { _RemoteDesktopConnectionName = value; } } private string _MachineName; public string MachineName { get { return _MachineName; } set { _MachineName = value; } } private string _DomainName; public string DomainName { get { return _DomainName; } set { _DomainName = value; } } private string _UserName; public string UserName { get { return _UserName; } set { _UserName = value; } } private string _Password; public string Password { get { return _Password; } set { _Password = value; } } private bool _AutoConnect; public bool AutoConnect { get { return _AutoConnect; } set { _AutoConnect = value; } } private bool _ShareDiskDrives; public bool ShareDiskDrives { get { return _ShareDiskDrives; } set { _ShareDiskDrives = value; } } private bool _SharePrinters; public bool SharePrinters { get { return _SharePrinters; } set { _SharePrinters = value; } } private bool _SavePassword; public bool SavePassword { get { return _SavePassword; } set { _SavePassword = value; } } private Colors _ColorDepth; public Colors ColorDepth { get { return _ColorDepth; } set { _ColorDepth = value; } } public int Port { get { return _Port; } set { _Port = value; } } private int _Port; public enum Colors { HighColor15 = 15, HighColor16 = 16, Color256 = 8, TrueColor = 24 } }[관련 권장 사항]
Windows에서 Navicat을 사용하여 연결할 수 있지만 연결할 수는 없습니다. PHP를 사용하여 원격으로 연결할 수 없나요?
2. 3.Python을 사용하여 Windows 데스크톱 프로그램 개발
4.Windows_PHP 튜토리얼에서 PHP4.0과 oracle 8 사이의 연결 설정에 대한 간략한 논의
위 내용은 C#을 사용하여 Windows 원격 데스크톱 연결을 구현하는 방법에 대한 예제 튜토리얼 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!