首页 > 学院 > 开发设计 > 正文

打造自己的Windows终端服务客户端

2019-11-17 05:37:24
字体:
来源:转载
供稿:网友

  1. 首先确保你的机器上存在mstscax.dll,假如没有这个文件,可以从http://download.microsoft.com/download/whistler/tools/1.0/wXP/en-us/msrdpcli.exe
下载并安装远程桌面连接软件.或者使用WindowXP中自带的mstscax.dll,运行regsvr32 mstscax.dll进行注册,ccrun测试使用的mstscax.dll版本号是5.1.2600.0,在Windows2000 Server中可以编译。

2. 运行C++Builder-->Components-->Import Active Control,在列表中找到下面的:
Microsoft Terminal Services Active Client 1.0 Type Library (Version 1.0)
点击Install,你可以选择将其安装到现在的包中,也可以新建一个,选择Into new package-->点击Browser将其保存为D:/PRogram Files/Borland/ccrun/mstsc/mstsc.bpk。在Description一栏可以填:Microsoft Terminal Service Control,这个名称将出现在安装完成后的Package列表中。点击OK以后,稍等片刻,系统会提示mstsc.bpl将被编译并且安装,是否继续,点击yes。这时假如一切正常的话,系统将提示有两个编译错误(嘿嘿,我指的是正常情况下),难道是BCB的BUG?提示找不到OlePrecedure的定义。我靠。记忆中有个OleProcedure,一个o,一个e,该不会真的是笔误吧。将两处OlePrecedure换成OleProcedure,再次编译,ok了,编译成功,点击Install安装。

3. 假如上一个步骤成功的话,在组件面板的ActiveX下将多出两个控件:MsTscAx和MsRdpClient,我们主要是利用MsTscAx控件。

4. MsTscAx控件的常用属性和方法:

// 桌面高度
MsTscAx1->DesktopHeight = 600;
// 桌面宽度
MsTscAx1->DesktopWidth = 800;
// 在连接前显示的字符串
MsTscAx1->ConnectingText = WideString("Welcome! ccrun.");
// 连接的服务器地址
MsTscAx1->Server = WideString(edtServer->Text);
// 窗口/全屏模式
MsTscAx1->FullScreen = false;

// 文档标题:打造自己的Windows终端服务客户端
// 作者:ccrun(老妖) 信箱:info@ccrun.com
// 为防止不负责任的转载者遗漏作者信息,故在此插入此信息,请见谅.
// 欢迎访问C++Builder 研究 http://www.ccrun.com

// 画面色深(通常都是256色)
MsTscAx1->ColorDepth = 16;
// 登录用户名
MsTscAx1->UserName = WideString(edtUserName->Text);
// 断开连接后显示的字符串
MsTscAx1->DisconnectedText = WideString("886,ccrun.");
// 将位图缓存到磁盘
MsTscAx1->AdvancedSettings->BitmapPeristence = 1;
// 启用数据压缩
MsTscAx1->AdvancedSettings->Compress = 1;
// 连接后运行的Shell程序,当关闭此Shell程序后自动断开连接
MsTscAx1->SecuredSettings->set_StartProgram(WideString("C://ccrun//123.exe"));
// 连接
MsTscAx1->Connect();
// 断开连接
MsTscAx1->Disconnect();

5. 新建一个Project,在Form上拖一个MsTscAx控件,根据上面介绍的属性和方法,相信你在BCB中建立自己的终端服务客户端没问题了。


6. 编译后的程序发布时必须在目标机器上存在mstscax.dll文件,并且用Regsvr32注册以后才能正常运行。

有BUG,意见和建议,欢迎致信到info@ccrun.com共同讨论,请勿携带附件,带附件信件一律自动删除,谢谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表