共用方式為


應用程式驗證器 - 功能

協助工具功能

Microsoft 致力於讓所有使用者都能輕鬆使用其產品與服務。 應用程式驗證器中的功能,可讓它更容易存取,例如鍵盤快速鍵、文字讀取器,以及改變字型和主題的能力。

使用鍵盤快速鍵

藉由在應用程式驗證器中使用鍵盤快速鍵,您可以快速完成下列常見工作。

作法 使用此鍵盤快速鍵
新增要測試的應用程式 Ctrl + A
移除應用程式 Ctrl + D
啟用所有測試 Ctrl + E
停用所有測試 Ctrl + I
還原測試預設值 Ctrl + R
儲存變更 Ctrl + S
結束應用程式驗證器 Atl + E
開啟屬性視窗 Ctrl + P
開啟記錄畫面 Ctrl + L

記錄

在驗證應用程式期間發生驗證程式停止時,會產生記錄檔。

存取記錄

應用程式驗證器會顯示 [記錄] 視窗,其中包含先前執行的應用程式,以及與其相關聯的記錄。 若要存取記錄視窗,請在 [檢視] 功能表上選取 [記錄]。 若要檢視記錄檔的詳細資料,請選取應用程式的名稱。

應用程式驗證器的螢幕擷取畫面,其中顯示測試應用程式的單一記錄。

將記錄儲存/匯出至 XML

如果您將記錄匯出至 XML,您可以在 Microsoft Excel 等外部工具中開啟記錄檔。 若要將記錄匯出至 XML,請選取應用程式,然後選取您想要匯出的記錄。 按一下 [另存新檔],然後輸入您要提供檔案及其位置的名稱,然後按一下 [儲存]。

篩選記錄

您可能想要篩選嚴重性等專案的記錄資訊、僅查看警告,或追蹤您可以定義自訂篩選,只顯示包含您應用程式的專案。 若要篩選記錄,使用試算表的其中一種方法,例如 Excel。

  1. 將記錄檔儲存至 XML,並在 Excel 中加以開啟。
  2. 在 Excel 中,醒目提示第一列 (包含資料行標頭) 。
  3. 在 [資料] 功能表上,按一下 [篩選],然後按一下 [自動篩選]。

刪除記錄

應用程式驗證器可讓您個別刪除記錄,或移除應用程式,並刪除與其相關聯的所有記錄。

若要個別刪除記錄,請選取記錄,然後按一下 [刪除] 或以滑鼠右鍵按一下記錄,然後選取 [刪除]。

若要移除應用程式並刪除與其相關聯的所有記錄,請以滑鼠右鍵按一下應用程式名稱,然後選取 [刪除]。

若要刪除所有記錄:

  1. 開啟主要 [應用程式驗證器] 視窗。

  2. 在 [檔案] 功能表上,選取 [ 清除所有記錄]。

新增戳記

當進程執行時,您可以將戳記新增至其相關聯的記錄檔。 戳記資訊可以是任一字元串,例如目前時間。 稍後您可以使用此資訊作為篩選準則,以擷取感興趣的記錄檔。

若要將戳記新增至記錄檔:

  1. 選取記錄檔,然後按一下 [ 新增戳記]。

  2. 輸入字串作為戳記資訊。

輸出選項

根據預設,在使用者帳戶下執行之服務/應用程式的記錄會儲存在以下位置: %USERPROFILE%\serviceprofiles\AppVerifierLogs

針對在本機服務帳戶下執行的服務/應用程式,記錄檔會寫入下列專案: %windir%\serviceprofiles\LocalService\AppVerifierLogs

針對在系統帳戶下執行的服務/應用程式,記錄檔會儲存在: %windir%\system32\config\systemprofile\AppVerifierLogs 適用于原生服務,以及 %windir%\syswow64\config\systemprofile\AppVerifierLogs wow64 服務/應用程式。

針對在網路服務帳戶下執行的服務/應用程式,記錄檔會儲存在: %windir%\serviceprofiles\NetworkService\AppVerifierLogs

如果應用程式沒有在預設記錄檔路徑中寫入/建立記錄檔的許可權,則會失敗,錯誤0xC0000022。

設定VERIFIER_LOG_PATH環境變數會覆寫預設記錄檔建立。 如果您想要將所有記錄檔儲存在單一位置,這非常有用。

受保護的進程無法存取環境變數,因此無法建立記錄檔。 若要解決此問題,您可以使用 AppVerif.EXE 命令列來設定受保護的進程記錄路徑: appverif.exe –sppath <drive:>\<path> 來設定受保護的記錄路徑。

命令列; appverif.exe –cppath 清除受保護的記錄檔路徑。

符號路徑 – 符號路徑將用來解析記錄檔中的堆疊追蹤。 如果您未指定符號路徑,應用程式驗證程式會自動查看_NT_SYMBOL_PATH,以查看是否有指定任何符號路徑。

從、到 – 您可以指定起始戳記和結束戳記。 您只會看到記錄內容,記錄在插入 From 戳記之後,以及插入結束戳記之前。 如果您未提供 From 或 To 戳記,應用程式驗證器將會分別顯示檔案開頭到檔案結尾的記錄檔。

受保護的進程記錄

應用程式驗證器記錄檔建立取決於環境變數,例如VERIFIER_LOG_PATH和 %USERPROFILE%。 如果受保護的程式 (安全) 進程無法存取這些環境變數,則無法建立記錄檔。 下列命令列選項可用來設定/清除受保護的進程記錄檔路徑。 只有當進程無法在 VERIFIER_LOG_PATH 或 %USERPROFILE% 下建立記錄檔時,才會使用此記錄路徑。

若要設定受保護的進程記錄檔路徑:

appverif –sppath [PROTECTED_PROCESS_LOG_PATH]

例如:下列命令列會將受保護的進程記錄檔路徑設定為 「c:\My Logs\Verifier Logs」。

appverif –sppath c:\My Logs\Verifier Logs

注意:請確定 「c:\My Logs」 存在,且受保護的進程有權在此路徑中建立檔案。

下列命令列顯示現有的受保護進程記錄檔路徑。

appverif –sppath

若要顯示現有的受保護進程記錄檔路徑並加以清除,請使用下列命令列:

appverif -cppath

請注意,[應用程式驗證器 – 記錄檔] 視窗會顯示登入使用者 %USERPROFILE% 中的記錄檔。 如果您希望受保護的進程記錄顯示在此 UI 中,您必須手動將它們複製到 %USERPROFILE%\AppVerifierLogs。

屬性視窗

[屬性] 視窗可讓您存取每個驗證層和檢查的各種設定。

存取屬性視窗 - 屬性視窗會在畫面的下半部顯示其資訊。

若要檢視 [屬性] 視窗 - 在 [檢視] 功能表上,選取 [屬性視窗]。 出現在 [屬性視窗] 選取範圍旁的核取記號。

關閉屬性視窗 - 如有需要,您可以從檢視中移除屬性視窗。

若要關閉屬性視窗 - 在 [檢視] 功能表上,選取 [屬性視窗]。 將會清除 [屬性視窗] 選取範圍旁的核取記號。

設定屬性

每個驗證層都有自己的屬性集,可設定和變更。 若要設定驗證層的屬性,請選取測試區域內的圖層 (,例如基本) 。 此步驟會顯示所選測試的屬性。

[應用程式驗證器] 的螢幕擷取畫面,其中顯示堆積測試的屬性。

設定屬性

應用程式驗證器內有兩組屬性。 其中一個是以指定驗證層內的檢查為基礎,另一個則是以映射 (解決方案或專案) 為基礎。 這些屬性是從屬性視窗存取。

應用程式驗證器會顯示每個允許編輯之屬性的下列資訊:

名稱 - 每個屬性的唯一名稱

類型 - 布林值、DWORD、字串、MultipleString

- 可以變更且會根據類型而有所不同的專案

描述 - 描述說明屬性是什麼。

編輯影像的屬性

針對在應用程式驗證器內測試的每個影像,您可以編輯下列專案。

傳播 - 將驗證器設定從父進程傳播到子進程。 並非所有測試都可以傳播。 如果啟用此屬性 (核取方塊) ,則會傳播設定。 否則,不會傳播設定。

AutoClr - 指定映射開始執行之後,已驗證的映射將會清除本身的設定。 如果啟用此屬性 (方塊) ,則已驗證的映射將會清除設定。 否則不會清除設定。

AutoDisableStop - 驗證程式只會針對找到的相同問題抱怨一次。 如果驗證器再次找到相同的問題,則不會產生錯誤。 如果啟用此屬性 (方塊) ,則驗證器只會針對給定的問題產生一個錯誤。 否則,每次發生問題時,驗證器都會產生錯誤。

LoggingOnLocksHeld - 將會記錄 dll 載入/卸載事件。 驗證器會在保留載入器鎖定時執行 I/O。 這可能會導致應用程式停止回應。 如果啟用此屬性 (方塊) ,則會記錄事件。 否則,不會記錄事件。

ExceptionOnStop – 對於每個驗證器停止,將會引發例外狀況,而不是偵錯中斷。 如果此屬性已啟用 (方塊) ,則驗證器所回報的每個停止都會引發例外狀況。 否則,驗證器所回報的每個停止都會中斷至偵錯工具。

MinimumMemoryOverhead – 藉由停用一些僅用於偵錯的功能,以減少記憶體額外負荷。 如果啟用此屬性 (方塊) ,則會停用某些功能以減少記憶體額外負荷。 否則,不會停用功能。

注意

除非絕對需要降低記憶體額外負荷,否則請勿啟用 MinimumMemoryOverhead 屬性。 啟用此屬性時,會遺漏偵錯資訊,而且更難以診斷錯誤。

設定/編輯檢查的屬性

屬性會與檢查相關聯,因此請參閱這些主題以取得詳細的欄位資訊。 若要編輯屬性,您可以採用下列兩種方法之一:

個別 - 在屬性視窗中,按兩下您想要編輯的屬性。 這會顯示一個對話方塊,可讓您編輯專案,並將它設定回預設值。 變更專案,然後按一下 [確定]。

群組 - 從 [測試] 區域中,按一下您需要編輯的測試或驗證層。 使用滑鼠右鍵選項來顯示所有屬性的畫面。 變更屬性或重設回預設值,然後按一下 [確定]。

另請參閱

應用程式驗證器 - 概觀

應用程式驗證器 - 測試應用程式

應用程式驗證器 - 應用程式驗證器內的測試

應用程式驗證器 - 停止代碼和定義

應用程式驗證器 - 對應用程式驗證器停止進行偵錯

應用程式驗證器 - 常見問題