参考网址
https://blog.csdn.net/wochendaixin/article/details/78412196
https://www.itdaan.com/blog/2018/07/26/43ee6775cc523e383b8301d4fcf8aa8f.html
https://www.itdaan.com/blog/2017/12/14/e79325703755e691efd113f71c5c36e2.html
https://blog.csdn.net/wochendaixin/article/details/78540828
https://blog.csdn.net/chaozi2008/article/details/8591109
https://blog.csdn.net/fuhanghang/article/details/119945096
创建基于对话框MFC项目
工具 -> 选择工具箱项 -> COM组件 -> Microsoft Terminal Services Client Control -> 勾选确定
工具箱 -> 常规 -> Microsoft RDP Client Control - version9 -> 拖放到对话框上
在IDC_MSTSCAX1上右键 -> 添加变量
项目管理器右键 -> 类向导 -> 添加类 -> 类型库中的MFC类 -> 文件 -> 位置里输入mstscax.dll -> 接口选择CMsRdpClientAdvancedSettings8
打开CMsRdpClientAdvancedSettings8.h文件 -> 注释#import "mstscax.dll" no_namespace
打开CMsRdpClientAdvancedSettings8.h文件 -> 加入#import "mstscax.dll" no_namespace rename("UINT_PTR", "MSTSCAX_UINT_PTR")
在OnInitDialog函数中加入
CMsRdpClientAdvancedSettings8 advancedSettings = m_mstscax1.get_AdvancedSettings8();
m_mstscax1.put_Server(L"192.168.10.169");
m_mstscax1.put_UserName(L"Administrator");
advancedSettings.put_ClearTextPassword(L"123");
advancedSettings.put_RDPPort(8848);
advancedSettings.put_SmartSizing(TRUE);
m_mstscax1.put_DesktopHeight(768);
m_mstscax1.put_DesktopWidth(1024);
m_mstscax1.put_ColorDepth(32);
m_mstscax1.put_ConnectingText(_T("请稍后..."));
m_mstscax1.Connect();
消息映射
BEGIN_EVENTSINK_MAP(xxxxxxDlg, CWnd)
ON_EVENT(xxxxxxDlg, IDC_MSTSCAX1, 1, xxxxxxDlg::OnConnecting, VTS_NONE)
ON_EVENT(xxxxxxDlg, IDC_MSTSCAX1, 2, xxxxxxDlg::OnConnected, VTS_NONE)
ON_EVENT(xxxxxxDlg, IDC_MSTSCAX1, 3, xxxxxxDlg::OnLoginComplete, VTS_NONE)
ON_EVENT(xxxxxxDlg, IDC_MSTSCAX1, 4, xxxxxxDlg::OnDisconnected, VTS_I4)
ON_EVENT(xxxxxxDlg, IDC_MSTSCAX1, 5, xxxxxxDlg::OnEnterFullScreenMode, VTS_NONE)
ON_EVENT(xxxxxxDlg, IDC_MSTSCAX1,
MFC的Microsoft RDP Client Control避坑指南
于 2021-07-14 10:22:37 首次发布