Difference between wscript and cscript

前端 未结 1 1804
-上瘾入骨i
-上瘾入骨i 2020-11-28 03:37

What is the difference between cscript and wscript? Which is best for doing Telnet and FTP automation in Windows?

相关标签:
1条回答
  • 2020-11-28 04:11

    In Windows, an executable is either a console application or a Windows application (or a SFU or Native application, but that doesn't matter here).

    The kernel checks a flag in the executable to determine which.

    When starting using CreateProcess WinAPI function, if it is a console application, the kernel will create a console window for it if the parent process doesn't have one, and attach the STDIN, STDOUT and STDERR streams to the console.

    If it is a Windows application, no console will be created and STDIN, STDOUT and STDERR will be closed by default.

    WSCRIPT.EXE and CSCRIPT.EXE are almost exactly identical, except that one is flagged as a windows application and the other is flagged as a console application (Guess which way around!).

    So the answer is: If you want your script to have a console window, use CSCRIPT.EXE. If you want it to NOT have a console window, use WSCRIPT.EXE.

    This also affects some behaviors, such as the WScript.Echo command. In a CSCRIPT.EXE this writes a line to the console window. In WSCRIPT.EXE it shows a messagebox.

    For your application I suggest CSCRIPT.EXE. I think you should also look at PuTTY and PLink, and you should also see this here:

    • Capturing output from WshShell.Exec using Windows Script Host
    0 讨论(0)
提交回复
热议问题