將 vbscript 程式碼嵌入到批處理檔案中而不使用臨時檔案

以下是 dostips 論壇使用者 Liviu 發明的技術(hack)的示例

@echo off
echo Printed by CMD.EXE
cscript //nologo "%~f0?.wsf" //job:JS //job:VBS

exit /b %errorlevel%

----END OF BATCH CODE---
<package>
  <job id="JS"> 
    <script language="VBScript">
    
        WScript.Echo("Printed by VBScript"):
        
    </script>
  </job>
  <job id="VBS"> 
    <script language="JScript">
    
        WScript.Echo("Printed by JScript");
        
    </script>
  </job>
</package>

由於執行帶有 Windows 指令碼主機的 wsf 檔案是擴充套件敏感的,你可以通過在檔案末尾新增 ?.wsf 來執行任何副檔名的檔案(這是黑客的核心)。雖然 Liviu 的例子可能更強大,但上面的程式碼更簡化版本。由於 wsh 並不關心 <package> 節點之外的事情,因此你沒有義務將所有內容放在 xml 註釋中。雖然要注意重定向符號(<>