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;
// 畫面色深(通常都是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共同討論,請勿攜帶附件,帶附件信件一律自動刪除,謝謝。