通過silktest呼叫c#寫的工具獲取dll檔案版本資訊的方法:
我們在測試的時候有時候要檢查dll檔案的資訊,例如:檔案版本等等,為了解決此種問題,我用c#寫個工具,通過silktest呼叫這個工具從而獲得dll檔案的相關資訊,如:版本號等等。下面就簡單介紹這個方法:
首先 用c#寫個工具test01.exe檔案
原始碼如下:
view plain
copy to clipboard
?
usingsystem;
usingsystem.text;
usingsystem.diagnostics;
namespacetest01
publicvoidgetfileversion()
staticvoidmain(stringargs)
} } 編譯就回test01.exe檔案。
其次 在silktest中呼叫這個工具。
指令碼如下:
tescase getdllfileversion()
string sfilepath="c:\windows\twain.dll
" // 這裡只是舉個例子
list of string lsfileversion
sys_execute("c:\test\test01.exe ",lsfileversion)
print(lsfileversion[1])
當然你也可以把上面的方法封裝成乙個方法,方便後邊呼叫。
當然如果你對c++熟悉,可以寫個dll,然後用silktest呼叫dll檔案中的方法,也可以,呵呵!
到此問題解決,是不是很簡單,哈哈^_^
**如下:
view plain
copy to clipboard
?usingsystem;
usingsystem.text;
usingsystem.text.regularexpressions;
usingsystem.diagnostics;
namespacetest01
publicvoidgetfileversion()
fileversioninfo myfileversioninfo = fileversioninfo.getversioninfo(sfilepathnew);
console.writeline("file: "
+ myfileversioninfo.filedescription +
'\n'
+ "version number: "
+ myfileversioninfo.fileversion);
}staticvoidmain(stringargs)
} }
C 呼叫C 寫的DLL
方法有不少,這裡記錄其中的乙個方法。編譯 呼叫通過了的。期間遇到的問題是c 呼叫時傳遞string型別的引數和返回值會報錯。targetinvocationexception異常,值不在範圍內,記憶體不可訪問等等。解決方法是 在c 的dll中將string型別的引數返回值改為lptstr型別。在c ...
C 呼叫Delphi寫的DLL
在c 中可以這樣呼叫 呼叫 這裡需要注意的是要外傳的pchar型別引數,在c 中對應使用stringbuilder,如果使用string沒有任何資訊傳出,如果使用ref string形式,則會出現記憶體錯誤。在c 中可以這樣呼叫 呼叫 經過測試 delphi中integer的引數使用c 中的int即...
C 通過this呼叫過載的函式
使用可過載的建構函式時,有時使用乙個構造函式呼叫另乙個建構函式很有用。在c 中,可以通過this關鍵字的另一種形式來實現該操作 下面來看一下案例 class program y t1.x,t1.y console.writeline t2 x y t2.x,t2.y console.writelin...