Tôi có thể biết sự khác nhau giữa mỗi Exec
, ExecWait
, ExecShell
, nsExec::Exec
, nsExec::ExecToLog,
nsExec::ExecToStack
, ExecDos
và ExecCmd
là gì , như khi nào nên sử dụng?Exec vs ExecWait vs ExecShell vs nsExec :: Exec vs nsExec :: ExecToLog vs nsExec :: ExecToStack vs ExecDos vs ExeCmd
Tôi đã đăng các cuộc gọi thực hiện khác nhau mà tôi biết. Tôi cố gắng để tạo ra một danh sách toàn diện, do đó nó giúp du khách trong tương lai ..
Exec
: Rõ ràng thực hiện chuỗi gọi là, có thể là một số ứng dụng, giao diện điều khiển hoặc tập tin.ExecWait
: Thực hiện nhưExec
nhưng đợi cho đến khi quá trình thoát.ExecShell
: Nó dùng để làm gì?nsExec::Exec
: Cũng giống nhưExec
hoặcExecWait
nhưng chỉ cho dấu nhắc lệnh và quá mà không mở cửa sổ bảng điều khiển. Tôi không chắc liệu nó có chờ quá trình thoát hay không.nsExec::Exec
có chờ quá trình con để thoát không?nsExec::ExecToLog
:The documentation says ExecToLog
tương tự như đồng bằngnsExec
nhưng nó xuất ra cửa sổ nhật ký. Điều đó có nghĩa là gì, cửa sổ nhật ký là gì?nsExec::ExecToStack
: Tài liệu nóiExecToStack
tương tự như đồng bằngnsExec
nhưng nó đẩy đầu ra vào ngăn xếp. Tôi hiểu rồi.ExecDos
: Tương tự nhưnsExec::ExecToStack
nhưng nó bổ sungmột (Há chẳng phải?). lấy tham số chuỗi phục vụ như stdin cho chạy ứng dụng.
b. hoạt động ở cả chế độ đồng bộ/không đồng bộ.
c. nó hoạt động ngoài mục - đối với kiểm tra .onInit.
ExecCmd
: Tương tự nhưExecDos
nhưng nó không đòi hỏi nhữngExpandEnvStrings $3 %COMSPEC% ExecDos::exec /C
phần. Tôi có đúng không?
Bạn có thể bao gồm [Timeout :: ExecTimeout] (http://nsis.sourceforge.net/ExecTimeout_plug-in) cũng vậy, đối với những người cần phải giết quá trình con nếu mất quá nhiều thời gian để hoàn thành. –
@FranciscoR Vui lòng chỉnh sửa câu hỏi và thêm câu hỏi (cùng với mục đích của nó). Tôi không hiểu biết về người bạn đã đề cập đến. – nawfal
Thực tế, các giải thích cho những gì mỗi lệnh nên làm thuộc về một câu trả lời, _not_ trong câu hỏi chính nó. "Tôi có đúng không?" = câu hỏi StackOverflow xấu. Tôi bị cám dỗ để di chuyển các bit đó vào một câu trả lời, nhưng đã có một câu trả lời rằng việc di chuyển sẽ vô hiệu. –