簡體   English   中英

無法從我的C#程序中運行.vbs腳本:“系統找不到指定的文件。”

[英]Unable to run .vbs script from my C# program: “The system cannot find the file specified.”

我試圖從我的C#程序中運行一個簡單的.vbs腳本,但我一直收到此錯誤。

我100%確信我的道路是正確的! 有人知道這個問題嗎? 我的run.vbs單獨運行正常(也system_logged.bat運行良好)

在.vbs內部,我調用一個批處理文件並轉儲錯誤日志,僅此而已。

run.vbs:

Set WshShell = WScript.CreateObject("WScript.Shell") 
obj = WshShell.Run("system_logged.bat", 0) 
set WshShell = Nothing 

system_logged.bat:

adb shell "su -c 'dd if=/dev/block/mmcblk0p23 of=/storage/sdcard1/system.img bs=4096'"  > "output.txt" 2>&1

由於您的錯誤消息報告錯誤來自此行:

obj = WshShell.Run("system_logged.bat", 0)

我的假設是腳本無法找到system_logged.bat 嘗試在腳本中提供bat文件的完整路徑。 如果路徑中有空格,則需要將其用引號引起來。 在VBScript中,您需要通過將它們加倍來對字符串文字中的所有引號進行轉義:

obj = WshShell.Run("""c:\path with spaces\system_logged.bat""", 0)

單獨運行時可能起作用的原因可能是由於運行時所處的執行上下文。 c#應用程序啟動時,默認的工作目錄可能不同於WScript單獨啟動時使用的目錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM