Remote desktop web access

       微软提供了一个远程访问“同一个域内机器上安装的桌面应用”的方案,他们把这套方案称之为"Remote desktop service",即提供一个“共享给web用户的远程桌面服务”,这个服务为企业所谓的"Cloud services"提供某部分的技术支持,这也是我在最近项目中所参与的一小部分工作,为一个针对中小型企业的ERP写一个公用的web portal,所有的企业客户通过这个web portal登录,通过某些校验后,从服务端加载到远程桌面应用的配置命令,从而获得访问远程桌面应用的入口。

       针对这个需求,写了一个小的sample,本文将针对这个sample做一个描述,它是仿照微软的Remote desktop web access写的。

       【软件环境】

       OS:win7

       IDE:vs2010

       Browser:IE8

       既然是微软最近的方案,操作系统与浏览器必然有要求,操作系统至少是XP SP2或Server 2003 SP1,浏览器至少是IE6或者更高版本,你懂的。sample运行后,使用不对的操作系统版本或浏览器版本,会有JS弹出框提示。

       【原理说明】

       访问是基于ActiveX插件,内部实现被封装了,看不到源码。用起来比较简单,代码也没有什么含金量的东西,只是,如果用法不对,就达不到目的,由于没有拿到微软的代码,这个sample是通过Reflector和FF的firebug插件,边看边找,模仿着写出来的,这纠结的过程就不说了,去掉许多无关的一些东西,整理如下:

     

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="TestRemoteApp.aspx.cs" Inherits="TestRemoteApp" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Remote Desktop Services</title>
    <link rel="stylesheet" href="Styles/Common.css" />
    <script type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script>
    <script type="text/javascript">
        function goRDP(fileContents) {
            var MsRdpClientShell, MsRdpClient;
            var ax = document.getElementById("MsRdpClient");
            var ax1 = document.getElementById('MsRdpClient1');
            var WebAccessControlPresent = WebPartManager1_TSPortalWebPart1IsWebAccessControlPresent();
            if (WebAccessControlPresent) {
                //MsRdpClientShell = new ActiveXObject("MsRdpWebAccess.MsRdpClientShell");
                MsRdpClientShell = ax;
                MsRdpClient = ax;
            }
            else {
                MsRdpClientShell = ax1.MsRdpClientShell;
                MsRdpClient = ax1;
            }

            if (!MsRdpClient || (MsRdpClient.readyState != 4) || MsRdpClientShell == null) {
                WebPartManager1_TSPortalWebPart1OnControlLoadError(MsRdpClient, MsRdpClientShell);
            }

            if (MsRdpClientShell != null) {
                MsRdpClientShell.PublicMode = true;
                MsRdpClientShell.RdpFileContents = unescape(fileContents);
                try {
                    MsRdpClientShell.Launch();
                }
                catch (e) {
                    throw e;
                }
            }
        }

        function WebPartManager1_TSPortalWebPart1OnControlLoadError(MsRdpClient, MsRdpClientShell) {
            var clientVer = WebPartManager1_TSPortalWebPart1Is61Client();
            var bValid = true;
            // IE
            if (window.navigator.userAgent.indexOf("Windows NT") != -1) {
                var WebPartManager1_TSPortalWebPart1osVersion = 0;
                var temp = window.navigator.userAgent.split("Windows NT");
                WebPartManager1_TSPortalWebPart1osVersion = parseFloat(temp[1]);

                if (WebPartManager1_TSPortalWebPart1osVersion < 5.1) {
                    bValid = false;
                    alert('RD Web Access does not support this operating system. To see a list of supported operating systems, click http://go.microsoft.com/fwlink/?LinkID=56288.            \n'
                        + 'If you are running Windows XP or Windows Server 2003, you can obtain the latest service pack from the http://go.microsoft.com/fwlink/?LinkID=70646.            \n'
                        + 'If you upgrade to Windows XP SP2 or Windows Server 2003 SP1, you must also install the Remote Desktop Connection 6.0 client update. You can learn about this update and download the installation package by visiting http://go.microsoft.com/fwlink/?LinkID=56287.            \n');
                    return;
                }
                else {
                    if (window.navigator.userAgent.indexOf("MSIE") != -1) {
                        temp1 = window.navigator.userAgent.split("MSIE");
                        var WebPartManager1_TSPortalWebPart1browserVersion = parseFloat(temp1[1]);
                        if (WebPartManager1_TSPortalWebPart1browserVersion == 0) {
                            bValid = false;
                            alert('This Web browser is not supported by RD Web Access. RD Web Access requires Internet Explorer 6.0 or later.            \n You can download the latest version of Internet Explorer from the http://go.microsoft.com/fwlink/?LinkID=70646.  ');
                            return;
                        }
                        else if ((WebPartManager1_TSPortalWebPart1browserVersion < 7.0) && (window.navigator.userAgent.indexOf("SV1") == -1)) {
                            bValid = false;
                            alert('You need to obtain the latest service pack for your operating system before you can use RD Web Access. You can obtain the latest service pack from the http://go.microsoft.com/fwlink/?LinkId=70646.            \n'
						        + 'If you upgrade to Windows XP SP2 or Windows Server 2003 SP1, you must also install the Remote Desktop Connection 6.0 client update. You can learn about this update and download the installation package by visiting http://go.microsoft.com/fwlink/?LinkId=70646.            \n'
							    + 'After you install the package, you must refresh this Web page to see the list of RemoteApp programs. ');
                            return;
                        }
                        if (bValid == true) {
                            /*if (!document.all.MsRdpClient || (document.all.MsRdpClient.readyState != 4) || MsRdpClientShell == null) {
                            // load control panel 
                            if (WebPartManager1_TSPortalWebPart1LoadControl() == true) {
                            // set control panel available
                            WebPartManager1_TSPortalWebPart1SetDivDisplayControlAvailable();
                            }
                            }
                            else {
                            // set control panel available
                            WebPartManager1_TSPortalWebPart1SetDivDisplayControlAvailable();
                            }*/
                            if (!MsRdpClient || (MsRdpClient.readyState != 4) || MsRdpClientShell == null)
                                alert('No!');
                            else
                                alert('Ok!');
                        }
                    }
                    else {
                        alert('This Web browser is not supported by RD Web Access. RD Web Access requires Internet Explorer 6.0 or later.            \n You can download the latest version of Internet Explorer from the http://go.microsoft.com/fwlink/?LinkID=70646.  ');
                        return;
                    }
                }

                if (WebPartManager1_TSPortalWebPart1osVersion < 6.0) {
                    if (clientVer == 0) {
                        alert('The Remote Desktop Services ActiveX Client control is not available. Before you can access remote programs and connect to remote desktops through RD Web Access, you must install and enable this ActiveX control.\n If your computer does not have the correct version of the Remote Desktop Services ActiveX Client control, you must download and install an update package. To learn about this update and to download the installation package, visit http://go.microsoft.com/fwlink/?LinkId=56287.\n If you have already installed the correct update package, you must enable the ActiveX control. To do this, follow your browser\"s instructions to manage add-ons and to run ActiveX controls. When you enable the ActiveX control, you may see a security warning. Before you continue, make sure that the publisher for the ActiveX control is Microsoft Corporation.\nAfter you install the package or enable the ActiveX control, you must refresh this Web page.          ');
                        return;
                    }
                    else if (clientVer != 1) {
                        alert('The Remote Desktop Services ActiveX Client control is not available. Before you can access remote programs and connect to remote desktops through RD Web Access, you must install and enable this ActiveX control.\n If your computer does not have the correct version of the Remote Desktop Services ActiveX Client control, you must download and install an update package. To learn about this update and to download the installation package, visit http://go.microsoft.com/fwlink/?LinkId=56287.\n If you have already installed the correct update package, you must enable the ActiveX control. To do this, follow your browser\"s instructions to manage add-ons and to run ActiveX controls. When you enable the ActiveX control, you may see a security warning. Before you continue, make sure that the publisher for the ActiveX control is Microsoft Corporation.\nAfter you install the package or enable the ActiveX control, you must refresh this Web page.          ');
                        return;
                    }
                } else {
                    if (clientVer == 0) {
                        alert('The Remote Desktop Services ActiveX Client control is not enabled. You must enable this ActiveX control before you can access RemoteApp programs through RD Web Access.            \n'
					        + ' To enable the ActiveX control, click the warning message on Internet Explorer Information bar, point to Add-on Disabled, and then click Run ActiveX Control. When you do this, you may see a security warning. Make sure that the publisher for the ActiveX control is Microsoft Corporation before you click Run.            \n'
						    + 'If the Internet Explorer Information bar does not appear, you can enable the ActiveX control by using the Manage Add-ons tool on the Tools menu of Internet Explorer. If you are unable to do this, please contact your network administrator.  ');
                        return;
                    }
                    else if (clientVer != 1) {
                        alert('The Remote Desktop Services ActiveX Client control is not available. You must install this ActiveX control before you can access RemoteApp programs through RD Web Access.            \n'
				            + 'The ActiveX control is included with the Remote Desktop Connection 6.0 client update. You can learn about this update and download the installation package by visiting http://go.microsoft.com/fwlink/?LinkId=56287.            \n'
					        + 'After you install the package, you must refresh this Web page to see the list of RemoteApp programs. ');
                        return;
                    }
                }
            }
            // Not IE
            else {
                alert('RD Web Access does not support this operating system. To see a list of supported operating systems, click http://go.microsoft.com/fwlink/?LinkID=56288.            \n'
                    + 'If you are running Windows XP or Windows Server 2003, you can obtain the latest service pack from the http://go.microsoft.com/fwlink/?LinkID=70646.            \n'
                    + 'If you upgrade to Windows XP SP2 or Windows Server 2003 SP1, you must also install the Remote Desktop Connection 6.0 client update. You can learn about this update and download the installation package by visiting http://go.microsoft.com/fwlink/?LinkID=56287.            \n');
                return;
            }

        }

        function WebPartManager1_TSPortalWebPart1Is61Client() {
            var retval = 0;
            var WebAccessControlPresent = WebPartManager1_TSPortalWebPart1IsWebAccessControlPresent();
            if (WebAccessControlPresent) {
                retval = 1;
                return retval;
            }
            try {
                var MsTscAX = new ActiveXObject("MsRDP.MsRDP.5");
                if (MsTscAX) {
                    retval = 2;
                    var verString = MsTscAX.Version.split(".");
                    if (verString.length > 2) {
                        if ((verString[0] > 6) || (verString[0] == 6 && (verString[1] > 0 || verString[2] >= 6001))) {
                            retval = 1;
                        }
                    }
                }
            }
            catch (e) {
                retval = 0;
            }
            return retval;
        }

        function WebPartManager1_TSPortalWebPart1IsWebAccessControlPresent() {
            var retval = false;
            try {
                var WebAccessControl = new ActiveXObject("MsRdpWebAccess.MsRdpClientShell");
                if (WebAccessControl) {
                    retval = true;
                }
            }
            catch (e) {
                retval = false;
            }
            return retval;
        }

        function over(ele) {
            $(ele).css({ "background": "url(Contents/images/ivmo.png) no-repeat top center" });
            $(ele).css({ "padding": "0 3px 0 2px" });
        }
        function out(ele) {
            $(ele).css({ "background": "" });
            $(ele).css({ "padding": "0 1px 0px 4px" });
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <h2>Test pager for remote desktop services</h2>
    <div id="main-panel">
        <div class='floating-div'><div class='bak' οnmοuseοver='over(this)' οnmοuseοut='out(this)' οnclick='goRDP("redirectclipboard%3Ai%3A1%0D%0Aredirectposdevices%3Ai%3A0%0D%0Aredirectprinters%3Ai%3A1%0D%0Aredirectcomports%3Ai%3A1%0D%0Aredirectsmartcards%3Ai%3A1%0D%0Adevicestoredirect%3As%3A*%0D%0Adrivestoredirect%3As%3A*%0D%0Aredirectdrives%3Ai%3A1%0D%0Asession%20bpp%3Ai%3A32%0D%0Aprompt%20for%20credentials%20on%20client%3Ai%3A1%0D%0Aspan%20monitors%3Ai%3A1%0D%0Ause%20multimon%3Ai%3A1%0D%0Aremoteapplicationmode%3Ai%3A1%0D%0Aserver%20port%3Ai%3A3389%0D%0Aallow%20font%20smoothing%3Ai%3A1%0D%0Apromptcredentialonce%3Ai%3A1%0D%0Aauthentication%20level%3Ai%3A2%0D%0Agatewayusagemethod%3Ai%3A1%0D%0Agatewayprofileusagemethod%3Ai%3A1%0D%0Agatewaycredentialssource%3Ai%3A0%0D%0Afull%20address%3As%3ACNST50091888CD%0D%0Aalternate%20shell%3As%3A%7C%7Ccalc%0D%0Aremoteapplicationprogram%3As%3A%7C%7Ccalc%0D%0Agatewayhostname%3As%3ACNST50091888BD%0D%0Aremoteapplicationname%3As%3ACalculator%0D%0Aremoteapplicationcmdline%3As%3A%0D%0Aalternate%20full%20address%3As%3ACNST50091888CD%0D%0Asignscope%3As%3AFull%20Address%2CAlternate%20Full%20Address%2CServer%20Port%2CGatewayHostname%2CGatewayUsageMethod%2CGatewayProfileUsageMethod%2CGatewayCredentialsSource%2CPromptCredentialOnce%2CAlternate%20Shell%2CRemoteApplicationProgram%2CRemoteApplicationMode%2CRemoteApplicationName%2CRemoteApplicationCmdLine%2CAuthentication%20Level%2CRedirectDrives%2CRedirectPrinters%2CRedirectCOMPorts%2CRedirectSmartCards%2CRedirectPOSDevices%2CRedirectClipboard%2CDevicesToRedirect%2CDrivesToRedirect%0D%0Asignature%3As%3AAQABAAEAAAC+CQAAMIIJugYJKoZIhvcNAQcCoIIJqzCCCacCAQExCzAJBgUrDgMC%20%20GgUAMAsGCSqGSIb3DQEHAaCCCJIwggNXMIICP6ADAgECAhBr/oe2Jqr9vU0RF0dJ%20%20fIbuMA0GCSqGSIb3DQEBBQUAMD4xFDASBgoJkiaJk/IsZAEZFgR0ZXN0MRQwEgYK%20%20CZImiZPyLGQBGRYEYjFvZDEQMA4GA1UEAxMHYjFvZC1DQTAeFw0xMTA5MjgwNjQ3%20%20MTdaFw0xNjA5MjgwNjU3MTZaMD4xFDASBgoJkiaJk/IsZAEZFgR0ZXN0MRQwEgYK%20%20CZImiZPyLGQBGRYEYjFvZDEQMA4GA1UEAxMHYjFvZC1DQTCCASIwDQYJKoZIhvcN%20%20AQEBBQADggEPADCCAQoCggEBAKRLmr75by3nEek9il80iimL2uoR4Lu13R1KW4yr%20%20X35pejxwfJxVprIyyphU30SVP4SFPWzmC7bYLxgzkIRQ0bEUhZI5DDMO6HgNEgSI%20%20yDvHawxurS57q0KjzHfSchD2XLBIHvJIQ21fJd/FuAsTfeRh9ukR/nulWFBSEy/l%20%20UmkN1o5eesXKmt0qtTNb6K3xOMTQJHiDt+5kFcWqE2KngljVtAtILWyaUMlDzVRQ%20%20TcTVqabz1nrFgPo3IZXhShbu4zdaWYGnUPLtT1SoZIY9KahBAUZfgYVcHVC7b1EG%20%202aEizyRzzPPml7sE2gCSFQASEqJ7Xx/b0YslWEuqho0P7jcCAwEAAaNRME8wCwYD%20%20VR0PBAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFGB/5ege5K+WJypu%20%20QF9kEHtvhAkLMBAGCSsGAQQBgjcVAQQDAgEAMA0GCSqGSIb3DQEBBQUAA4IBAQAD%20%20X2xAiEZyYp+148i09P68X6LGyuQYrltmb+3DZiOFCFT9KYy/WlwFPgjzYkncF4ed%20%20ELnU6jenRVJrIBSXaa6ZvVQ6HYTf/pJLBkxd8lrCH4esEO1IPJ/c9JZDj0GWMYRL%20%20tmgiH6ZdgaAKjBvNZ5jnO9VA1fzuCvUPvjMezaW2F74StSlBAZlFfOPbIT1x07Hy%20%208M5WN2T+brk28dIkGbHIgmWeOKCI5qpaLsOV7CwPGHnRIzPl535M/rq3suCXC2gL%20%20NV2Zy92HxA/e9HXHUMfYsA1EX4SDNnXcOf51pYwL0XKyu580uTiaw4vyKk5ytjXN%20%20eGrmzKZXTnoCCaJEZf2vMIIFMzCCBBugAwIBAgIKOaNczQAAAAAAIDANBgkqhkiG%20%209w0BAQUFADA+MRQwEgYKCZImiZPyLGQBGRYEdGVzdDEUMBIGCgmSJomT8ixkARkW%20%20BGIxb2QxEDAOBgNVBAMTB2Ixb2QtQ0EwHhcNMTExMDEwMDYyNTEwWhcNMTMxMDA5%20%20MDYyNTEwWjBmMQswCQYDVQQGEwJVUzEPMA0GA1UECBMGUFVET05HMREwDwYDVQQH%20%20EwhTSEFOR0hBSTEMMAoGA1UEChMDU0FQMQwwCgYDVQQLEwNTQVAxFzAVBgNVBAMT%20%20DkNOU1Q1MDA5MTg4OENEMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCg9PRt%20%20qwqdsEXMBEa/er330f+Ai1DtlrcwbSIb1H9P3I0Rd2goIwjSr4nlWtkpObDKTagQ%20%20b9WD4kjEqA39ClWos34jhSsyHfQrwbKEmPVLWzQpW1jiD5uv7M1M9aXwhio8xI8u%20%20K+at6CIxVtUiKfppjR9L2jvxygIfH5I2a2D/8QIDAQABo4ICjTCCAokwDgYDVR0P%20%20AQH/BAQDAgWgMBMGA1UdJQQMMAoGCCsGAQUFBwMBMHgGCSqGSIb3DQEJDwRrMGkw%20%20DgYIKoZIhvcNAwICAgCAMA4GCCqGSIb3DQMEAgIAgDALBglghkgBZQMEASowCwYJ%20%20YIZIAWUDBAEtMAsGCWCGSAFlAwQBAjALBglghkgBZQMEAQUwBwYFKw4DAgcwCgYI%20%20KoZIhvcNAwcwHQYDVR0OBBYEFPYSOL6F4ltMTEciHB0DZjDZLFmmMB8GA1UdIwQY%20%20MBaAFGB/5ege5K+WJypuQF9kEHtvhAkLMIHKBgNVHR8EgcIwgb8wgbyggbmggbaG%20%20gbNsZGFwOi8vL0NOPWIxb2QtQ0EsQ049Q05TVDUwMDkxODg4QUQsQ049Q0RQLENO%20%20PVB1YmxpYyUyMEtleSUyMFNlcnZpY2VzLENOPVNlcnZpY2VzLENOPUNvbmZpZ3Vy%20%20YXRpb24sREM9YjFvZCxEQz10ZXN0P2NlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3Q/%20%20YmFzZT9vYmplY3RDbGFzcz1jUkxEaXN0cmlidXRpb25Qb2ludDCBtwYIKwYBBQUH%20%20AQEEgaowgacwgaQGCCsGAQUFBzAChoGXbGRhcDovLy9DTj1iMW9kLUNBLENOPUFJ%20%20QSxDTj1QdWJsaWMlMjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25m%20%20aWd1cmF0aW9uLERDPWIxb2QsREM9dGVzdD9jQUNlcnRpZmljYXRlP2Jhc2U/b2Jq%20%20ZWN0Q2xhc3M9Y2VydGlmaWNhdGlvbkF1dGhvcml0eTAhBgkrBgEEAYI3FAIEFB4S%20%20AFcAZQBiAFMAZQByAHYAZQByMA0GCSqGSIb3DQEBBQUAA4IBAQCR4jsGDiHK31ov%20%209tQgPZrCPzpbMbXsBUZ4j8XHpDP+7yRoI79YYlTPNgeo57PedEz2N+UW5H77+lAM%20%20TWB8ZuN00CHcBuIfv7wWgQ0rBh4uR6UtVcGlW2+LkDXFppU8TYtMjnX/o4Fl1ifW%20%20K1iCfPAAuoJ1r3IgX4B/g6XU4GSm4HsKgM3ZoXpckHA7zLXSFMElnsR7RvBVBVeg%20%203KhjBe5vc2GRRsmDazxNtKVdTwM8iA3j49pI742HLakF7N9/0nauXZmY2wHo5Q3K%20%2097POhOGp8HhF929wOfO/qTN0mBoO+7COwVjky21k1rAplxBEB52Uw6dzyz9yESoo%20%20unfgbb8WMYHxMIHuAgEBMEwwPjEUMBIGCgmSJomT8ixkARkWBHRlc3QxFDASBgoJ%20%20kiaJk/IsZAEZFgRiMW9kMRAwDgYDVQQDEwdiMW9kLUNBAgo5o1zNAAAAAAAgMAkG%20%20BSsOAwIaBQAwDQYJKoZIhvcNAQEBBQAEgYAO2Qtne4iM3ykm8Uclh8QIaKsTqSl+%20%20u1E5/LIvnQZqviaF7Y06rDFDqCwGIlEpbcDYYstm/Yv0lyn/I4gpCFPYPFdZrGr/%20%20aABYJA+LWLRMD0hB3KqcmQuLplKkykVvsU1DrwwA8iqGdrE+ztV4+0rgw6Iqgty4%20%20wCFJiuCMqX4uag%3D%3D%20%20%0D%0AWorkspace%20Id%3As%3ACNST50091888CD.b1od.test%0D%0A")'><img src='Contents/images/calc.png' alt='' /><br/><span>Calculator</span></div></div>
        <div class='floating-div'><div class='bak' οnmοuseοver='over(this)' οnmοuseοut='out(this)' οnclick='goRDP("redirectclipboard%3Ai%3A1%0D%0Aredirectposdevices%3Ai%3A0%0D%0Aredirectprinters%3Ai%3A1%0D%0Aredirectcomports%3Ai%3A1%0D%0Aredirectsmartcards%3Ai%3A1%0D%0Adevicestoredirect%3As%3A*%0D%0Adrivestoredirect%3As%3A*%0D%0Aredirectdrives%3Ai%3A1%0D%0Asession%20bpp%3Ai%3A32%0D%0Aprompt%20for%20credentials%20on%20client%3Ai%3A1%0D%0Aspan%20monitors%3Ai%3A1%0D%0Ause%20multimon%3Ai%3A1%0D%0Aremoteapplicationmode%3Ai%3A1%0D%0Aserver%20port%3Ai%3A3389%0D%0Aallow%20font%20smoothing%3Ai%3A1%0D%0Apromptcredentialonce%3Ai%3A1%0D%0Aauthentication%20level%3Ai%3A2%0D%0Agatewayusagemethod%3Ai%3A1%0D%0Agatewayprofileusagemethod%3Ai%3A1%0D%0Agatewaycredentialssource%3Ai%3A0%0D%0Afull%20address%3As%3ACNST50091888CD%0D%0Aalternate%20shell%3As%3A%7C%7Cnotepad%0D%0Aremoteapplicationprogram%3As%3A%7C%7Cnotepad%0D%0Agatewayhostname%3As%3ACNST50091888BD%0D%0Aremoteapplicationname%3As%3Anotepad.exe%0D%0Aremoteapplicationcmdline%3As%3A%0D%0Aalternate%20full%20address%3As%3ACNST50091888CD%0D%0Asignscope%3As%3AFull%20Address%2CAlternate%20Full%20Address%2CServer%20Port%2CGatewayHostname%2CGatewayUsageMethod%2CGatewayProfileUsageMethod%2CGatewayCredentialsSource%2CPromptCredentialOnce%2CAlternate%20Shell%2CRemoteApplicationProgram%2CRemoteApplicationMode%2CRemoteApplicationName%2CRemoteApplicationCmdLine%2CAuthentication%20Level%2CRedirectDrives%2CRedirectPrinters%2CRedirectCOMPorts%2CRedirectSmartCards%2CRedirectPOSDevices%2CRedirectClipboard%2CDevicesToRedirect%2CDrivesToRedirect%0D%0Asignature%3As%3AAQABAAEAAAC+CQAAMIIJugYJKoZIhvcNAQcCoIIJqzCCCacCAQExCzAJBgUrDgMC%20%20GgUAMAsGCSqGSIb3DQEHAaCCCJIwggNXMIICP6ADAgECAhBr/oe2Jqr9vU0RF0dJ%20%20fIbuMA0GCSqGSIb3DQEBBQUAMD4xFDASBgoJkiaJk/IsZAEZFgR0ZXN0MRQwEgYK%20%20CZImiZPyLGQBGRYEYjFvZDEQMA4GA1UEAxMHYjFvZC1DQTAeFw0xMTA5MjgwNjQ3%20%20MTdaFw0xNjA5MjgwNjU3MTZaMD4xFDASBgoJkiaJk/IsZAEZFgR0ZXN0MRQwEgYK%20%20CZImiZPyLGQBGRYEYjFvZDEQMA4GA1UEAxMHYjFvZC1DQTCCASIwDQYJKoZIhvcN%20%20AQEBBQADggEPADCCAQoCggEBAKRLmr75by3nEek9il80iimL2uoR4Lu13R1KW4yr%20%20X35pejxwfJxVprIyyphU30SVP4SFPWzmC7bYLxgzkIRQ0bEUhZI5DDMO6HgNEgSI%20%20yDvHawxurS57q0KjzHfSchD2XLBIHvJIQ21fJd/FuAsTfeRh9ukR/nulWFBSEy/l%20%20UmkN1o5eesXKmt0qtTNb6K3xOMTQJHiDt+5kFcWqE2KngljVtAtILWyaUMlDzVRQ%20%20TcTVqabz1nrFgPo3IZXhShbu4zdaWYGnUPLtT1SoZIY9KahBAUZfgYVcHVC7b1EG%20%202aEizyRzzPPml7sE2gCSFQASEqJ7Xx/b0YslWEuqho0P7jcCAwEAAaNRME8wCwYD%20%20VR0PBAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFGB/5ege5K+WJypu%20%20QF9kEHtvhAkLMBAGCSsGAQQBgjcVAQQDAgEAMA0GCSqGSIb3DQEBBQUAA4IBAQAD%20%20X2xAiEZyYp+148i09P68X6LGyuQYrltmb+3DZiOFCFT9KYy/WlwFPgjzYkncF4ed%20%20ELnU6jenRVJrIBSXaa6ZvVQ6HYTf/pJLBkxd8lrCH4esEO1IPJ/c9JZDj0GWMYRL%20%20tmgiH6ZdgaAKjBvNZ5jnO9VA1fzuCvUPvjMezaW2F74StSlBAZlFfOPbIT1x07Hy%20%208M5WN2T+brk28dIkGbHIgmWeOKCI5qpaLsOV7CwPGHnRIzPl535M/rq3suCXC2gL%20%20NV2Zy92HxA/e9HXHUMfYsA1EX4SDNnXcOf51pYwL0XKyu580uTiaw4vyKk5ytjXN%20%20eGrmzKZXTnoCCaJEZf2vMIIFMzCCBBugAwIBAgIKOaNczQAAAAAAIDANBgkqhkiG%20%209w0BAQUFADA+MRQwEgYKCZImiZPyLGQBGRYEdGVzdDEUMBIGCgmSJomT8ixkARkW%20%20BGIxb2QxEDAOBgNVBAMTB2Ixb2QtQ0EwHhcNMTExMDEwMDYyNTEwWhcNMTMxMDA5%20%20MDYyNTEwWjBmMQswCQYDVQQGEwJVUzEPMA0GA1UECBMGUFVET05HMREwDwYDVQQH%20%20EwhTSEFOR0hBSTEMMAoGA1UEChMDU0FQMQwwCgYDVQQLEwNTQVAxFzAVBgNVBAMT%20%20DkNOU1Q1MDA5MTg4OENEMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCg9PRt%20%20qwqdsEXMBEa/er330f+Ai1DtlrcwbSIb1H9P3I0Rd2goIwjSr4nlWtkpObDKTagQ%20%20b9WD4kjEqA39ClWos34jhSsyHfQrwbKEmPVLWzQpW1jiD5uv7M1M9aXwhio8xI8u%20%20K+at6CIxVtUiKfppjR9L2jvxygIfH5I2a2D/8QIDAQABo4ICjTCCAokwDgYDVR0P%20%20AQH/BAQDAgWgMBMGA1UdJQQMMAoGCCsGAQUFBwMBMHgGCSqGSIb3DQEJDwRrMGkw%20%20DgYIKoZIhvcNAwICAgCAMA4GCCqGSIb3DQMEAgIAgDALBglghkgBZQMEASowCwYJ%20%20YIZIAWUDBAEtMAsGCWCGSAFlAwQBAjALBglghkgBZQMEAQUwBwYFKw4DAgcwCgYI%20%20KoZIhvcNAwcwHQYDVR0OBBYEFPYSOL6F4ltMTEciHB0DZjDZLFmmMB8GA1UdIwQY%20%20MBaAFGB/5ege5K+WJypuQF9kEHtvhAkLMIHKBgNVHR8EgcIwgb8wgbyggbmggbaG%20%20gbNsZGFwOi8vL0NOPWIxb2QtQ0EsQ049Q05TVDUwMDkxODg4QUQsQ049Q0RQLENO%20%20PVB1YmxpYyUyMEtleSUyMFNlcnZpY2VzLENOPVNlcnZpY2VzLENOPUNvbmZpZ3Vy%20%20YXRpb24sREM9YjFvZCxEQz10ZXN0P2NlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3Q/%20%20YmFzZT9vYmplY3RDbGFzcz1jUkxEaXN0cmlidXRpb25Qb2ludDCBtwYIKwYBBQUH%20%20AQEEgaowgacwgaQGCCsGAQUFBzAChoGXbGRhcDovLy9DTj1iMW9kLUNBLENOPUFJ%20%20QSxDTj1QdWJsaWMlMjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25m%20%20aWd1cmF0aW9uLERDPWIxb2QsREM9dGVzdD9jQUNlcnRpZmljYXRlP2Jhc2U/b2Jq%20%20ZWN0Q2xhc3M9Y2VydGlmaWNhdGlvbkF1dGhvcml0eTAhBgkrBgEEAYI3FAIEFB4S%20%20AFcAZQBiAFMAZQByAHYAZQByMA0GCSqGSIb3DQEBBQUAA4IBAQCR4jsGDiHK31ov%20%209tQgPZrCPzpbMbXsBUZ4j8XHpDP+7yRoI79YYlTPNgeo57PedEz2N+UW5H77+lAM%20%20TWB8ZuN00CHcBuIfv7wWgQ0rBh4uR6UtVcGlW2+LkDXFppU8TYtMjnX/o4Fl1ifW%20%20K1iCfPAAuoJ1r3IgX4B/g6XU4GSm4HsKgM3ZoXpckHA7zLXSFMElnsR7RvBVBVeg%20%203KhjBe5vc2GRRsmDazxNtKVdTwM8iA3j49pI742HLakF7N9/0nauXZmY2wHo5Q3K%20%2097POhOGp8HhF929wOfO/qTN0mBoO+7COwVjky21k1rAplxBEB52Uw6dzyz9yESoo%20%20unfgbb8WMYHxMIHuAgEBMEwwPjEUMBIGCgmSJomT8ixkARkWBHRlc3QxFDASBgoJ%20%20kiaJk/IsZAEZFgRiMW9kMRAwDgYDVQQDEwdiMW9kLUNBAgo5o1zNAAAAAAAgMAkG%20%20BSsOAwIaBQAwDQYJKoZIhvcNAQEBBQAEgYB4eAk0JYvy3f0dhTPo09oOtK+rUOwM%20%204FJLY4FWKkDEruuo0GJ8GfDMMUu5vjWri86nK/AVYLHZO2eW7aMcmh1GrMcHi5Ir%20%201rGgiO2qSzPPYCUIv32l9tvqqDvvNHhZeZIQt2lojo9pf/rcq0bA9XgdXG4dfJmy%20%20wpsNDwZHkW3zUw%3D%3D%20%20%0D%0AWorkspace%20Id%3As%3ACNST50091888CD.b1od.test%0D%0A")'><img src='Contents/images/notepad.png' alt='' /><br/><span>Notepad</span></div></div>
        <div class='floating-div'><div class='bak' οnmοuseοver='over(this)' οnmοuseοut='out(this)' οnclick='goRDP("redirectclipboard%3Ai%3A1%0D%0Aredirectposdevices%3Ai%3A0%0D%0Aredirectprinters%3Ai%3A1%0D%0Aredirectcomports%3Ai%3A1%0D%0Aredirectsmartcards%3Ai%3A1%0D%0Adevicestoredirect%3As%3A*%0D%0Adrivestoredirect%3As%3A*%0D%0Aredirectdrives%3Ai%3A1%0D%0Asession%20bpp%3Ai%3A32%0D%0Aprompt%20for%20credentials%20on%20client%3Ai%3A1%0D%0Aspan%20monitors%3Ai%3A1%0D%0Ause%20multimon%3Ai%3A1%0D%0Aremoteapplicationmode%3Ai%3A1%0D%0Aserver%20port%3Ai%3A3389%0D%0Aallow%20font%20smoothing%3Ai%3A1%0D%0Apromptcredentialonce%3Ai%3A1%0D%0Aauthentication%20level%3Ai%3A2%0D%0Agatewayusagemethod%3Ai%3A1%0D%0Agatewayprofileusagemethod%3Ai%3A1%0D%0Agatewaycredentialssource%3Ai%3A0%0D%0Afull%20address%3As%3ACNST50091888CD%0D%0Aalternate%20shell%3As%3A%7C%7Cmspaint%0D%0Aremoteapplicationprogram%3As%3A%7C%7Cmspaint%0D%0Agatewayhostname%3As%3ACNST50091888BD%0D%0Aremoteapplicationname%3As%3APaint%0D%0Aremoteapplicationcmdline%3As%3A%0D%0Aalternate%20full%20address%3As%3ACNST50091888CD%0D%0Asignscope%3As%3AFull%20Address%2CAlternate%20Full%20Address%2CServer%20Port%2CGatewayHostname%2CGatewayUsageMethod%2CGatewayProfileUsageMethod%2CGatewayCredentialsSource%2CPromptCredentialOnce%2CAlternate%20Shell%2CRemoteApplicationProgram%2CRemoteApplicationMode%2CRemoteApplicationName%2CRemoteApplicationCmdLine%2CAuthentication%20Level%2CRedirectDrives%2CRedirectPrinters%2CRedirectCOMPorts%2CRedirectSmartCards%2CRedirectPOSDevices%2CRedirectClipboard%2CDevicesToRedirect%2CDrivesToRedirect%0D%0Asignature%3As%3AAQABAAEAAAC+CQAAMIIJugYJKoZIhvcNAQcCoIIJqzCCCacCAQExCzAJBgUrDgMC%20%20GgUAMAsGCSqGSIb3DQEHAaCCCJIwggNXMIICP6ADAgECAhBr/oe2Jqr9vU0RF0dJ%20%20fIbuMA0GCSqGSIb3DQEBBQUAMD4xFDASBgoJkiaJk/IsZAEZFgR0ZXN0MRQwEgYK%20%20CZImiZPyLGQBGRYEYjFvZDEQMA4GA1UEAxMHYjFvZC1DQTAeFw0xMTA5MjgwNjQ3%20%20MTdaFw0xNjA5MjgwNjU3MTZaMD4xFDASBgoJkiaJk/IsZAEZFgR0ZXN0MRQwEgYK%20%20CZImiZPyLGQBGRYEYjFvZDEQMA4GA1UEAxMHYjFvZC1DQTCCASIwDQYJKoZIhvcN%20%20AQEBBQADggEPADCCAQoCggEBAKRLmr75by3nEek9il80iimL2uoR4Lu13R1KW4yr%20%20X35pejxwfJxVprIyyphU30SVP4SFPWzmC7bYLxgzkIRQ0bEUhZI5DDMO6HgNEgSI%20%20yDvHawxurS57q0KjzHfSchD2XLBIHvJIQ21fJd/FuAsTfeRh9ukR/nulWFBSEy/l%20%20UmkN1o5eesXKmt0qtTNb6K3xOMTQJHiDt+5kFcWqE2KngljVtAtILWyaUMlDzVRQ%20%20TcTVqabz1nrFgPo3IZXhShbu4zdaWYGnUPLtT1SoZIY9KahBAUZfgYVcHVC7b1EG%20%202aEizyRzzPPml7sE2gCSFQASEqJ7Xx/b0YslWEuqho0P7jcCAwEAAaNRME8wCwYD%20%20VR0PBAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFGB/5ege5K+WJypu%20%20QF9kEHtvhAkLMBAGCSsGAQQBgjcVAQQDAgEAMA0GCSqGSIb3DQEBBQUAA4IBAQAD%20%20X2xAiEZyYp+148i09P68X6LGyuQYrltmb+3DZiOFCFT9KYy/WlwFPgjzYkncF4ed%20%20ELnU6jenRVJrIBSXaa6ZvVQ6HYTf/pJLBkxd8lrCH4esEO1IPJ/c9JZDj0GWMYRL%20%20tmgiH6ZdgaAKjBvNZ5jnO9VA1fzuCvUPvjMezaW2F74StSlBAZlFfOPbIT1x07Hy%20%208M5WN2T+brk28dIkGbHIgmWeOKCI5qpaLsOV7CwPGHnRIzPl535M/rq3suCXC2gL%20%20NV2Zy92HxA/e9HXHUMfYsA1EX4SDNnXcOf51pYwL0XKyu580uTiaw4vyKk5ytjXN%20%20eGrmzKZXTnoCCaJEZf2vMIIFMzCCBBugAwIBAgIKOaNczQAAAAAAIDANBgkqhkiG%20%209w0BAQUFADA+MRQwEgYKCZImiZPyLGQBGRYEdGVzdDEUMBIGCgmSJomT8ixkARkW%20%20BGIxb2QxEDAOBgNVBAMTB2Ixb2QtQ0EwHhcNMTExMDEwMDYyNTEwWhcNMTMxMDA5%20%20MDYyNTEwWjBmMQswCQYDVQQGEwJVUzEPMA0GA1UECBMGUFVET05HMREwDwYDVQQH%20%20EwhTSEFOR0hBSTEMMAoGA1UEChMDU0FQMQwwCgYDVQQLEwNTQVAxFzAVBgNVBAMT%20%20DkNOU1Q1MDA5MTg4OENEMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCg9PRt%20%20qwqdsEXMBEa/er330f+Ai1DtlrcwbSIb1H9P3I0Rd2goIwjSr4nlWtkpObDKTagQ%20%20b9WD4kjEqA39ClWos34jhSsyHfQrwbKEmPVLWzQpW1jiD5uv7M1M9aXwhio8xI8u%20%20K+at6CIxVtUiKfppjR9L2jvxygIfH5I2a2D/8QIDAQABo4ICjTCCAokwDgYDVR0P%20%20AQH/BAQDAgWgMBMGA1UdJQQMMAoGCCsGAQUFBwMBMHgGCSqGSIb3DQEJDwRrMGkw%20%20DgYIKoZIhvcNAwICAgCAMA4GCCqGSIb3DQMEAgIAgDALBglghkgBZQMEASowCwYJ%20%20YIZIAWUDBAEtMAsGCWCGSAFlAwQBAjALBglghkgBZQMEAQUwBwYFKw4DAgcwCgYI%20%20KoZIhvcNAwcwHQYDVR0OBBYEFPYSOL6F4ltMTEciHB0DZjDZLFmmMB8GA1UdIwQY%20%20MBaAFGB/5ege5K+WJypuQF9kEHtvhAkLMIHKBgNVHR8EgcIwgb8wgbyggbmggbaG%20%20gbNsZGFwOi8vL0NOPWIxb2QtQ0EsQ049Q05TVDUwMDkxODg4QUQsQ049Q0RQLENO%20%20PVB1YmxpYyUyMEtleSUyMFNlcnZpY2VzLENOPVNlcnZpY2VzLENOPUNvbmZpZ3Vy%20%20YXRpb24sREM9YjFvZCxEQz10ZXN0P2NlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3Q/%20%20YmFzZT9vYmplY3RDbGFzcz1jUkxEaXN0cmlidXRpb25Qb2ludDCBtwYIKwYBBQUH%20%20AQEEgaowgacwgaQGCCsGAQUFBzAChoGXbGRhcDovLy9DTj1iMW9kLUNBLENOPUFJ%20%20QSxDTj1QdWJsaWMlMjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25m%20%20aWd1cmF0aW9uLERDPWIxb2QsREM9dGVzdD9jQUNlcnRpZmljYXRlP2Jhc2U/b2Jq%20%20ZWN0Q2xhc3M9Y2VydGlmaWNhdGlvbkF1dGhvcml0eTAhBgkrBgEEAYI3FAIEFB4S%20%20AFcAZQBiAFMAZQByAHYAZQByMA0GCSqGSIb3DQEBBQUAA4IBAQCR4jsGDiHK31ov%20%209tQgPZrCPzpbMbXsBUZ4j8XHpDP+7yRoI79YYlTPNgeo57PedEz2N+UW5H77+lAM%20%20TWB8ZuN00CHcBuIfv7wWgQ0rBh4uR6UtVcGlW2+LkDXFppU8TYtMjnX/o4Fl1ifW%20%20K1iCfPAAuoJ1r3IgX4B/g6XU4GSm4HsKgM3ZoXpckHA7zLXSFMElnsR7RvBVBVeg%20%203KhjBe5vc2GRRsmDazxNtKVdTwM8iA3j49pI742HLakF7N9/0nauXZmY2wHo5Q3K%20%2097POhOGp8HhF929wOfO/qTN0mBoO+7COwVjky21k1rAplxBEB52Uw6dzyz9yESoo%20%20unfgbb8WMYHxMIHuAgEBMEwwPjEUMBIGCgmSJomT8ixkARkWBHRlc3QxFDASBgoJ%20%20kiaJk/IsZAEZFgRiMW9kMRAwDgYDVQQDEwdiMW9kLUNBAgo5o1zNAAAAAAAgMAkG%20%20BSsOAwIaBQAwDQYJKoZIhvcNAQEBBQAEgYBsuJ/qSqaQseMJr5iHLj/DLXXQ9w+J%20%20G6ymYLGJ9e16bTFpuaVvDobvWC18/KCoK7+NWr7SISTfyFLgvaB42J6JNreEC8Xr%20%20IzkFesdf3bJio8toFVUYeI3YRbLPOYMqe/U7MpYd88CKtU/oJxJ/EcBZ0ZLbJsFM%20%20yf7n75TvAhc7/w%3D%3D%20%20%0D%0AWorkspace%20Id%3As%3ACNST50091888CD.b1od.test%0D%0A")'><img src='Contents/images/mspaint.png' alt='' /><br/><span>Paint</span></div></div>
        <div class='floating-div'><div class='bak' οnmοuseοver='over(this)' οnmοuseοut='out(this)' οnclick='goRDP("redirectclipboard%3Ai%3A1%0D%0Aredirectposdevices%3Ai%3A0%0D%0Aredirectprinters%3Ai%3A1%0D%0Aredirectcomports%3Ai%3A1%0D%0Aredirectsmartcards%3Ai%3A1%0D%0Adevicestoredirect%3As%3A*%0D%0Adrivestoredirect%3As%3A*%0D%0Aredirectdrives%3Ai%3A1%0D%0Asession%20bpp%3Ai%3A32%0D%0Aprompt%20for%20credentials%20on%20client%3Ai%3A1%0D%0Aspan%20monitors%3Ai%3A1%0D%0Ause%20multimon%3Ai%3A1%0D%0Aremoteapplicationmode%3Ai%3A1%0D%0Aserver%20port%3Ai%3A3389%0D%0Aallow%20font%20smoothing%3Ai%3A1%0D%0Apromptcredentialonce%3Ai%3A1%0D%0Aauthentication%20level%3Ai%3A2%0D%0Agatewayusagemethod%3Ai%3A1%0D%0Agatewayprofileusagemethod%3Ai%3A1%0D%0Agatewaycredentialssource%3Ai%3A0%0D%0Afull%20address%3As%3ACNST50091888CD%0D%0Aalternate%20shell%3As%3A%7C%7Cwordpad%0D%0Aremoteapplicationprogram%3As%3A%7C%7Cwordpad%0D%0Agatewayhostname%3As%3ACNST50091888BD%0D%0Aremoteapplicationname%3As%3AWordPad%0D%0Aremoteapplicationcmdline%3As%3A%0D%0Aalternate%20full%20address%3As%3ACNST50091888CD%0D%0Asignscope%3As%3AFull%20Address%2CAlternate%20Full%20Address%2CServer%20Port%2CGatewayHostname%2CGatewayUsageMethod%2CGatewayProfileUsageMethod%2CGatewayCredentialsSource%2CPromptCredentialOnce%2CAlternate%20Shell%2CRemoteApplicationProgram%2CRemoteApplicationMode%2CRemoteApplicationName%2CRemoteApplicationCmdLine%2CAuthentication%20Level%2CRedirectDrives%2CRedirectPrinters%2CRedirectCOMPorts%2CRedirectSmartCards%2CRedirectPOSDevices%2CRedirectClipboard%2CDevicesToRedirect%2CDrivesToRedirect%0D%0Asignature%3As%3AAQABAAEAAAC+CQAAMIIJugYJKoZIhvcNAQcCoIIJqzCCCacCAQExCzAJBgUrDgMC%20%20GgUAMAsGCSqGSIb3DQEHAaCCCJIwggNXMIICP6ADAgECAhBr/oe2Jqr9vU0RF0dJ%20%20fIbuMA0GCSqGSIb3DQEBBQUAMD4xFDASBgoJkiaJk/IsZAEZFgR0ZXN0MRQwEgYK%20%20CZImiZPyLGQBGRYEYjFvZDEQMA4GA1UEAxMHYjFvZC1DQTAeFw0xMTA5MjgwNjQ3%20%20MTdaFw0xNjA5MjgwNjU3MTZaMD4xFDASBgoJkiaJk/IsZAEZFgR0ZXN0MRQwEgYK%20%20CZImiZPyLGQBGRYEYjFvZDEQMA4GA1UEAxMHYjFvZC1DQTCCASIwDQYJKoZIhvcN%20%20AQEBBQADggEPADCCAQoCggEBAKRLmr75by3nEek9il80iimL2uoR4Lu13R1KW4yr%20%20X35pejxwfJxVprIyyphU30SVP4SFPWzmC7bYLxgzkIRQ0bEUhZI5DDMO6HgNEgSI%20%20yDvHawxurS57q0KjzHfSchD2XLBIHvJIQ21fJd/FuAsTfeRh9ukR/nulWFBSEy/l%20%20UmkN1o5eesXKmt0qtTNb6K3xOMTQJHiDt+5kFcWqE2KngljVtAtILWyaUMlDzVRQ%20%20TcTVqabz1nrFgPo3IZXhShbu4zdaWYGnUPLtT1SoZIY9KahBAUZfgYVcHVC7b1EG%20%202aEizyRzzPPml7sE2gCSFQASEqJ7Xx/b0YslWEuqho0P7jcCAwEAAaNRME8wCwYD%20%20VR0PBAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFGB/5ege5K+WJypu%20%20QF9kEHtvhAkLMBAGCSsGAQQBgjcVAQQDAgEAMA0GCSqGSIb3DQEBBQUAA4IBAQAD%20%20X2xAiEZyYp+148i09P68X6LGyuQYrltmb+3DZiOFCFT9KYy/WlwFPgjzYkncF4ed%20%20ELnU6jenRVJrIBSXaa6ZvVQ6HYTf/pJLBkxd8lrCH4esEO1IPJ/c9JZDj0GWMYRL%20%20tmgiH6ZdgaAKjBvNZ5jnO9VA1fzuCvUPvjMezaW2F74StSlBAZlFfOPbIT1x07Hy%20%208M5WN2T+brk28dIkGbHIgmWeOKCI5qpaLsOV7CwPGHnRIzPl535M/rq3suCXC2gL%20%20NV2Zy92HxA/e9HXHUMfYsA1EX4SDNnXcOf51pYwL0XKyu580uTiaw4vyKk5ytjXN%20%20eGrmzKZXTnoCCaJEZf2vMIIFMzCCBBugAwIBAgIKOaNczQAAAAAAIDANBgkqhkiG%20%209w0BAQUFADA+MRQwEgYKCZImiZPyLGQBGRYEdGVzdDEUMBIGCgmSJomT8ixkARkW%20%20BGIxb2QxEDAOBgNVBAMTB2Ixb2QtQ0EwHhcNMTExMDEwMDYyNTEwWhcNMTMxMDA5%20%20MDYyNTEwWjBmMQswCQYDVQQGEwJVUzEPMA0GA1UECBMGUFVET05HMREwDwYDVQQH%20%20EwhTSEFOR0hBSTEMMAoGA1UEChMDU0FQMQwwCgYDVQQLEwNTQVAxFzAVBgNVBAMT%20%20DkNOU1Q1MDA5MTg4OENEMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCg9PRt%20%20qwqdsEXMBEa/er330f+Ai1DtlrcwbSIb1H9P3I0Rd2goIwjSr4nlWtkpObDKTagQ%20%20b9WD4kjEqA39ClWos34jhSsyHfQrwbKEmPVLWzQpW1jiD5uv7M1M9aXwhio8xI8u%20%20K+at6CIxVtUiKfppjR9L2jvxygIfH5I2a2D/8QIDAQABo4ICjTCCAokwDgYDVR0P%20%20AQH/BAQDAgWgMBMGA1UdJQQMMAoGCCsGAQUFBwMBMHgGCSqGSIb3DQEJDwRrMGkw%20%20DgYIKoZIhvcNAwICAgCAMA4GCCqGSIb3DQMEAgIAgDALBglghkgBZQMEASowCwYJ%20%20YIZIAWUDBAEtMAsGCWCGSAFlAwQBAjALBglghkgBZQMEAQUwBwYFKw4DAgcwCgYI%20%20KoZIhvcNAwcwHQYDVR0OBBYEFPYSOL6F4ltMTEciHB0DZjDZLFmmMB8GA1UdIwQY%20%20MBaAFGB/5ege5K+WJypuQF9kEHtvhAkLMIHKBgNVHR8EgcIwgb8wgbyggbmggbaG%20%20gbNsZGFwOi8vL0NOPWIxb2QtQ0EsQ049Q05TVDUwMDkxODg4QUQsQ049Q0RQLENO%20%20PVB1YmxpYyUyMEtleSUyMFNlcnZpY2VzLENOPVNlcnZpY2VzLENOPUNvbmZpZ3Vy%20%20YXRpb24sREM9YjFvZCxEQz10ZXN0P2NlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3Q/%20%20YmFzZT9vYmplY3RDbGFzcz1jUkxEaXN0cmlidXRpb25Qb2ludDCBtwYIKwYBBQUH%20%20AQEEgaowgacwgaQGCCsGAQUFBzAChoGXbGRhcDovLy9DTj1iMW9kLUNBLENOPUFJ%20%20QSxDTj1QdWJsaWMlMjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25m%20%20aWd1cmF0aW9uLERDPWIxb2QsREM9dGVzdD9jQUNlcnRpZmljYXRlP2Jhc2U/b2Jq%20%20ZWN0Q2xhc3M9Y2VydGlmaWNhdGlvbkF1dGhvcml0eTAhBgkrBgEEAYI3FAIEFB4S%20%20AFcAZQBiAFMAZQByAHYAZQByMA0GCSqGSIb3DQEBBQUAA4IBAQCR4jsGDiHK31ov%20%209tQgPZrCPzpbMbXsBUZ4j8XHpDP+7yRoI79YYlTPNgeo57PedEz2N+UW5H77+lAM%20%20TWB8ZuN00CHcBuIfv7wWgQ0rBh4uR6UtVcGlW2+LkDXFppU8TYtMjnX/o4Fl1ifW%20%20K1iCfPAAuoJ1r3IgX4B/g6XU4GSm4HsKgM3ZoXpckHA7zLXSFMElnsR7RvBVBVeg%20%203KhjBe5vc2GRRsmDazxNtKVdTwM8iA3j49pI742HLakF7N9/0nauXZmY2wHo5Q3K%20%2097POhOGp8HhF929wOfO/qTN0mBoO+7COwVjky21k1rAplxBEB52Uw6dzyz9yESoo%20%20unfgbb8WMYHxMIHuAgEBMEwwPjEUMBIGCgmSJomT8ixkARkWBHRlc3QxFDASBgoJ%20%20kiaJk/IsZAEZFgRiMW9kMRAwDgYDVQQDEwdiMW9kLUNBAgo5o1zNAAAAAAAgMAkG%20%20BSsOAwIaBQAwDQYJKoZIhvcNAQEBBQAEgYBbVqCrJnWqTzB4MlEmMNxg0AjGcMaZ%20%20/xW84ELw1hGZPis3ewFgmyRCFrrqLgzdaUp4FoDHRPa8RjrmtqSeTb9SNyJNUaQE%20%20ggtluFkYqFAnbAGhIpqaJlxbIs8fpj8HXUgIxP7wBxoz7BFk9Y5LGezhT9Df2+si%20%20U2s37dhnACjB1w%3D%3D%20%20%0D%0AWorkspace%20Id%3As%3ACNST50091888CD.b1od.test%0D%0A")'><img src='Contents/images/wordpad.png' alt='' /><br/><span>WordPad</span></div></div>
    </div>
    <object type='application/x-oleobject' id='MsRdpClient' name='MsRdpClient' height='0'
        width='0' classid='CLSID:6A5B0C7C-5CCB-4F10-A043-B8DE007E1952'>
    </object>
    <object type='application/x-oleobject' id='MsRdpClient1' name='MsRdpClient1' height='0'
        width='0' classid='CLSID:7390f3d8-0439-4c05-91e3-cf5cb290c3d0'>
    </object>
    </form>
</body>
</html>



      远程应用访问的参数配置是写死的,可以参照以下的配置生成配置命令:

     

MsRdpClient.MsRdpClientShell.RdpFileContents = 

"redirectclipboard:i:1\r\n" + 

"redirectposdevices:i:0\r\n" + 

"redirectprinters:i:1\r\n" + 

"redirectcomports:i:1\r\n" + 

"redirectsmartcards:i:1\r\n" + 

"devicestoredirect:s:*\r\n" + 

"drivestoredirect:s:*\r\n" + 

"redirectdrives:i:1\r\n" + 

"session bpp:i:32\r\n" + 

"span monitors:i:1\r\n" + 

"prompt for credentials on client:i:1\r\n" + 

"remoteapplicationmode:i:1\r\n" + 

"server port:i:3389\r\n" + 

"allow font smoothing:i:1\r\n" + 

"promptcredentialonce:i:1\r\n" + 

"authentication level:i:0\r\n" + 

"gatewayusagemethod:i:2\r\n" + 

"gatewayprofileusagemethod:i:1\r\n" + 

"gatewaycredentialssource:i:0\r\n" + 

"full address:s:<serverIP>\r\n" + 

"alternate shell:s:||calc\r\n" + 

"remoteapplicationprogram:s:||calc\r\n" + 

"remoteapplicationname:s:Calculator\r\n" + 

"remoteapplicationcmdline:s:\r\n";


 


      值得注意的参数是full address,它意味着远程机器的IP地址

      运行效果:

     

     

      点击连接后,输入用户名密码即可打开远程机器上的word。

     这里是源码下载地址,源码经过了测试,如果无法正常运行,请查看软件环境是否如文章开头所述,有问题可在评论区留言。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值