2013-07-28 60 views

回答

6

CreateProcess是用於創建進程的本機API。

spawnl是C運行時的一部分,帶有類POSIX語義。它僅支持一小部分功能(提供命令行參數),並作爲圍繞CreateProcess的封裝來實現。與此同時,spawnl已棄用_spawnl

CreateProcess的自然操作模式可與spawnlP_NOWAIT模式相媲美,但具有附加功能(環境,標準手柄安全信息等)。

注意,P_OVERLAY模式spawnl不是那種直接在Windows下的所有支持(沒有Unix類fork + execve成語,進程重新創建,不分叉)。這個功能就是通過產生一個新的過程並終止原來的過程來實現的,而不是通過替換過程。

+0

另請注意,_spawnl並不總是從參數中正確構建命令行。如果您的參數包含特殊字符,則最好使用CreateProcess。 –

相關問題