Vì vậy, tôi đã thêm một giải pháp EXE vào dự án của tôi. EXE thực hiện một số công cụ và dữ liệu đầu ra thông qua stdout. Tôi muốn nắm bắt đầu ra, nhưng quan trọng hơn là làm thế nào để thực thi EXE đó trong chương trình của tôi?C# - Cách gọi một exe được thêm vào giải pháp dự án
6
A
Trả lời
7
Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = "myExec.exe";
p.Start();
3
Process.Start
. Để nắm bắt giá trị xuất sắc, bạn cần chuyển hướng nó qua ProcessStartInfo
- có ví dụ trên MSDN. Hãy chắc chắn rằng exe được đánh dấu để được sao chép vào thư mục đầu ra (bin/release etc).
Nếu bạn cần đọc từ cả stdout và stderr nó sẽ phức tạp (với việc thực hiện ngây thơ có nguy cơ bế tắc do đệm ...) here's ví dụ sử dụng chuỗi công nhân.
câu trả lời này hiệu quả. cảm ơn! – user40856
mặc dù đường dẫn tệp tương đối sẽ chỉ hoạt động nếu Thư mục làm việc hiện tại không thay đổi ... –
Cách chuyển tham số vào đó và cách gọi nó không đồng bộ? –