2013年5月9日 星期四

細說從頭 Windows Embedded 8 Standard part 3--Dynamic Dependency Analyzer (DDA) 實作篇(必看)


在Windows Embedded 8 standard中要建立一個好的Module不外乎是能快速幫客戶找出與Module之間必要元件,如此一來在 Release module給客戶或同事時,這個Module就可以很簡單的被使用.

在WE8S中提供了一個工具Dynamic Dependency Analyzer (DDA)工具,主要用來分析應用程式在執行過程中需要那些相依元件,而這些件元件主要都是一些"DLL"檔案所組成。利用這個工具我們可以將程式執行過程的"動態連結檔" 都收集起來並記錄於文字檔之中,再配合我們之前說過的Module Designer工具一起將應用程式製作成Module.

我們來看這個DDA 工具如何使用,基本上這個工具是Command Line的工具
所以我們會在command line的語法如下:
DynamicAnalyzer-x86 {/a <processID> | /s <path>} [/o <log>] [/?]

接下來我們實作操作一下:
1.開啟Command line tool 並將路徑切至C:\Program Files (x86)\Windows Embedded 8 Standard\Toolset\Embedded Tools  這也就是工具所在位置

2.在參數中的 /a 後面接著是 <ProcessID> ,這是什麼東西呀! 基於系統方便辨識應用程式在程式執行時會給予一個ID,所以我們可以開啟 "Taskmgr" 來查看目前程式的ProcessID.

以我系統中的程式 QvodPlay.exe為例,如果要得知執行時需要那些"DLL"檔,指令如下


DynamicAnalyzer-x86.exe /a 10960 /o app.txt  

3.執行後 工具會要求按下Ctrl+C 結束 並在目錄下你可以找到app.txt檔案,利用記事本開啟後,裡面就會記錄著每個DLL的名稱.

4.幫大家複習一下,開啟Module Designer 中匯入app.txt檔