【发布时间】:2019-01-02 17:25:10
【问题描述】:
我正在使用社区版,但不知道在这方面有任何限制。
我已通过Component |> Import Component... 导入mstscax.dll 并选择“ActiveX”。该组件未显示在组件面板中,直接编辑 DFM 以包含 TMsRdpClient[digit] 组件会导致表单生成器错误,指出无法找到该组件。
但是,如果这些错误被“取消”而不是“忽略”,则可以构建和运行预制项目(RDPWrap 的RDPCheck)。还需要解决错误mentioned here。
在我自己创建的项目中,我可以将生成的文件MSTSCLib_TLB 添加到uses 子句中,并将TMsRdpClient7 类型的变量添加到表单中。在FormCreate 函数中(例如)我可以调用TMsRdpClient7.Create(Self) 然后访问对象的属性。如果我设置了足够多的属性(见下文),我会在调用 TMsRdpClient7.Connect 后获得授权弹出窗口并看到登录屏幕。
with RDP do
begin
Left := 0;
Top := 0;
Width := Self.Width;
Height := Self.Height;
Parent := Self;
Visible := True;
DisconnectedText := 'Disconnected.';
UserName := '';
Server := '127.0.0.2';
end;
【问题讨论】:
-
当您导入 ActiveX 时,您是否勾选了 Generate component wrappers 并为其分配了一个调色板页面?
-
@KenWhite:如果我没有,我相信
MSTSCLib_TLB.pas不会生成。我试图将组件放置在 ActiveX 页面(默认情况下不显示)和其他一些已经填充的页面中。两次都没有出现。 -
没有。无需为调色板创建组件即可导入 ActiveX 控件。 (如果不是这种情况,将不会有一个复选框来检查以表明您想要这样做,会吗?)我的机器上有几十个 _TLB.pas 文件,这些文件在 VCL 调色板上没有组件。 TLB 文件根本不需要生成任何组件代码。
-
我看到的唯一复选框看起来像是确定是否生成了类型标题
.pas文件。我勾选了任何看起来相关的内容并选择了组件选项卡。查看已接受的答案。