打造自己Windows終端服務(wù)客戶端

字號(hào):

1. 首先確保你的機(jī)器上存在mstscax.dll,如果沒(méi)有這個(gè)文件,可以從http://download.microsoft.com/download/whistler/tools/1.0/wxp/en-us/msrdpcli.exe
    下載并安裝遠(yuǎn)程桌面連接軟件.或者使用WindowXP中自帶的mstscax.dll,運(yùn)行regsvr32 mstscax.dll進(jìn)行注冊(cè),ccrun測(cè)試使用的mstscax.dll版本號(hào)是5.1.2600.0,在Windows2000 Server中可以編譯。
    2. 運(yùn)行C++Builder-->Components-->Import Active Control,在列表中找到下面的:
    Microsoft Terminal Services Active Client 1.0 Type Library (Version 1.0)
    點(diǎn)擊Install,你可以選擇將其安裝到現(xiàn)在的包中,也可以新建一個(gè),選擇Into new package-->點(diǎn)擊Browser將其保存為D:\Program Files\Borland\ccrun\mstsc\mstsc.bpk。在Description一欄可以填:Microsoft Terminal Service Control,這個(gè)名稱將出現(xiàn)在安裝完成后的Package列表中。點(diǎn)擊OK以后,稍等片刻,系統(tǒng)會(huì)提示mstsc.bpl將被編譯并且安裝,是否繼續(xù),點(diǎn)擊yes。這時(shí)如果一切正常的話,系統(tǒng)將提示有兩個(gè)編譯錯(cuò)誤(嘿嘿,我指的是正常情況下),難道是BCB的BUG?提示找不到OlePrecedure的定義。我靠。記憶中有個(gè)OleProcedure,一個(gè)o,一個(gè)e,該不會(huì)真的是筆誤吧。將兩處OlePrecedure換成OleProcedure,再次編譯,ok了,編譯成功,點(diǎn)擊Install安裝。
    3. 如果上一個(gè)步驟成功的話,在組件面板的ActiveX下將多出兩個(gè)控件:MsTscAx和MsRdpClient,我們主要是利用MsTscAx控件。
    4. MsTscAx控件的常用屬性和方法:
    // 桌面高度
    MsTscAx1->DesktopHeight = 600;
    // 桌面寬度
    MsTscAx1->DesktopWidth = 800;
    // 在連接前顯示的字符串
    MsTscAx1->ConnectingText = WideString("Welcome! ccrun.");
    // 連接的服務(wù)器地址
    MsTscAx1->Server = WideString(edtServer->Text);
    // 窗口/全屏模式
    MsTscAx1->FullScreen = false;
    // 文檔標(biāo)題:打造自己的Windows終端服務(wù)客戶端
    // 作者:ccrun(老妖) 信箱:info@ccrun.com
    // 為防止不負(fù)責(zé)任的轉(zhuǎn)載者遺漏作者信息,故在此插入此信息,請(qǐng)見(jiàn)諒.
    // 歡迎訪問(wèn)C++Builder 研究 http://www.ccrun.com
    // 畫面色深(通常都是256色)
    MsTscAx1->ColorDepth = 16;
    // 登錄用戶名
    MsTscAx1->UserName = WideString(edtUserName->Text);
    // 斷開(kāi)連接后顯示的字符串
    MsTscAx1->DisconnectedText = WideString("886,ccrun.");
    // 將位圖緩存到磁盤
    MsTscAx1->AdvancedSettings->BitmapPeristence = 1;
    // 啟用數(shù)據(jù)壓縮
    MsTscAx1->AdvancedSettings->Compress = 1;
    // 連接后運(yùn)行的Shell程序,當(dāng)關(guān)閉此Shell程序后自動(dòng)斷開(kāi)連接
    MsTscAx1->SecuredSettings->set_StartProgram(WideString("C:\\ccrun\\123.exe"));
    // 連接
    MsTscAx1->Connect();
    // 斷開(kāi)連接
    MsTscAx1->Disconnect();
    5. 新建一個(gè)Project,在Form上拖一個(gè)MsTscAx控件,根據(jù)上面介紹的屬性和方法,相信你在BCB中建立自己的終端服務(wù)客戶端沒(méi)問(wèn)題了。
    6. 編譯后的程序發(fā)布時(shí)必須在目標(biāo)機(jī)器上存在mstscax.dll文件,并且用Regsvr32注冊(cè)以后才能正常運(yùn)行。