3#include "PluginFreeRDP.h"
4#include "ConnecterFreeRDP.h"
7#include <QLoggingCategory>
10 #include "ChannelSSHTunnel.h"
13#include "freerdp/version.h"
15static Q_LOGGING_CATEGORY(log,
"FreeRDP.Plugin")
16static Q_LOGGING_CATEGORY(LoggerFreeRDP, "FreeRDP.Log")
17static Q_LOGGING_CATEGORY(LoggerFreeRDPTrace, "FreeRDP.Log.Trace")
18static Q_LOGGING_CATEGORY(LoggerFreeRDPFatal, "FreeRDP.Log.Fatal")
24 qDebug(log) << Q_FUNC_INFO;
25 qInfo(log) <<
"FreeRDP version:" << freerdp_get_version_string()
26 <<
"revision:" << freerdp_get_build_revision();
28 static wLogCallbacks* pCbLog =
new wLogCallbacks;
29 BOOL bRet = WLog_SetLogAppenderType(WLog_GetRoot(), WLOG_APPENDER_CALLBACK);
32 memset(pCbLog, 0,
sizeof(wLogCallbacks));
33 pCbLog->message = [](
const wLogMessage* msg)->BOOL{
37 qDebug(LoggerFreeRDPTrace) << msg->TextString;
40 qDebug(LoggerFreeRDP) << msg->TextString;
43 qInfo(LoggerFreeRDP) << msg->TextString;
46 qWarning(LoggerFreeRDP) << msg->TextString;
48 qCritical(LoggerFreeRDP) << msg->TextString;
52 qCritical(LoggerFreeRDPFatal) << msg->TextString;
59 WLog_ConfigureAppender(WLog_GetLogAppender(WLog_GetRoot()),
"callbacks", pCbLog);
61 WLog_SetLogLevel(WLog_GetRoot(), WLOG_TRACE);
68 qDebug(log) << Q_FUNC_INFO;
79 return tr(
"Free remote desktop");
84 return tr(
"RDP(Windows remote desktop Protocol): Access remote desktops such as windows.");
92const QIcon CPluginFreeRDP::Icon()
const
94 return QIcon::fromTheme(
"windows");
99 return PluginFreeDP_VERSION;
108 szDetails =
"- " + tr(
"FreeRDP");
110 szDetails +=
" - " + tr(
"version: ");
111 szDetails += freerdp_get_version_string();
113 szDetails +=
" - " + tr(
"Build version: ");
114 szDetails += freerdp_get_build_revision();
116 szDetails += freerdp_get_build_revision();
118#if FREERDP_VERSION_MAJOR < 3
119 szDetails +=
" - " + tr(
"Build date: ");
120 szDetails += freerdp_get_build_date();
124 szDetails += freerdp_get_build_config();
134CConnecter* CPluginFreeRDP::OnCreateConnecter(
const QString &szId)
virtual QString GetDetails() override
依赖信息
客户端插件接口。用于建立 CConnecter 实例,它由协议插件实现。
virtual const QString Id() const
标识。默认: Protocol() + ":" + Name()
virtual const QString DisplayName() const override
在界面上显示的名称
virtual const QString Version() const override
Version
virtual const QString Name() const override
[Clean resource]
virtual const QString Description() const override
描述
virtual const QString Details() const override
Show the plugin depends on the freerdp version
virtual const QString Protocol() const override
协议
virtual ~CPluginFreeRDP() override
[Initialize resource]