C#腳本引擎 CS-Script 之(三)——如何部署


本文不但介紹了CS-Script如何部署,還介紹了CS-Script的部署后面的原理,並用一個框圖詳細介紹了部署中的各種細節。

 

一、獲取資源

1.從官網上下載編譯好的csscript資源:cs-script.7z 

https://csscriptsource.codeplex.com/releases/view/616234

2.解壓到某目錄下,注意選擇一個相對固定的目錄,比如一個專門用來存放庫文件的目錄;

比如在我的機器上會放到: E:\OpenSource\cs目錄下;

二、執行安裝

嚴格來說,csscript是不需要部署的,其實只要下載了zip包就ok了,不需要什么部署,下載了即可使用。后續的所謂安裝只是對操作系統做一些調整,以便讓后續編寫腳本,執行腳本可以更加方便。

安裝步驟:

1. 找到第一節中的解壓目錄,運行其根目錄中的install.cmd,即可完成安裝;

2. 默認情況下CS-Script的庫是使用.NET V4.5的(注,並不是安裝程序需要.NET V4.5,而是運行程序,特別是CSScriptLibrary.dll),如果當前計算機沒有安裝.NET v4.5,則程序會彈出提示,或者選擇降低到 V4.0來使用,那么在內部來說,就是用 lib\Bin\NET 4.0\CSScriptLibrary.dll來替代 lib目錄下的CSScriptLibrary.dll。

 

三、Install.cmd在系統中添加了什么

1. 添加了各種環境變量的,如下圖所示:

image

同時會把%CSSCRIPT_DIR%, %CSSCRIPT_DIR%\LIB添加到環境變量中,以便可以找到cscs.exe, csws.exe等各種csscript的工具;

 

2.在ProgramData中創建了CS-Script目錄,拷貝了后續輔助調試需要用到的一些資源,主要是將后續的右鍵菜單需要用到的一些命令拷貝到了

C:\ProgramData\CS-Script\ShellExt目錄下了,內容如下:

image

3. 注冊了一個動態的右鍵菜單,后續只要在cs文件上右鍵,在右鍵菜單中就會包含如下內容:

這個菜單其實是根據C:\ProgramData\CS-Script\ShellExt目錄下的cmd文件動態生成的。

image

 

四、Install.bat都做了什么?

打開install.cmd,里面就一句話:

start css_config.exe,所以我猜想所有配置的工作都封裝在css_config.exe的源碼中了,好在這是開源代碼,在下載源碼包中也包括了css_config項目的代碼,所以我就順着css_config的源碼往下看,打開css_config發現他的代碼很簡單,主要做了三件事情:

1. 檢查當前windows是否有管理員權限,如果沒有則提示並退出;

2.根據當前系統的.NET 版本,以及用戶的選擇,確認拷貝哪個版本的CSSCriptLibrary.dll到 Lib目錄下;

3.調用csws.exe來執行一段cs腳本,以執行更深層次的配置,代碼如下:

string csws = Path.Combine(rootDir, "csws.exe");
                string configScript = Path.Combine(rootDir, @"lib\config.cs");
                args = new string[2];
                args[0] = "/dbg";
                args[1] = configScript;
                AppDomain.CurrentDomain.ExecuteAssembly(Path.Combine(rootDir, @"csws.exe"), args);

后續就順着config.cs一直往下走,發現整個部署過程的邏輯聽復雜,在各種cmd、exe、dll和cs之前繞來繞去的,大致如下圖所示,如果有興趣的話,可以再詳細去看具體的代碼。

 

image

 

 

本系列包括:

C#腳本引擎 CS-Script 之(一)——初識 

C#腳本引擎 CS-Script 之(二)——性能評測 

C#腳本引擎CS-Script之(三)——如何部署 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM