
我寫了一個 PowerShell 腳本來檢查<動作>為任務目錄中的每個任務新增標籤並標記<啟用>TRUE或FALSE</啟用>根據可執行檔的數位簽章的有效性標記為假/真。讀取每個任務後,腳本會使用相同的名稱、類型和位置重新儲存任務檔案。
現在我的問題是,當我午餐任務計劃程序時收到此訊息:
“任務 XYZ:任務映像已損壞或已被篡改。”
對於已掃描和儲存的所有任務都會顯示此訊息。
編輯任務的xml檔會直接破壞任務嗎?是否有任何任務可能導致此錯誤(例如:登錄值)?
答案1
這是一項安全功能。個人或惡意程式可以編輯任務檔案並將位置插入到惡意程式中。 Windows 建立任務檔案的各種屬性和內容的雜湊值,並將其儲存在登錄中。如果儲存的雜湊值與計算的雜湊值不同,Windows 將阻止任務運行。
如果您想要執行類似的操作,請刪除該任務並重新建立它,並將該任務設為停用。
答案2
匯出原始任務,然後修改匯出的 XML 檔案。匯入到另一台電腦或刪除原始任務,然後再匯入新修改的任務。
答案3
若要恢復,您始終可以執行匯入以將這些 XML 檔案匯入為新任務。 (可能需要將檔案重新命名為 .xml)
答案4
XML 檔案有一個由非 ascii 字元組成的 2 位元組前綴,典型的編輯器(記事本、文字板等)無法處理這些字元。當這2個位元組被編輯破壞時,檔案將無法匯入。